Represent the sequence of steps that are executed for a manipulation plan. More...
#include <manipulation_pipeline.h>
Public Member Functions | |
ManipulationPipeline & | addStage (const ManipulationStagePtr &next) |
void | clear () |
const std::vector < ManipulationPlanPtr > & | getFailedManipulationPlans () const |
const ManipulationStagePtr & | getFirstStage () const |
const ManipulationStagePtr & | getLastStage () const |
const std::string & | getName () const |
const std::vector < ManipulationPlanPtr > & | getSuccessfulManipulationPlans () const |
ManipulationPipeline (const std::string &name, unsigned int nthreads) | |
void | push (const ManipulationPlanPtr &grasp) |
void | reprocessLastFailure () |
void | reset () |
void | setEmptyQueueCallback (const boost::function< void()> &callback) |
void | setSolutionCallback (const boost::function< void()> &callback) |
void | setVerbose (bool flag) |
void | signalStop () |
void | start () |
void | stop () |
virtual | ~ManipulationPipeline () |
Protected Member Functions | |
void | processingThread (unsigned int index) |
Protected Attributes | |
boost::function< void()> | empty_queue_callback_ |
unsigned int | empty_queue_threads_ |
std::vector< ManipulationPlanPtr > | failed_ |
std::string | name_ |
unsigned int | nthreads_ |
std::vector< boost::thread * > | processing_threads_ |
std::deque< ManipulationPlanPtr > | queue_ |
boost::condition_variable | queue_access_cond_ |
boost::mutex | queue_access_lock_ |
boost::mutex | result_lock_ |
boost::function< void()> | solution_callback_ |
std::vector< ManipulationStagePtr > | stages_ |
bool | stop_processing_ |
std::vector< ManipulationPlanPtr > | success_ |
bool | verbose_ |
Represent the sequence of steps that are executed for a manipulation plan.
Definition at line 51 of file manipulation_pipeline.h.
pick_place::ManipulationPipeline::ManipulationPipeline | ( | const std::string & | name, |
unsigned int | nthreads | ||
) |
Definition at line 43 of file manipulation_pipeline.cpp.
pick_place::ManipulationPipeline::~ManipulationPipeline | ( | ) | [virtual] |
Definition at line 52 of file manipulation_pipeline.cpp.
ManipulationPipeline & pick_place::ManipulationPipeline::addStage | ( | const ManipulationStagePtr & | next | ) |
Definition at line 57 of file manipulation_pipeline.cpp.
void pick_place::ManipulationPipeline::clear | ( | void | ) |
Definition at line 99 of file manipulation_pipeline.cpp.
const std::vector<ManipulationPlanPtr>& pick_place::ManipulationPipeline::getFailedManipulationPlans | ( | ) | const [inline] |
Definition at line 92 of file manipulation_pipeline.h.
const ManipulationStagePtr & pick_place::ManipulationPipeline::getFirstStage | ( | ) | const |
Definition at line 64 of file manipulation_pipeline.cpp.
const ManipulationStagePtr & pick_place::ManipulationPipeline::getLastStage | ( | ) | const |
Definition at line 75 of file manipulation_pipeline.cpp.
const std::string& pick_place::ManipulationPipeline::getName | ( | void | ) | const [inline] |
Definition at line 58 of file manipulation_pipeline.h.
const std::vector<ManipulationPlanPtr>& pick_place::ManipulationPipeline::getSuccessfulManipulationPlans | ( | ) | const [inline] |
Definition at line 87 of file manipulation_pipeline.h.
void pick_place::ManipulationPipeline::processingThread | ( | unsigned int | index | ) | [protected] |
Definition at line 144 of file manipulation_pipeline.cpp.
void pick_place::ManipulationPipeline::push | ( | const ManipulationPlanPtr & | grasp | ) |
Definition at line 214 of file manipulation_pipeline.cpp.
Definition at line 222 of file manipulation_pipeline.cpp.
void pick_place::ManipulationPipeline::reset | ( | void | ) |
Definition at line 86 of file manipulation_pipeline.cpp.
void pick_place::ManipulationPipeline::setEmptyQueueCallback | ( | const boost::function< void()> & | callback | ) | [inline] |
Definition at line 68 of file manipulation_pipeline.h.
void pick_place::ManipulationPipeline::setSolutionCallback | ( | const boost::function< void()> & | callback | ) | [inline] |
Definition at line 63 of file manipulation_pipeline.h.
void pick_place::ManipulationPipeline::setVerbose | ( | bool | flag | ) |
Definition at line 92 of file manipulation_pipeline.cpp.
Definition at line 124 of file manipulation_pipeline.cpp.
void pick_place::ManipulationPipeline::start | ( | void | ) |
Definition at line 113 of file manipulation_pipeline.cpp.
void pick_place::ManipulationPipeline::stop | ( | void | ) |
Definition at line 132 of file manipulation_pipeline.cpp.
boost::function<void()> pick_place::ManipulationPipeline::empty_queue_callback_ [protected] |
Definition at line 118 of file manipulation_pipeline.h.
unsigned int pick_place::ManipulationPipeline::empty_queue_threads_ [protected] |
Definition at line 119 of file manipulation_pipeline.h.
std::vector<ManipulationPlanPtr> pick_place::ManipulationPipeline::failed_ [protected] |
Definition at line 110 of file manipulation_pipeline.h.
std::string pick_place::ManipulationPipeline::name_ [protected] |
Definition at line 103 of file manipulation_pipeline.h.
unsigned int pick_place::ManipulationPipeline::nthreads_ [protected] |
Definition at line 104 of file manipulation_pipeline.h.
std::vector<boost::thread*> pick_place::ManipulationPipeline::processing_threads_ [protected] |
Definition at line 112 of file manipulation_pipeline.h.
std::deque<ManipulationPlanPtr> pick_place::ManipulationPipeline::queue_ [protected] |
Definition at line 108 of file manipulation_pipeline.h.
boost::condition_variable pick_place::ManipulationPipeline::queue_access_cond_ [protected] |
Definition at line 113 of file manipulation_pipeline.h.
boost::mutex pick_place::ManipulationPipeline::queue_access_lock_ [protected] |
Definition at line 114 of file manipulation_pipeline.h.
boost::mutex pick_place::ManipulationPipeline::result_lock_ [protected] |
Definition at line 115 of file manipulation_pipeline.h.
boost::function<void()> pick_place::ManipulationPipeline::solution_callback_ [protected] |
Definition at line 117 of file manipulation_pipeline.h.
std::vector<ManipulationStagePtr> pick_place::ManipulationPipeline::stages_ [protected] |
Definition at line 106 of file manipulation_pipeline.h.
bool pick_place::ManipulationPipeline::stop_processing_ [protected] |
Definition at line 121 of file manipulation_pipeline.h.
std::vector<ManipulationPlanPtr> pick_place::ManipulationPipeline::success_ [protected] |
Definition at line 109 of file manipulation_pipeline.h.
bool pick_place::ManipulationPipeline::verbose_ [protected] |
Definition at line 105 of file manipulation_pipeline.h.