BipedalLocomotion::Planners::SwingFootPlanner class

SwingFootPlanner implement a minimum jerk trajectory planner for the swing foot.

The planner is designed in SE(3) and we assume that initial 6d-acceleration and 6d-velocity of the foot is always equal to zero at take off. The trajectory of the foot will belong to the Geodesic.

Base classes

template<class Output>
class BipedalLocomotion::System::Source<SwingFootPlannerState>
Source is a template specialization of Advanceable and represents a block that does not contains input.

Public functions

auto initialize(std::weak_ptr<const ParametersHandler::IParametersHandler> handler) -> bool final
Initialize the planner.
auto setContactList(const Contacts::ContactList& contactList) -> bool
Set the contact list.
void setTime(const std::chrono::nanoseconds& time)
Reset the time.
auto getOutput() const -> const SwingFootPlannerState& final
Get the object.
auto isOutputValid() const -> bool final
Determines the validity of the object retrieved with get()
auto advance() -> bool final
Advance the internal state.

Function documentation

bool BipedalLocomotion::Planners::SwingFootPlanner::initialize(std::weak_ptr<const ParametersHandler::IParametersHandler> handler) final

Initialize the planner.

Parameters
handler pointer to the parameter handler.
Returns True in case of success/false otherwise.

bool BipedalLocomotion::Planners::SwingFootPlanner::setContactList(const Contacts::ContactList& contactList)

Set the contact list.

Parameters
contactList contains the list for a given contact.
Returns true in case of success, false otherwise.

void BipedalLocomotion::Planners::SwingFootPlanner::setTime(const std::chrono::nanoseconds& time)

Reset the time.

Parameters
time internal time of the system.

const SwingFootPlannerState& BipedalLocomotion::Planners::SwingFootPlanner::getOutput() const final

Get the object.

Returns a const reference of the requested object.

bool BipedalLocomotion::Planners::SwingFootPlanner::isOutputValid() const final

Determines the validity of the object retrieved with get()

Returns True if the object is valid, false otherwise.

bool BipedalLocomotion::Planners::SwingFootPlanner::advance() final

Advance the internal state.

Returns True if the advance is successfull.

This may change the value retrievable from get().