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>

List of all members.

Public Member Functions

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

Detailed Description

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


Constructor & Destructor Documentation

ChppGikMotionPlan::ChppGikMotionPlan ( CjrlDynamicRobot *  inRobot)

Constructor.

ChppGikMotionPlan::~ChppGikMotionPlan ( )

Destructor.


Member Function Documentation

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

Get the motion plan column at the given time.

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

ChppGikMotionPlanColumn* ChppGikMotionPlan::columnAtTime ( double  inTime)

Get the motion plan column at the given time.

bool ChppGikMotionPlan::empty ( )

Tell is the motion plan is empty.

double ChppGikMotionPlan::endTime ( )

Compute and get upper bound of definition interval.

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
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
void ChppGikMotionPlan::removeMotion ( ChppGikPrioritizedMotion inMotion)

Remove inMotion from all motion plan rows.

CjrlDynamicRobot* ChppGikMotionPlan::robot ( )

Return associated robot.

double ChppGikMotionPlan::startTime ( )

Compute and get lower bound of definition interval.