29 #ifndef HPP_MANIPULATION_GRAPH_EDGE_HH 30 #define HPP_MANIPULATION_GRAPH_EDGE_HH 32 #include <hpp/core/constraint-set.hh> 33 #include <hpp/core/path.hh> 34 #include <hpp/core/relative-motion.hh> 35 #include <hpp/core/steering-method.hh> 42 namespace manipulation {
81 static EdgePtr_t create(
const std::string& name,
const GraphWkPtr_t& graph,
82 const StateWkPtr_t& from,
const StateWkPtr_t& to);
116 virtual bool generateTargetConfig(core::NodePtr_t nStart,
148 return steeringMethod_;
153 return pathValidation_;
161 void relativeMotion(
const RelativeMotion::matrix_type& m);
179 virtual bool direction(
const core::PathPtr_t& path)
const;
183 virtual bool intersectionConstraint(
const EdgePtr_t& other,
187 virtual std::ostream& dotPrint(
198 void setShort(
bool isShort) { isShort_ = isShort; }
207 void init(
const EdgeWkPtr_t& weak,
const GraphWkPtr_t& graph,
208 const StateWkPtr_t& from,
const StateWkPtr_t& to);
211 Edge(
const std::string& name);
222 virtual void initialize();
225 virtual std::ostream& print(std::ostream& os)
const;
238 StateWkPtr_t from_, to_;
247 mutable RelativeMotion::matrix_type relMotion_;
297 const GraphWkPtr_t& graph,
298 const StateWkPtr_t& from,
299 const StateWkPtr_t& to);
330 const EdgePtr_t& waypoint(
const std::size_t index)
const;
333 virtual std::ostream& dotPrint(
338 void nbWaypoints(
const size_type number);
344 void setWaypoint(
const std::size_t index,
const EdgePtr_t wEdge,
350 void init(
const WaypointEdgeWkPtr_t& weak,
const GraphWkPtr_t& graph,
351 const StateWkPtr_t& from,
const StateWkPtr_t& to);
354 virtual void initialize();
356 virtual std::ostream& print(std::ostream& os)
const;
363 mutable bool lastSucceeded_;
365 WaypointEdgeWkPtr_t wkPtr_;
447 const GraphWkPtr_t& graph,
448 const StateWkPtr_t& from,
449 const StateWkPtr_t& to);
483 virtual bool generateTargetConfig(core::NodePtr_t nStart,
517 void buildHistogram();
557 virtual std::ostream& dotPrint(
563 void init(
const LevelSetEdgeWkPtr_t& weak,
const GraphWkPtr_t& graph,
564 const StateWkPtr_t& from,
const StateWkPtr_t& to);
569 virtual std::ostream& print(std::ostream& os)
const;
574 virtual void initialize();
588 LevelSetEdgeWkPtr_t wkPtr_;
596 #endif // HPP_MANIPULATION_GRAPH_EDGE_HH std::vector< EdgePtr_t > Edges_t
Definition: fwd.hh:57
StateHistogram NodeHistogram HPP_MANIPULATION_DEPRECATED
Definition: statistics.hh:206
const RelativeMotion::matrix_type & relativeMotion() const
Definition: edge.hh:156
const matrix_t & securityMargins() const
Accessor to the security margin.
Definition: edge.hh:175
shared_ptr< WaypointEdge > WaypointEdgePtr_t
Definition: fwd.hh:50
bool isShort() const
Definition: edge.hh:200
core::RelativeMotion RelativeMotion
Definition: edge.hh:75
void state(StatePtr_t state)
Definition: edge.hh:144
pinocchio::ConfigurationIn_t ConfigurationIn_t
Definition: fwd.hh:49
bool isShort_
Definition: edge.hh:227
core::value_type value_type
Definition: fwd.hh:90
#define HPP_MANIPULATION_DLLAPI
Definition: config.hh:64
shared_ptr< LevelSetEdge > LevelSetEdgePtr_t
Definition: fwd.hh:51
void setShort(bool isShort)
Definition: edge.hh:198
const core::PathValidationPtr_t & pathValidation() const
Get path validation associated to the edge.
Definition: edge.hh:152
std::size_t nbWaypoints() const
Definition: edge.hh:340
core::ConfigProjectorPtr_t ConfigProjectorPtr_t
Definition: fwd.hh:121
std::vector< StatePtr_t > States_t
Definition: fwd.hh:56
shared_ptr< ConstraintSet > ConstraintSetPtr_t
Definition: fwd.hh:123
constraints::ImplicitPtr_t ImplicitPtr_t
Definition: fwd.hh:116
hpp::core::NumericalConstraints_t NumericalConstraints_t
Definition: fwd.hh:64
core::matrix_t matrix_t
Definition: fwd.hh:131
core::PathValidationPtr_t PathValidationPtr_t
Definition: fwd.hh:129
shared_ptr< LeafHistogram > LeafHistogramPtr_t
Definition: fwd.hh:72
pinocchio::ConfigurationOut_t ConfigurationOut_t
Definition: fwd.hh:50
core::size_type size_type
Definition: fwd.hh:91
Define common methods of the graph components.
Definition: graph-component.hh:51
shared_ptr< Edge > EdgePtr_t
Definition: fwd.hh:49
shared_ptr< State > StatePtr_t
Definition: fwd.hh:48
const core::SteeringMethodPtr_t & steeringMethod() const
Get steering method associated to the edge.
Definition: edge.hh:147
StatePtr_t state() const
Get the state in which path is.
Definition: edge.hh:142
WaypointEdge(const std::string &name)
Definition: edge.hh:348
shared_ptr< SteeringMethod > SteeringMethodPtr_t
Definition: fwd.hh:101