Vertex.h
65 const std::shared_ptr<ompl::base::OptimizationObjective> &objective, const Direction &direction);
84 updateCurrentCostOfChildren(const std::shared_ptr<ompl::base::OptimizationObjective> &objective);
128 void callOnBranch(const std::function<void(const std::shared_ptr<eitstar::State> &)> &function);
void addChild(const std::shared_ptr< Vertex > &vertex)
Adds the given vertex to this vertex's children.
Definition: Vertex.cpp:217
void removeChild(const std::shared_ptr< Vertex > &vertex)
Removes the given vertex from this vertex's children.
Definition: Vertex.cpp:225
bool isParent(const std::shared_ptr< Vertex > &vertex) const
Returns whether the given vertex is this vertex's parent.
Definition: Vertex.cpp:248
friend class ReverseQueue
The edge queue is a friend class to allow efficient updates of outgoing edges of this vertex in the q...
Definition: Vertex.h:257
std::size_t getExpandTag() const
Returns the tag when this vertex was last expanded.
Definition: Vertex.cpp:304
std::weak_ptr< Vertex > getTwin() const
Returns the twin of this vertex, i.e., the vertex in the other search tree with the same underlying s...
Definition: Vertex.cpp:258
std::weak_ptr< Vertex > getParent() const
Returns the parent of this vertex.
Definition: Vertex.cpp:243
std::vector< std::shared_ptr< Vertex > > updateCurrentCostOfChildren(const std::shared_ptr< ompl::base::OptimizationObjective > &objective)
Update the cost-to-come of this vertex's children.
Definition: Vertex.cpp:202
void setTwin(const std::shared_ptr< Vertex > &vertex)
Sets the twin of this vertex, i.e., the vertex in the other search tree with the same underlying stat...
Definition: Vertex.cpp:294
Definition of a cost value. Can represent the cost of a motion or the cost of a state.
Definition: Cost.h:111
void updateParent(const std::shared_ptr< Vertex > &vertex)
Resets the parent of this vertex.
Definition: Vertex.cpp:273
void callOnBranch(const std::function< void(const std::shared_ptr< eitstar::State > &)> &function)
Recursively calls the given function on this vertex and all its children in the tree.
Definition: Vertex.cpp:314
This class provides an implementation of an updatable min-heap. Using it is a bit cumbersome,...
Definition: BinaryHeap.h:84
ompl::base::Cost getEdgeCost() const
Returns the cost of the edge in the forward tree that leads to this vertex.
Definition: Vertex.cpp:268
void setEdgeCost(const ompl::base::Cost &edgeCost)
Sets the cost of the edge in the forward tree that leads to this vertex.
Definition: Vertex.cpp:263
void registerExpansionInReverseSearch(std::size_t tag)
Sets the expand tag when this vertex was last expanded.
Definition: Vertex.cpp:309
Vertex(const std::shared_ptr< State > &state, const std::shared_ptr< ompl::base::OptimizationObjective > &objective, const Direction &direction)
Constructs the vertex, which must be associated with a state.
Definition: Vertex.cpp:155
const std::vector< std::shared_ptr< Vertex > > & getChildren() const
Returns the children of this vertex.
Definition: Vertex.cpp:191
std::shared_ptr< State > getState() const
Returns the state associated with this vertex.
Definition: Vertex.cpp:186