![]() |
Parasol Planning Library (PPL)
|
Base algorithm abstraction for PathModifiers. More...
#include <PathModifierMethod.h>
Public Types | |
Motion Planning Types | |
typedef MPBaseObject::RoadmapType | RoadmapType |
typedef RoadmapType::VID | VID |
![]() | |
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 | |
PathModifierMethod ()=default | |
PathModifierMethod (XMLNode &_node) | |
virtual | ~PathModifierMethod ()=default |
MPBaseObject Overrides | |
virtual void | Print (ostream &_os) const override |
![]() | |
MPBaseObject (const std::string &_label="", const std::string &_name="", bool _debug=false) | |
MPBaseObject (XMLNode &_node) | |
virtual | ~MPBaseObject () |
virtual void | Initialize () |
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... | |
PathModifier Interface | |
virtual void | Modify (vector< Cfg > &_path, vector< Cfg > &_newPath) |
virtual void | Modify (RoadmapType *_graph, vector< Cfg > &_path, vector< Cfg > &_newPath) |
virtual bool | ModifyImpl (RoadmapType *_graph, vector< Cfg > &_path, vector< Cfg > &_newPath)=0 |
void | AddToPath (vector< Cfg > &_path, LPOutput *_lpOutput, Cfg &_end) |
vector< VID > | GetPathVIDs (vector< Cfg > &_path, RoadmapType *_graph) |
void | RemoveBranches (const string &_dmLabel, vector< Cfg > &_path, vector< Cfg > &_newPath) |
@TODO Figure out what this does and document it. More... | |
Additional Inherited Members | |
![]() | |
void | SetName (const std::string &_s) |
const std::string & | GetBaseFilename () const |
![]() | |
bool | m_debug |
Print debug info? More... | |
Base algorithm abstraction for PathModifiers.
PathModifierMethod has one main method, Modify
, which takes an input path and produces a valid output path.
|
default |
PathModifierMethod::PathModifierMethod | ( | XMLNode & | _node | ) |
|
virtualdefault |
|
protected |
|
virtual |
Modifies the input path to a new valid path
_path | A path of configurations within a resolution distance of each other |
_newPath | An empty vector to place the resulting modified path |
@usage
|
protectedpure virtual |
Modifies the input path to a new valid path
_path | A path of configurations within a resolution distance of each other |
_newPath | An empty vector to place the resulting modified path |
Implemented in ShortcuttingPathModifier.
|
overridevirtual |
Print internal state of this object.
_os | The std::ostream to print to. |
Reimplemented from MPBaseObject.
Reimplemented in ShortcuttingPathModifier.
|
protected |
@TODO Figure out what this does and document it.