Loading...
Searching...
No Matches
ompl::geometric::aitstar::Vertex Class Reference
Inheritance diagram for ompl::geometric::aitstar::Vertex:

Public Member Functions

 Vertex (const ompl::base::SpaceInformationPtr &spaceInformation, const ompl::base::ProblemDefinitionPtr &problemDefinition, const std::size_t &batchId)
 Constructs a vertex by sampling a state.
 
 Vertex (const std::shared_ptr< Vertex > &other)
 Constructs a copy of another vertex.
 
virtual ~Vertex ()
 Destructs the vertex.
 
std::size_t getId () const
 Get the unique id of this vertex.
 
ompl::base::StategetState ()
 Provides write access to the underlying state.
 
ompl::base::State const * getState () const
 Provides read access to the underlying state.
 
ompl::base::ScopedState getScopedState () const
 Returns a scoped copy of the underlying state.
 
ompl::base::Cost getCostToComeFromStart () const
 Returns the cost to come to this vertex from the start.
 
ompl::base::Cost getCostToComeFromGoal () const
 Returns the cost to come to this vertex from the goal.
 
ompl::base::Cost getExpandedCostToComeFromGoal () const
 Returns the cost to come to this vertex from the goal when it was expanded.
 
ompl::base::Cost getCostToGoToGoal () const
 Returns the cost to go heuristic from this vertex.
 
ompl::base::Cost getEdgeCostFromForwardParent () const
 Returns the edge cost from the forward parent.
 
bool hasForwardParent () const
 Returns whether this vertex has a parent in the forward search.
 
void setForwardParent (const std::shared_ptr< Vertex > &vertex, const ompl::base::Cost &edgeCost)
 Sets the parent vertex (in the forward-search tree).
 
void resetForwardParent ()
 Resets the forward parent of the vertex.
 
bool hasReverseParent () const
 Returns whether this vertex has a parent in the reverse search.
 
void setReverseParent (const std::shared_ptr< Vertex > &vertex)
 Sets the parent vertex (in the reverse-search tree).
 
void resetReverseParent ()
 Resets the reverse parent of the vertex.
 
std::shared_ptr< VertexgetForwardParent () const
 Returns the parent of the vertex (in the forward-search tree).
 
std::shared_ptr< VertexgetReverseParent () const
 Returns the parent of the vertex (in the reverse-search tree).
 
void setForwardEdgeCost (const ompl::base::Cost &cost)
 Sets the cost to come to this vertex.
 
void setCostToComeFromStart (const ompl::base::Cost &cost)
 Sets the cost to come to this vertex.
 
void setCostToComeFromGoal (const ompl::base::Cost &cost)
 Sets the cost to come to this vertex from the goal.
 
void resetCostToComeFromGoal ()
 Resets the cost to come to this vertex from the goal to infinity.
 
void resetExpandedCostToComeFromGoal ()
 Resets the expanded cost to come to this vertex from the goal to infinity.
 
void setExpandedCostToComeFromGoal (const ompl::base::Cost &cost)
 Sets the cost to come to this vertex from the goal when it was expanded.
 
void setCostToGoToGoal (const ompl::base::Cost &cost)
 Sets the cost to go heuristic of this vertex.
 
void updateCostOfForwardBranch () const
 Updates the cost to the whole branch rooted at this vertex.
 
std::vector< std::weak_ptr< Vertex > > invalidateReverseBranch ()
 Recursively invalidates the branch of the reverse tree rooted in this vertex.
 
std::vector< std::weak_ptr< Vertex > > invalidateForwardBranch ()
 Recursively invalidates the branch of the forward tree rooted in this vertex.
 
void addToForwardChildren (const std::shared_ptr< Vertex > &vertex)
 Adds a vertex to this vertex's forward children.
 
void removeFromForwardChildren (std::size_t vertexId)
 Removes a vertex from this vertex's forward children.
 
std::vector< std::shared_ptr< Vertex > > getForwardChildren () const
 Returns this vertex's children in the forward search tree.
 
void addToReverseChildren (const std::shared_ptr< Vertex > &vertex)
 Adds a vertex this vertex's children.
 
void removeFromReverseChildren (std::size_t vertexId)
 Removes a vertex from this vertex's forward children.
 
