An annotated vertex, adding information about its level in the multilevel hierarchy. Class has two modes: Mode 1 (baseMode), we store a reference to its base state element. In Mode 2 (totalMode), we store a deep copy of the lift of the base state into the total space (NOTE: required for PlannerData functions like decoupleFromPlanner()) More...
#include <ompl/multilevel/datastructures/PlannerDataVertexAnnotated.h>
Public Member Functions | |
PlannerDataVertexAnnotated (const ompl::base::State *state) | |
Constructor for base state. Set mode to baseMode. | |
PlannerDataVertexAnnotated (const PlannerDataVertexAnnotated &rhs) | |
virtual PlannerDataVertex * | clone () const override |
Return a clone of this object, allocated from the heap. | |
void | setLevel (unsigned int level_) |
The level of vertex in the bundle space hierarchy. | |
unsigned int | getLevel () const |
void | setMaxLevel (unsigned int level_) |
The maximum level in the bundle space hierarchy. | |
unsigned int | getMaxLevel () const |
void | setComponent (unsigned int component_) |
The component of vertex in the graph (start, goal or other component) | |
unsigned int | getComponent () const |
void | setTotalState (ompl::base::State *s, ompl::base::SpaceInformationPtr si) |
Set total state, i.e. the lift of the base state to the total space (last Spaceinformationptr in sequence). NOTE: Changes mode to totalMode. NOTE: requires Spaceinformationptr (of total space) to free state. | |
void | setBaseState (const ompl::base::State *s) |
Explicitly changes base state (does not change mode) | |
virtual const ompl::base::State * | getState () const override |
Returns base state in baseMode and total state in totalMode. The total space here is the last element of space sequence. | |
ompl::base::State * | getStateNonConst () const |
Same as getState(), but state can be changed. | |
const ompl::base::State * | getBaseState () const |
Returns base state, indepent of mode. | |
ompl::base::SpaceInformationPtr | getSpaceInformationPtr () const |
virtual bool | operator== (const PlannerDataVertex &rhs) const override |
Verifies equality by checking level and base state (mode independent) | |
Public Member Functions inherited from ompl::base::PlannerDataVertex | |
PlannerDataVertex (const State *st, int tag=0) | |
Constructor. Takes a state pointer and an optional integer tag. | |
PlannerDataVertex (const PlannerDataVertex &rhs)=default | |
Copy constructor. | |
virtual int | getTag () const |
Returns the integer tag associated with this vertex. | |
virtual void | setTag (int tag) |
Set the integer tag associated with this vertex. | |
virtual bool | operator== (const PlannerDataVertex &rhs) const |
Equivalence operator. Return true if the state pointers are equal. | |
bool | operator!= (const PlannerDataVertex &rhs) const |
Returns true if this vertex is not equal to the argument. This is the complement of the == operator. | |
Protected Attributes | |
unsigned int | level_ {0} |
The level for the base state. | |
unsigned int | maxLevel_ {1} |
How many spaces exists in the multilevel structure. | |
unsigned int | component_ {0} |
(Optional:) which component in roadmap does vertex belong to | |
bool | totalStateIsSet {false} |
There are two modes. Mode 1 is the normal mode where this class contains a reference to the base state. In that case getState() returns the base state. Mode 2 is the total space mode, where we set a total state, in which case getState() returns the total state. Note that we require the class to be in Mode 2 for methods like PlannerData::decoupleFromPlanner(). You can put the class into Mode 2 by calling setTotalState() | |
const ompl::base::State * | stateBase_ {nullptr} |
Internal reference to base state. Same as state_ in normal Mode to avoid confusion. | |
ompl::base::State * | stateTotal_ {nullptr} |
Storage of total state. | |
ompl::base::SpaceInformationPtr | si_ {nullptr} |
Pointer to total space (to free total space element upon deletion) | |
Protected Attributes inherited from ompl::base::PlannerDataVertex | |
const State * | state_ |
The state represented by this vertex. | |
int | tag_ |
A generic integer tag for this state. Not used for equivalence checking. | |
Friends | |
std::ostream & | operator<< (std::ostream &, const PlannerDataVertexAnnotated &) |
Additional Inherited Members | |
Protected Member Functions inherited from ompl::base::PlannerDataVertex | |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int) |
Detailed Description
An annotated vertex, adding information about its level in the multilevel hierarchy. Class has two modes: Mode 1 (baseMode), we store a reference to its base state element. In Mode 2 (totalMode), we store a deep copy of the lift of the base state into the total space (NOTE: required for PlannerData functions like decoupleFromPlanner())
Definition at line 121 of file PlannerDataVertexAnnotated.h.
The documentation for this class was generated from the following files:
- ompl/multilevel/datastructures/PlannerDataVertexAnnotated.h
- ompl/multilevel/datastructures/src/PlannerDataVertexAnnotated.cpp