29 #ifndef VIGIR_STEP_QUEUE_H__ 30 #define VIGIR_STEP_QUEUE_H__ 34 #include <vigir_footstep_planning_msgs/footstep_planning_msgs.h> 35 #include <vigir_footstep_planning_msgs/step_plan.h> 43 typedef boost::shared_mutex
Mutex;
84 void clearDirtyFlag();
95 bool updateStepPlan(
const msgs::StepPlan& step_plan,
int min_step_index = 0);
103 bool getStep(msgs::Step& step,
unsigned int step_index = 0u);
111 bool getStepAt(msgs::Step& step,
unsigned int position = 0u);
119 std::vector<msgs::Step> getSteps(
unsigned int start_index,
unsigned int end_index)
const;
125 void removeStep(
unsigned int step_index);
132 void removeSteps(
unsigned int from_step_index,
int to_step_index = -1);
139 bool popStep(msgs::Step& step);
146 int firstStepIndex()
const;
152 int lastStepIndex()
const;
boost::shared_mutex Mutex
boost::shared_ptr< StepQueue > Ptr
boost::shared_ptr< const StepQueue > ConstPtr
boost::upgrade_lock< Mutex > UpgradeLock
boost::unique_lock< Mutex > UniqueLock
boost::upgrade_to_unique_lock< Mutex > UpgradeToUniqueLock
boost::shared_lock< Mutex > SharedLock