std::vector< std::shared_ptr< Vertex > > getReverseChildren () const
 Returns this vertex's children in the reverse search tree.
 
void whitelistAsChild (const std::shared_ptr< Vertex > &vertex) const
 Whitelists a child.
 
bool isWhitelistedAsChild (const std::shared_ptr< Vertex > &vertex) const
 Returns whether a child is whitelisted.
 
void blacklistAsChild (const std::shared_ptr< Vertex > &vertex) const
 Blacklists a child.
 
bool isBlacklistedAsChild (const std::shared_ptr< Vertex > &vertex) const
 Returns whether a child is blacklisted.
 
bool hasCachedNeighbors () const
 Returns whether the vertex knows its nearest neighbors on the current approximation.
 
void cacheNeighbors (const std::vector< std::shared_ptr< Vertex > > &neighbors) const
 Caches the neighbors for the current approximation.
 
const std::vector< std::shared_ptr< Vertex > > getNeighbors () const
 Returns the nearest neighbors, throws if not up to date.
 
bool isConsistent () const
 Returns whether the vertex is consistent, i.e., whether its cost-to-come is equal to the cost-to-come when it was last expanded.
 
void setReverseQueuePointer (typename VertexQueue::Element *pointer)
 Sets the reverse queue pointer of this vertex.
 
VertexQueue::Element * getReverseQueuePointer () const
 Returns the reverse queue pointer of this vertex.
 
void resetReverseQueuePointer ()
 Resets the reverse queue pointer.
 
void addToForwardQueueIncomingLookup (typename EdgeQueue::Element *pointer)
 Adds an element to the forward queue incoming lookup.
 
void addToForwardQueueOutgoingLookup (typename EdgeQueue::Element *pointer)
 Adds an element to the forward queue outgoing lookup.
 
std::vector< EdgeQueue::Element * > getForwardQueueIncomingLookup () const
 Returns the forward queue incoming lookup of this vertex.
 
std::vector< EdgeQueue::Element * > getForwardQueueOutgoingLookup () const
 Returns the forward queue outgoing lookup of this vertex.
 
void removeFromForwardQueueIncomingLookup (typename EdgeQueue::Element *element)
 Remove an element from the incoming queue lookup.
 
void removeFromForwardQueueOutgoingLookup (typename EdgeQueue::Element *element)
 Remove an element from the outgoing queue lookup.
 
void resetForwardQueueIncomingLookup ()
 Resets the forward queue incoming lookup.
 
void resetForwardQueueOutgoingLookup ()
 Resets the forward queue outgoing lookup.
 
void callOnForwardBranch (const std::function< void(const std::shared_ptr< Vertex > &)> &function)
 Calls the given function on this vertex and all of its children.
 
void callOnReverseBranch (const std::function< void(const std::shared_ptr< Vertex > &)> &function)
 Calls the given function on this vertex and all of its children.
 

Detailed Description

Definition at line 59 of file Vertex.h.

Constructor & Destructor Documentation

◆ Vertex() [1/2]

ompl::geometric::aitstar::Vertex::Vertex ( const ompl::base::SpaceInformationPtr & spaceInformation,
const ompl::base::ProblemDefinitionPtr & problemDefinition,
const std::size_t & batchId )

Constructs a vertex by sampling a state.

Definition at line 63 of file Vertex.cpp.

◆ Vertex() [2/2]

ompl::geometric::aitstar::Vertex::Vertex ( const std::shared_ptr< Vertex > & other)
explicit

Constructs a copy of another vertex.

Definition at line 83 of file Vertex.cpp.

◆ ~Vertex()

ompl::geometric::aitstar::Vertex::~Vertex ( )
virtual

Destructs the vertex.

Definition at line 103 of file Vertex.cpp.

Member Function Documentation

◆ addToForwardChildren()

void ompl::geometric::aitstar::Vertex::addToForwardChildren ( const std::shared_ptr< Vertex > & vertex)

Adds a vertex to this vertex's forward children.

Definition at line 300 of file Vertex.cpp.

◆ addToForwardQueueIncomingLookup()

void ompl::geometric::aitstar::Vertex::addToForwardQueueIncomingLookup ( typename EdgeQueue::Element * pointer)

