Template Class ProfileGenerator#

Inheritance Relationships#

Base Type#

Derived Types#

Class Documentation#

template<typename T>
class ProfileGenerator : public Karana::Core::BaseWithVars#

ProfileGenerator base class.

Template Parameters:

T – The type that the ProfileGenerator produces, e.g., double, UnitQuaternion, etc.

Subclassed by Karana::Models::ConstantProfileGenerator< T >, Karana::Models::CubicSplineProfileGenerator< T >, Karana::Models::LinearProfileGenerator< T >

Public Functions

virtual const T &getQ(const Karana::Math::Ktime &t) = 0#

Get the profile coordinate for the provided time.

Parameters:

t – The current time

Returns:

The profile coordinate at the provided time.

virtual const T &getU(const Karana::Math::Ktime &t) = 0#

Get the profile velocity for the provided time.

Parameters:

t – The current time

Returns:

The profile velocity at the provided time.

virtual const T &getUdot(const Karana::Math::Ktime &t) = 0#

Get the profile acceleration for the provided time.

Parameters:

t – The current time

Returns:

The profile acceleration at the provided time.

BaseWithVars(std::string_view name, const ks_ptr<BaseContainer> &container = nullptr)#

BaseWithVars class constructor. The constructor is not meant to be called directly. Please use the create(…) method instead to create an instance.

Parameters:
  • name – Name for the class.

  • container – The container to add the BaseWithVars too. If none is specified, the default singleton container will be used.

BaseWithVars(const BaseWithVars &other)#

Copy constructor.

Parameters:

other – BaseWithVars class to copy.

BaseWithVars(BaseWithVars &&other) noexcept#

Move constructor.

Parameters:

other – BaseWithVars class to move.