PPL API Reference
Overview Core Algorithm Abstractions Utilities Parallel Methods
Modules Class Hierarchy Classes Functions
Todo List Bug List Dead Code
List of all members
MPToolsType< MPTraits > Class Template Referencefinal

Public Member Functions

Construction
 MPToolsType (MPLibrary *const _library)
 
void ParseXML (XMLNode &_node)
 
void Initialize ()
 Initialize the clearance and MA tools prior to use.
 
void Uninitialize ()
 Uninitialize the clearance and MA tools.
 
 ~MPToolsType ()
 
Clearance Utility
ClearanceUtility< MPTraits > * GetClearanceUtility (const std::string &_label) const
 
void SetClearanceUtility (const std::string &_label, ClearanceUtility< MPTraits > *const _utility)
 
Medial Axis Utility
MedialAxisUtility< MPTraits > * GetMedialAxisUtility (const std::string &_label) const
 
void SetMedialAxisUtility (const std::string &_label, MedialAxisUtility< MPTraits > *const _utility)
 
Skeleton Clearance Utility
SkeletonClearanceUtility< MPTraits > * GetSkeletonClearanceUtility (const std::string &_label) const
 
void SetSkeletonClearanceUtility (const std::string &_label, SkeletonClearanceUtility< MPTraits > *const _utility)
 
Topological Map
TopologicalMap< MPTraits > * GetTopologicalMap (const std::string &_label) const
 
void SetTopologicalMap (const std::string &_label, TopologicalMap< MPTraits > *const _utility)
 
Safe Interval Tool
SafeIntervalTool< MPTraits > * GetSafeIntervalTool (const std::string &_label) const
 
void SetSafeIntervalTool (const std::string &_label, SafeIntervalTool< MPTraits > *const _utility)
 
LKH Search
LKHSearch< MPTraits > * GetLKHSearch (const std::string &_label) const
 
void SetLKHSearch (const std::string &_label, LKHSearch< MPTraits > *const _utility)
 
TRP Tool
TRPTool< MPTraits > * GetTRPTool (const std::string &_label) const
 
void SetTRPTool (const std::string &_label, TRPTool< MPTraits > *const _utility)
 
Decompositions
const WorkspaceDecompositionGetDecomposition (const std::string &_label)
 
void SetDecomposition (const std::string &_label, const WorkspaceDecomposition *_decomposition)
 
Reachability
ReachabilityUtil< MPTraits > * GetReachabilityUtil (const std::string &_label) const
 
void SetReachabilityUtil (const std::string &_label, ReachabilityUtil< MPTraits > *_util)
 

Detailed Description

template<typename MPTraits>
class MPToolsType< MPTraits >

This class is a general tool box for stateful objects that don't belong elsewhere. It gives us a way to do XML parsing and uniform access for these odd-balls like medial axis tools.

For most utilities, this object creates and maintains a map of string -> instance. One instance will be generated for each MedialAxisUtility node in the XML file (with corresponding label). Instances can also be added manually with the Set functions.

For the other tools, this object parses a single XML node to set default parameters for the tool classes. Default-constructed tools then use those values. This effectively uses the XML to set default parameters so that we don't have to create an instance of the tool right away (or at all) in order to parse the input file. For these, there is no label attribute, and using multiple XML nodes will throw a parse error.

Constructor & Destructor Documentation

◆ MPToolsType()

template<typename MPTraits >
MPToolsType< MPTraits >::MPToolsType ( MPLibrary *const  _library)

Construct a tool set.

Parameters
_libraryThe owning library.

Member Function Documentation

◆ ParseXML()

template<typename MPTraits >
void MPToolsType< MPTraits >::ParseXML ( XMLNode _node)

Parse an XML node.

Parameters
_nodeThe XML node object.

◆ GetClearanceUtility()

template<typename MPTraits >
ClearanceUtility< MPTraits > * MPToolsType< MPTraits >::GetClearanceUtility ( const std::string &  _label) const

Get a ClearanceUtility by label.

Parameters
_labelThe string label of the desired utility as defined in the XML file.
Returns
The labeled utility.

◆ SetClearanceUtility()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetClearanceUtility ( const std::string &  _label,
ClearanceUtility< MPTraits > *const  _utility 
)

Set a ClearanceUtility. This object will take ownership of the utility and delete it when necessary.

Parameters
_labelThe string label for the new utility.
_utilityThe ClearanceUtility to use.

◆ GetMedialAxisUtility()

template<typename MPTraits >
MedialAxisUtility< MPTraits > * MPToolsType< MPTraits >::GetMedialAxisUtility ( const std::string &  _label) const

Get a MedialAxisUtility by label.

Parameters
_labelThe string label of the desired utility as defined in the XML file.
Returns
The labeled utility.

