A generic class for basic operations on Graph abstractions.
IRDijkstraConstants::NodeLookupTable closedList
size_t operator()(const GNode &x) const
node * FindTopLevelNode(node *one, node *two, GraphAbstraction *aMap)
bool ShouldAddEdge(node *aLowerNode, node *aHigherNode)
OpenClosedList< GNode, NodeHash, NodeEqual, NodeCompare > PQueue
bool operator()(const GNode &i1, const GNode &i2) const
IRDijkstraConstants::PQueue q
bool fgreater(double a, double b)
GraphAbstraction * absGraph
bool InitializeSearch(GraphAbstraction *aMap, node *from, node *to)
bool operator()(const GNode &i1, const GNode &i2) const
std::unordered_map< uint32_t, GNode > NodeLookupTable
path * ExtractAndRefinePath()
double GetLabelF(unsigned int index) const
void RefineNode(node *gNode)
virtual const char * GetName()
path * GetSolution(node *gNode)
A generic algorithm which can be used for pathfinding.
A linked list of nodes which form a continuous path.
void ExpandNeighbors(node *gNode)
node * GetRealNode(node *gNode) const
void SetInitialValues(node *gNewNode, node *aRealNode, node *gParent)
Nodes to be stored within a Graph.
void GetAllSolutionNodes(node *goal, std::vector< node * > &nodes)
virtual path * GetPath(GraphAbstraction *aMap, node *from, node *to, reservationProvider *rp=0)