Adds an element to the forward queue incoming lookup.

Definition at line 495 of file Vertex.cpp.

◆ addToForwardQueueOutgoingLookup()

void ompl::geometric::aitstar::Vertex::addToForwardQueueOutgoingLookup ( typename EdgeQueue::Element * pointer)

Adds an element to the forward queue outgoing lookup.

Definition at line 502 of file Vertex.cpp.

◆ addToReverseChildren()

void ompl::geometric::aitstar::Vertex::addToReverseChildren ( const std::shared_ptr< Vertex > & vertex)

Adds a vertex this vertex's children.

Definition at line 324 of file Vertex.cpp.

◆ blacklistAsChild()

void ompl::geometric::aitstar::Vertex::blacklistAsChild ( const std::shared_ptr< Vertex > & vertex) const

Blacklists a child.

Definition at line 379 of file Vertex.cpp.

◆ cacheNeighbors()

void ompl::geometric::aitstar::Vertex::cacheNeighbors ( const std::vector< std::shared_ptr< Vertex > > & neighbors) const

Caches the neighbors for the current approximation.

Definition at line 412 of file Vertex.cpp.

◆ callOnForwardBranch()

void ompl::geometric::aitstar::Vertex::callOnForwardBranch ( const std::function< void(const std::shared_ptr< Vertex > &)> & function)

Calls the given function on this vertex and all of its children.

Definition at line 549 of file Vertex.cpp.

◆ callOnReverseBranch()

void ompl::geometric::aitstar::Vertex::callOnReverseBranch ( const std::function< void(const std::shared_ptr< Vertex > &)> & function)

Calls the given function on this vertex and all of its children.

Definition at line 561 of file Vertex.cpp.

◆ getCostToComeFromGoal()

ompl::base::Cost ompl::geometric::aitstar::Vertex::getCostToComeFromGoal ( ) const

Returns the cost to come to this vertex from the goal.

Definition at line 134 of file Vertex.cpp.

◆ getCostToComeFromStart()

ompl::base::Cost ompl::geometric::aitstar::Vertex::getCostToComeFromStart ( ) const

Returns the cost to come to this vertex from the start.

Definition at line 129 of file Vertex.cpp.

◆ getCostToGoToGoal()

ompl::base::Cost ompl::geometric::aitstar::Vertex::getCostToGoToGoal ( ) const

Returns the cost to go heuristic from this vertex.

Definition at line 144 of file Vertex.cpp.

◆ getEdgeCostFromForwardParent()

ompl::base::Cost ompl::geometric::aitstar::Vertex::getEdgeCostFromForwardParent ( ) const

Returns the edge cost from the forward parent.

Definition at line 149 of file Vertex.cpp.

◆ getExpandedCostToComeFromGoal()

ompl::base::Cost ompl::geometric::aitstar::Vertex::getExpandedCostToComeFromGoal ( ) const

Returns the cost to come to this vertex from the goal when it was expanded.

Definition at line 139 of file Vertex.cpp.

◆ getForwardChildren()

std::vector< std::shared_ptr< Vertex > > ompl::geometric::aitstar::Vertex::getForwardChildren ( ) const

Returns this vertex's children in the forward search tree.

Definition at line 436 of file Vertex.cpp.

◆ getForwardParent()

std::shared_ptr< Vertex > ompl::geometric::aitstar::Vertex::getForwardParent ( ) const

Returns the parent of the vertex (in the forward-search tree).

Definition at line 162 of file Vertex.cpp.

◆ getId()

std::size_t ompl::geometric::aitstar::Vertex::getId ( ) const

Get the unique id of this vertex.

Definition at line 109 of file Vertex.cpp.

◆ getNeighbors()

const std::vector< std::shared_ptr< Vertex > > ompl::geometric::aitstar::Vertex::getNeighbors ( ) const

Returns the nearest neighbors, throws if not up to date.

Definition at line 419 of file Vertex.cpp.

◆ getReverseChildren()

std::vector< std::shared_ptr< Vertex > > ompl::geometric::aitstar::Vertex::getReverseChildren ( ) const

Returns this vertex's children in the reverse search tree.