◆ SetMedialAxisUtility()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetMedialAxisUtility ( const std::string &  _label,
MedialAxisUtility< MPTraits > *const  _utility 
)

Set a MedialAxisUtility. This object will take ownership of the utility and delete it when necessary.

Parameters
_labelThe string label for the new utility.
_utilityThe MedialAxisUtility to use.

◆ GetSkeletonClearanceUtility()

template<typename MPTraits >
SkeletonClearanceUtility< MPTraits > * MPToolsType< MPTraits >::GetSkeletonClearanceUtility ( const std::string &  _label) const

Get a SkeletonClearanceUtility by label.

Parameters
_labelThe string label of the desired utility as defined in the XML file.
Returns
The labeled utility.

◆ SetSkeletonClearanceUtility()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetSkeletonClearanceUtility ( const std::string &  _label,
SkeletonClearanceUtility< MPTraits > *const  _utility 
)

Set a SkeletonClearanceUtility. This object will take ownership of the utility and delete it when necessary.

Parameters
_labelThe string label for the new utility.
_utilityThe SkeletonClearanceUtility to use.

◆ GetTopologicalMap()

template<typename MPTraits >
TopologicalMap< MPTraits > * MPToolsType< MPTraits >::GetTopologicalMap ( const std::string &  _label) const

Get a TopologicalMap by label.

Parameters
_labelThe string label of the desired utility as defined in the XML file.
Returns
The labeled utility.

◆ SetTopologicalMap()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetTopologicalMap ( const std::string &  _label,
TopologicalMap< MPTraits > *const  _utility 
)

Set a TopologicalMap. This object will take ownership of the utility and delete it when necessary.

Parameters
_labelThe string label for the new utility.
_utilityThe TopologicalMap to use.

◆ GetSafeIntervalTool()

template<typename MPTraits >
SafeIntervalTool< MPTraits > * MPToolsType< MPTraits >::GetSafeIntervalTool ( const std::string &  _label) const

Get a SafeIntervalTool by label.

Parameters
_labelThe string label of the desired utility as defined in the XML file.
Returns
The labeled utility.

◆ SetSafeIntervalTool()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetSafeIntervalTool ( const std::string &  _label,
SafeIntervalTool< MPTraits > *const  _utility 
)

Set a SafeIntervalTool. This object will take ownership of the utility and delete it when necessary.

Parameters
_labelThe string label for the new utility.
_utilityThe TopologicalMap to use.

◆ GetLKHSearch()

template<typename MPTraits >
LKHSearch< MPTraits > * MPToolsType< MPTraits >::GetLKHSearch ( const std::string &  _label) const

Get an LKH Search by label.

Parameters
_labelThe string label of the desired utility as defined in the XML file.
Returns
The labeled utility.

◆ SetLKHSearch()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetLKHSearch ( const std::string &  _label,
LKHSearch< MPTraits > *const  _utility 
)

Set an LKH Search

Parameters
_labelThe string label for the new utility
_utilityThe LKHSearch to use

◆ GetTRPTool()

template<typename MPTraits >
TRPTool< MPTraits > * MPToolsType< MPTraits >::GetTRPTool ( const std::string &  _label) const

Get a TRP Tool by label.

Parameters
_labelThe string label of the desired utility as defined in the XML file.
Returns
The labeled utility.

◆ SetTRPTool()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetTRPTool ( const std::string &  _label,
TRPTool< MPTraits > *const  _utility 
)

Set a TRP Tool

Parameters
_labelThe string label for the new utility
_utilityThe LKHSearch to use

◆ GetDecomposition()

template<typename MPTraits >
const WorkspaceDecomposition * MPToolsType< MPTraits >::GetDecomposition ( const std::string &  _label)

Get a decomposition.

Parameters
_labelThe label of the decomposition to use.

◆ SetDecomposition()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetDecomposition ( const std::string &  _label,
const WorkspaceDecomposition _decomposition 
)

Set a workspace decomposition by label. This object will take ownership the decomposition and delete it when necessary.

Parameters
_labelThe label for this decomposition.
_decompositionThe decomposition object to set.

◆ GetReachabilityUtil()

template<typename MPTraits >
ReachabilityUtil< MPTraits > * MPToolsType< MPTraits >::GetReachabilityUtil ( const std::string &  _label) const

Get a Reachability Utility

Parameters
_labelThe label of the decomposition to use.

◆ SetReachabilityUtil()

template<typename MPTraits >
void MPToolsType< MPTraits >::SetReachabilityUtil ( const std::string &  _label,
ReachabilityUtil< MPTraits > *  _util 
)

Set a reachability utility by label.

Parameters
_labelThe label for this utility
_decompositionthe reachability utility

The documentation for this class was generated from the following file: