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) | |
![]() | |
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) | |
![]() | |
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 &out, const PlannerDataVertexAnnotated &v) |
Additional Inherited Members | |
![]() | |
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 55 of file PlannerDataVertexAnnotated.h.
Constructor & Destructor Documentation
◆ PlannerDataVertexAnnotated() [1/2]
PlannerDataVertexAnnotated::PlannerDataVertexAnnotated | ( | const ompl::base::State * | state | ) |
Constructor for base state. Set mode to baseMode.
Definition at line 42 of file PlannerDataVertexAnnotated.cpp.
◆ PlannerDataVertexAnnotated() [2/2]
PlannerDataVertexAnnotated::PlannerDataVertexAnnotated | ( | const PlannerDataVertexAnnotated & | rhs | ) |
Definition at line 48 of file PlannerDataVertexAnnotated.cpp.
◆ ~PlannerDataVertexAnnotated()
|
overridevirtual |
Definition at line 59 of file PlannerDataVertexAnnotated.cpp.
Member Function Documentation
◆ clone()
|
overridevirtual |
Return a clone of this object, allocated from the heap.
Reimplemented from ompl::base::PlannerDataVertex.
Definition at line 67 of file PlannerDataVertexAnnotated.cpp.
◆ getBaseState()
const ompl::base::State * PlannerDataVertexAnnotated::getBaseState | ( | ) | const |
Returns base state, indepent of mode.
Definition at line 120 of file PlannerDataVertexAnnotated.cpp.
◆ getComponent()
unsigned int PlannerDataVertexAnnotated::getComponent | ( | ) | const |
Definition at line 82 of file PlannerDataVertexAnnotated.cpp.
◆ getLevel()
unsigned int PlannerDataVertexAnnotated::getLevel | ( | ) | const |
Definition at line 92 of file PlannerDataVertexAnnotated.cpp.
◆ getMaxLevel()
unsigned int PlannerDataVertexAnnotated::getMaxLevel | ( | ) | const |
Definition at line 102 of file PlannerDataVertexAnnotated.cpp.
◆ getSpaceInformationPtr()
ompl::base::SpaceInformationPtr PlannerDataVertexAnnotated::getSpaceInformationPtr | ( | ) | const |
Definition at line 77 of file PlannerDataVertexAnnotated.cpp.
◆ getState()
|
overridevirtual |
Returns base state in baseMode and total state in totalMode. The total space here is the last element of space sequence.
Reimplemented from ompl::base::PlannerDataVertex.
Definition at line 107 of file PlannerDataVertexAnnotated.cpp.
◆ getStateNonConst()
ompl::base::State * PlannerDataVertexAnnotated::getStateNonConst | ( | ) | const |
Same as getState(), but state can be changed.
Definition at line 115 of file PlannerDataVertexAnnotated.cpp.
◆ operator==()
|
overridevirtual |
Verifies equality by checking level and base state (mode independent)
Definition at line 137 of file PlannerDataVertexAnnotated.cpp.
◆ setBaseState()
void PlannerDataVertexAnnotated::setBaseState | ( | const ompl::base::State * | s | ) |
Explicitly changes base state (does not change mode)
Definition at line 125 of file PlannerDataVertexAnnotated.cpp.
◆ setComponent()
void PlannerDataVertexAnnotated::setComponent | ( | unsigned int | component_ | ) |
The component of vertex in the graph (start, goal or other component)
Definition at line 72 of file PlannerDataVertexAnnotated.cpp.
◆ setLevel()
void PlannerDataVertexAnnotated::setLevel | ( | unsigned int | level_ | ) |
The level of vertex in the bundle space hierarchy.
Definition at line 87 of file PlannerDataVertexAnnotated.cpp.
◆ setMaxLevel()
void PlannerDataVertexAnnotated::setMaxLevel | ( | unsigned int | level_ | ) |
The maximum level in the bundle space hierarchy.
Definition at line 97 of file PlannerDataVertexAnnotated.cpp.
◆ setTotalState()
void PlannerDataVertexAnnotated::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.
Definition at line 130 of file PlannerDataVertexAnnotated.cpp.
Friends And Related Symbol Documentation
◆ operator<<
|
friend |
Definition at line 144 of file PlannerDataVertexAnnotated.cpp.
Member Data Documentation
◆ component_
|
protected |
(Optional:) which component in roadmap does vertex belong to
Definition at line 119 of file PlannerDataVertexAnnotated.h.
◆ level_
|
protected |
The level for the base state.
Definition at line 112 of file PlannerDataVertexAnnotated.h.
◆ maxLevel_
|
protected |
How many spaces exists in the multilevel structure.
Definition at line 115 of file PlannerDataVertexAnnotated.h.
◆ si_
|
protected |
Pointer to total space (to free total space element upon deletion)
Definition at line 141 of file PlannerDataVertexAnnotated.h.
◆ stateBase_
|
protected |
Internal reference to base state. Same as state_ in normal Mode to avoid confusion.
Definition at line 134 of file PlannerDataVertexAnnotated.h.
◆ stateTotal_
|
protected |
Storage of total state.
Definition at line 137 of file PlannerDataVertexAnnotated.h.
◆ totalStateIsSet
|
protected |
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()
Definition at line 130 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