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