ChppGikMotionPlan Class Reference

The Motion Plan contains references to ChppGikPrioritizedMotion objects, sorted by descending priority in ChppGikMotionPlanRow objects. More...

#include <hpp/gik/core/motion-plan.hh>

Public Member Functions

 ChppGikMotionPlan (CjrlDynamicRobot *inRobot)
 Constructor. More...
 
 ~ChppGikMotionPlan ()
 Destructor. More...
 
CjrlDynamicRobot * robot ()
 Return associated robot. More...
 
ChppGikMotionPlanRowaddMotion (ChppGikPrioritizedMotion *inMotion)
 Add a prioritized motion constraint. More...
 
bool getRankForPriority (unsigned int inPriority, unsigned int &outRownumber)
 Get number of row corresponding to given priority value. More...
 
ChppGikMotionPlanRowgetRow (unsigned int inRank)
 Get a pointer to the row at the given rank (starting from 0). More...
 
bool empty ()
 Tell is the motion plan is empty. More...
 
double startTime ()
 Compute and get lower bound of definition interval. More...
 
double endTime ()
 Compute and get upper bound of definition interval. More...
 
ChppGikMotionPlanColumncolumnAtTime (double inTime)
 Get the motion plan column at the given time. More...
 
std::vector< ChppGikPrioritizedMotion * > activeAtTime (double inTime)
 Get the motion plan column at the given time. More...
 
void removeMotion (ChppGikPrioritizedMotion *inMotion)
 Remove inMotion from all motion plan rows. More...
 

Detailed Description

The Motion Plan contains references to ChppGikPrioritizedMotion objects, sorted by descending priority in ChppGikMotionPlanRow objects.

Constructor & Destructor Documentation

◆ ChppGikMotionPlan()

ChppGikMotionPlan::ChppGikMotionPlan ( CjrlDynamicRobot *  inRobot)

Constructor.

◆ ~ChppGikMotionPlan()

ChppGikMotionPlan::~ChppGikMotionPlan ( )

Destructor.

Member Function Documentation

◆ activeAtTime()

std::vector<ChppGikPrioritizedMotion*> ChppGikMotionPlan::activeAtTime ( double  inTime)

Get the motion plan column at the given time.

◆ addMotion()

ChppGikMotionPlanRow* ChppGikMotionPlan::addMotion ( ChppGikPrioritizedMotion inMotion)

Add a prioritized motion constraint.

If a row having the same priority is found it gets the new motion constraint, otherwise a new row is created for it. /return a pointer to the ChppGikMotionPlanRow that holds the entered motion constraint /note null pointer is returned in case the adde motion is not defined for this motion plan's robot

◆ columnAtTime()

ChppGikMotionPlanColumn* ChppGikMotionPlan::columnAtTime ( double  inTime)

Get the motion plan column at the given time.

◆ empty()

bool ChppGikMotionPlan::empty ( )

Tell is the motion plan is empty.

◆ endTime()

double ChppGikMotionPlan::endTime ( )

Compute and get upper bound of definition interval.

◆ getRankForPriority()

bool ChppGikMotionPlan::getRankForPriority ( unsigned int  inPriority,
unsigned int &  outRownumber 
)

Get number of row corresponding to given priority value.

Returns
false if the given priority does not have a matching row

◆ getRow()

ChppGikMotionPlanRow* ChppGikMotionPlan::getRow ( unsigned int  inRank)

Get a pointer to the row at the given rank (starting from 0).

Returns
null pointer if inRank is out of range

◆ removeMotion()

void ChppGikMotionPlan::removeMotion ( ChppGikPrioritizedMotion inMotion)

Remove inMotion from all motion plan rows.

◆ robot()

CjrlDynamicRobot* ChppGikMotionPlan::robot ( )

Return associated robot.

◆ startTime()

double ChppGikMotionPlan::startTime ( )

Compute and get lower bound of definition interval.