Parasol Planning Library (PPL)
|
#include <EdgeValidityCheckerMethod.h>
Public Types | |
Motion Planning Types | |
typedef MPBaseObject::RoadmapType | RoadmapType |
typedef RoadmapType::VID | VID |
typedef RoadmapType::EID | EID |
typedef RoadmapType::adj_edge_iterator | EI |
Public Types inherited from MPBaseObject | |
typedef DefaultWeight< Cfg > | WeightType |
typedef GenericStateGraph< Cfg, WeightType > | RoadmapType |
typedef GroupCfg< RoadmapType > | GroupCfgType |
typedef GroupLocalPlan< RoadmapType > | GroupWeightType |
typedef GroupRoadmap< GroupCfgType, GroupWeightType > | GroupRoadmapType |
Public Member Functions | |
Construction | |
EdgeValidityCheckerMethod ()=default | |
EdgeValidityCheckerMethod (XMLNode &_node) | |
virtual | ~EdgeValidityCheckerMethod ()=default |
void | Initialize ()=0 |
EdgeValidityChecker Interface | |
virtual bool | ValidateEdge (VID _u, VID _v, vector< size_t > &_collisions)=0 |
virtual bool | ValidateEdge (Cfg &_c1, Cfg &_c2, vector< size_t > &_collisions)=0 |
Cfg version of ValidateEdge. More... | |
void | SetReportCollisions (bool _reportCollisions) |
virtual double | EdgeWeightedClearance (VID _u, VID _v)=0 |
virtual double | EdgeWeightedClearance (Cfg &_c1, Cfg &_c2)=0 |
Cfg version of EdgeWeightedClearance. More... | |
Public Member Functions inherited from MPBaseObject | |
MPBaseObject (const std::string &_label="", const std::string &_name="", bool _debug=false) | |
MPBaseObject (XMLNode &_node) | |
virtual | ~MPBaseObject () |
virtual void | Print (std::ostream &_os) const |
const std::string & | GetName () const |
Get the class name for this object. More... | |
const std::string & | GetLabel () const |
Get the unique label for this object. More... | |
std::string | GetNameAndLabel () const |
Get the unique string identifier for this object "m_name::m_label". More... | |
void | SetLabel (const std::string &) |
Set the unique label for this object. More... | |
void | SetMPLibrary (MPLibrary *) noexcept |
Set the owning MPLibrary. More... | |
MPLibrary * | GetMPLibrary () const noexcept |
Get the owning MPLibrary. More... | |
bool | IsRunning () const noexcept |
Check the library's running flag. More... | |
MPProblem * | GetMPProblem () const noexcept |
Get the library's current MPProblem. More... | |
Environment * | GetEnvironment () const noexcept |
Get the current environment. More... | |
MPTask * | GetTask () const noexcept |
Get the current task. More... | |
GroupTask * | GetGroupTask () const noexcept |
Get the current group task. More... | |
MPSolutionType * | GetMPSolution () const noexcept |
RoadmapType * | GetRoadmap (Robot *const _r=nullptr) const noexcept |
Get the current free-space roadmap. More... | |
GroupRoadmapType * | GetGroupRoadmap (RobotGroup *const _g=nullptr) const noexcept |
Get the current free-space group roadmap. More... | |
RoadmapType * | GetBlockRoadmap (Robot *const _r=nullptr) const noexcept |
Get the current obstacle-space roadmap. More... | |
Path * | GetPath (Robot *const _r=nullptr) const noexcept |
GroupPath * | GetGroupPath (RobotGroup *const _g=nullptr) const noexcept |
Get the current best group path. More... | |
StatClass * | GetStatClass () const noexcept |
Get the current StatClass. More... | |
LocalObstacleMap * | GetLocalObstacleMap () const noexcept |
Get the local obstacle map. More... | |
Protected Attributes | |
Internal State | |
bool | m_reportCollisions {false} |
Protected Attributes inherited from MPBaseObject | |
bool | m_debug |
Print debug info? More... | |
Additional Inherited Members | |
Protected Member Functions inherited from MPBaseObject | |
void | SetName (const std::string &_s) |
const std::string & | GetBaseFilename () const |
@Edge validity checkers validate an edge of the roadmap.
EdgeValidityCheckerMethod has one main method, ValidateEdge
that takes either two Cfgs or two VIDs and validates the edge between them.
typedef RoadmapType::adj_edge_iterator EdgeValidityCheckerMethod::EI |
|
default |
EdgeValidityCheckerMethod::EdgeValidityCheckerMethod | ( | XMLNode & | _node | ) |
|
virtualdefault |
|
pure virtual |
Cfg version of EdgeWeightedClearance.
Implemented in IntermediatesEdgeValidityChecker.
Determines the clearance of the edge given by two VIDs, and assigns it as the weight of the edge
_u | The source of the edge |
_v | The target of the edge |
Implemented in IntermediatesEdgeValidityChecker.
|
pure virtual |
Initialize this object for the current MPProblem. This should reset any internal state of the algorithms so that they are ready for execution. It is also the place to initialize any state that depends on the current problem.
Reimplemented from MPBaseObject.
Implemented in IntermediatesEdgeValidityChecker.
|
inline |
Setter for the report collision boolean
_reportCollisions | the new value of m_reportCollisions |
|
pure virtual |
Cfg version of ValidateEdge.
Implemented in IntermediatesEdgeValidityChecker.
|
pure virtual |
Checks the validity of an edge
_u | The source of the edge to validate |
_v | The target of the edge to validate |
_collisions | An empty container that will be populated with a list of obstacles with which the edge collides. |
Implemented in IntermediatesEdgeValidityChecker.
|
protected |
If true the list of obstacles in collision will be reported