Definition at line 447 of file Vertex.cpp.

◆ getReverseParent()

std::shared_ptr< Vertex > ompl::geometric::aitstar::Vertex::getReverseParent ( ) const

Returns the parent of the vertex (in the reverse-search tree).

Definition at line 172 of file Vertex.cpp.

◆ getScopedState()

ompl::base::ScopedState ompl::geometric::aitstar::Vertex::getScopedState ( ) const

Returns a scoped copy of the underlying state.

Definition at line 124 of file Vertex.cpp.

◆ getState() [1/2]

ompl::base::State * ompl::geometric::aitstar::Vertex::getState ( )

Provides write access to the underlying state.

Definition at line 114 of file Vertex.cpp.

◆ getState() [2/2]

ompl::base::State const * ompl::geometric::aitstar::Vertex::getState ( ) const

Provides read access to the underlying state.

Definition at line 119 of file Vertex.cpp.

◆ hasCachedNeighbors()

bool ompl::geometric::aitstar::Vertex::hasCachedNeighbors ( ) const

Returns whether the vertex knows its nearest neighbors on the current approximation.

Definition at line 407 of file Vertex.cpp.

◆ hasForwardParent()

bool ompl::geometric::aitstar::Vertex::hasForwardParent ( ) const

Returns whether this vertex has a parent in the forward search.

Definition at line 154 of file Vertex.cpp.

◆ hasReverseParent()

bool ompl::geometric::aitstar::Vertex::hasReverseParent ( ) const

Returns whether this vertex has a parent in the reverse search.

Definition at line 167 of file Vertex.cpp.

◆ invalidateForwardBranch()

std::vector< std::weak_ptr< aitstar::Vertex > > ompl::geometric::aitstar::Vertex::invalidateForwardBranch ( )

Recursively invalidates the branch of the forward tree rooted in this vertex.

Definition at line 242 of file Vertex.cpp.

◆ invalidateReverseBranch()

std::vector< std::weak_ptr< aitstar::Vertex > > ompl::geometric::aitstar::Vertex::invalidateReverseBranch ( )

Recursively invalidates the branch of the reverse tree rooted in this vertex.

Definition at line 223 of file Vertex.cpp.

◆ isBlacklistedAsChild()

bool ompl::geometric::aitstar::Vertex::isBlacklistedAsChild ( const std::shared_ptr< Vertex > & vertex) const

Returns whether a child is blacklisted.

Definition at line 384 of file Vertex.cpp.

◆ isConsistent()

bool ompl::geometric::aitstar::Vertex::isConsistent ( ) const

Returns whether the vertex is consistent, i.e., whether its cost-to-come is equal to the cost-to-come when it was last expanded.

Definition at line 459 of file Vertex.cpp.

◆ isWhitelistedAsChild()

bool ompl::geometric::aitstar::Vertex::isWhitelistedAsChild ( const std::shared_ptr< Vertex > & vertex) const

Returns whether a child is whitelisted.

Definition at line 353 of file Vertex.cpp.

◆ removeFromForwardChildren()

void ompl::geometric::aitstar::Vertex::removeFromForwardChildren ( std::size_t vertexId)

Removes a vertex from this vertex's forward children.

Definition at line 305 of file Vertex.cpp.

◆ removeFromForwardQueueIncomingLookup()

void ompl::geometric::aitstar::Vertex::removeFromForwardQueueIncomingLookup ( typename EdgeQueue::Element * element)

Remove an element from the incoming queue lookup.

Definition at line 523 of file Vertex.cpp.

◆ removeFromForwardQueueOutgoingLookup()

void ompl::geometric::aitstar::Vertex::removeFromForwardQueueOutgoingLookup ( typename EdgeQueue::Element * element)

Remove an element from the outgoing queue lookup.

Definition at line 531 of file Vertex.cpp.

◆ removeFromReverseChildren()

void ompl::geometric::aitstar::Vertex::removeFromReverseChildren ( std::size_t vertexId)

Removes a vertex from this vertex's forward children.

Definition at line 329 of file Vertex.cpp.

◆ resetCostToComeFromGoal()

void ompl::geometric::aitstar::Vertex::resetCostToComeFromGoal ( )

Resets the cost to come to this vertex from the goal to infinity.

