17 #ifndef HPP_MANIPULATION_MANIPULATION_PLANNER_HH
18 # define HPP_MANIPULATION_MANIPULATION_PLANNER_HH
20 #include <hpp/core/path-planner.hh>
22 #include <hpp/statistics/success-bin.hh>
32 namespace manipulation {
37 public hpp::core::PathPlanner
52 virtual void oneStep ();
79 void init (
const ManipulationPlannerWkPtr_t& weak);
84 std::size_t tryConnectToRoadmap (
const core::Nodes_t nodes);
87 std::size_t tryConnectNewNodes (
const core::Nodes_t nodes);
96 ManipulationPlannerWkPtr_t weakPtr_;
100 typedef ::hpp::statistics::SuccessStatistics SuccessStatistics;
101 typedef ::hpp::statistics::SuccessBin SuccessBin;
102 typedef ::hpp::statistics::SuccessBin::Reason Reason;
104 std::vector<size_type> indexPerEdgeStatistics_;
105 std::vector<SuccessStatistics> perEdgeStatistics_;
109 PATH_PROJECTION_SHORTER = 0,
110 PATH_VALIDATION_SHORTER = 1,
111 REACHED_DESTINATION_NODE = 2,
115 PATH_VALIDATION_ZERO = 6,
116 PATH_PROJECTION_ZERO = 7
118 static const std::vector<Reason> reasons_;
128 #endif // HPP_MANIPULATION_MANIPULATION_PLANNER_HH