Definition at line 192 of file Vertex.cpp.

◆ resetExpandedCostToComeFromGoal()

void ompl::geometric::aitstar::Vertex::resetExpandedCostToComeFromGoal ( )

Resets the expanded cost to come to this vertex from the goal to infinity.

Definition at line 197 of file Vertex.cpp.

◆ resetForwardParent()

void ompl::geometric::aitstar::Vertex::resetForwardParent ( )

Resets the forward parent of the vertex.

Definition at line 278 of file Vertex.cpp.

◆ resetForwardQueueIncomingLookup()

void ompl::geometric::aitstar::Vertex::resetForwardQueueIncomingLookup ( )

Resets the forward queue incoming lookup.

Definition at line 539 of file Vertex.cpp.

◆ resetForwardQueueOutgoingLookup()

void ompl::geometric::aitstar::Vertex::resetForwardQueueOutgoingLookup ( )

Resets the forward queue outgoing lookup.

Definition at line 544 of file Vertex.cpp.

◆ resetReverseParent()

void ompl::geometric::aitstar::Vertex::resetReverseParent ( )

Resets the reverse parent of the vertex.

Definition at line 295 of file Vertex.cpp.

◆ resetReverseQueuePointer()

void ompl::geometric::aitstar::Vertex::resetReverseQueuePointer ( )

Resets the reverse queue pointer.

Definition at line 490 of file Vertex.cpp.

◆ setCostToComeFromGoal()

void ompl::geometric::aitstar::Vertex::setCostToComeFromGoal ( const ompl::base::Cost & cost)

Sets the cost to come to this vertex from the goal.

Definition at line 187 of file Vertex.cpp.

◆ setCostToComeFromStart()

void ompl::geometric::aitstar::Vertex::setCostToComeFromStart ( const ompl::base::Cost & cost)

Sets the cost to come to this vertex.

Definition at line 182 of file Vertex.cpp.

◆ setCostToGoToGoal()

void ompl::geometric::aitstar::Vertex::setCostToGoToGoal ( const ompl::base::Cost & cost)

Sets the cost to go heuristic of this vertex.

Definition at line 207 of file Vertex.cpp.

◆ setExpandedCostToComeFromGoal()

void ompl::geometric::aitstar::Vertex::setExpandedCostToComeFromGoal ( const ompl::base::Cost & cost)

Sets the cost to come to this vertex from the goal when it was expanded.

Definition at line 202 of file Vertex.cpp.

◆ setForwardEdgeCost()

void ompl::geometric::aitstar::Vertex::setForwardEdgeCost ( const ompl::base::Cost & cost)

Sets the cost to come to this vertex.

Definition at line 177 of file Vertex.cpp.

◆ setForwardParent()

void ompl::geometric::aitstar::Vertex::setForwardParent ( const std::shared_ptr< Vertex > & vertex,
const ompl::base::Cost & edgeCost )

Sets the parent vertex (in the forward-search tree).

Definition at line 260 of file Vertex.cpp.

◆ setReverseParent()

void ompl::geometric::aitstar::Vertex::setReverseParent ( const std::shared_ptr< Vertex > & vertex)

Sets the parent vertex (in the reverse-search tree).

Definition at line 283 of file Vertex.cpp.

◆ setReverseQueuePointer()

void ompl::geometric::aitstar::Vertex::setReverseQueuePointer ( typename VertexQueue::Element * pointer)

Sets the reverse queue pointer of this vertex.

Definition at line 465 of file Vertex.cpp.

◆ updateCostOfForwardBranch()

void ompl::geometric::aitstar::Vertex::updateCostOfForwardBranch ( ) const

Updates the cost to the whole branch rooted at this vertex.

Definition at line 212 of file Vertex.cpp.

◆ whitelistAsChild()

void ompl::geometric::aitstar::Vertex::whitelistAsChild ( const std::shared_ptr< Vertex > & vertex) const

Whitelists a child.

Definition at line 348 of file Vertex.cpp.


The documentation for this class was generated from the following files:
  • ompl/geometric/planners/informedtrees/aitstar/Vertex.h
  • ompl/geometric/planners/informedtrees/aitstar/src/Vertex.cpp