HOG2
|
A sample A* implementation. More...
#include <AStar3.h>
Public Member Functions | |
aStarOld (double _w=1.0, bool _doPathDraw=true) | |
path * | GetPath (GraphAbstraction *aMap, node *from, node *to, reservationProvider *rp=0) |
virtual const char * | GetName () |
void | drawPath (bool _doPathDraw) |
Public Member Functions inherited from SearchAlgorithm | |
SearchAlgorithm () | |
virtual | ~SearchAlgorithm () |
uint64_t | GetNodesExpanded () |
uint64_t | GetNodesTouched () |
virtual void | LogFinalStats (StatCollection *) |
Private Member Functions | |
void | relaxEdge (Heap *nodeHeap, Graph *g, edge *e, int source, int nextNode, node *to) |
path * | extractBestPath (Graph *g, unsigned int current) |
Private Attributes | |
GraphAbstraction * | map |
double | wh |
char | aStarName [128] |
bool | doPathDraw |
Additional Inherited Members | |
Public Attributes inherited from SearchAlgorithm | |
uint32_t | nodesExpanded |
uint32_t | nodesTouched |
aStarOld::aStarOld | ( | double | _w = 1.0 , |
bool | _doPathDraw = true |
||
) |
Definition at line 21 of file AStar3.cpp.
References aStarName, doPathDraw, fequal(), and wh.
|
inline |
Definition at line 32 of file AStar3.h.
References doPathDraw.
Definition at line 137 of file AStar3.cpp.
References doPathDraw, edge::getFrom(), node::getMarkedEdge(), Graph::GetNode(), edge::getTo(), path, edge::setMarked(), and verbose.
Referenced by GetPath().
|
inlinevirtual |
|
virtual |
Implements SearchAlgorithm.
Definition at line 35 of file AStar3.cpp.
References Heap::Add(), node::edgeIterNext(), extractBestPath(), GraphAbstraction::GetAbstractGraph(), node::getEdgeIter(), node::GetLabelF(), node::GetLabelL(), Graph::GetNode(), node::GetNum(), GraphAbstraction::h(), Heap::IsIn(), GraphAbstractionConstants::kAbstractionLevel, graph_object::key, GraphAbstractionConstants::kTemporaryLabel, map, node::markEdge(), MAXINT, reservationProvider::nodeOccupied(), SearchAlgorithm::nodesExpanded, SearchAlgorithm::nodesTouched, GraphAbstraction::Pathable(), relaxEdge(), Heap::Remove(), node::SetKeyLabel(), node::SetLabelF(), verbose, and wh.
Referenced by craStar::buildAbstractPath(), hpaStar::findAbstractPath(), and hpaStar::GetPath().
|
private |
Definition at line 120 of file AStar3.cpp.
References d, Heap::DecreaseKey(), fless(), node::GetLabelF(), Graph::GetNode(), edge::GetWeight(), GraphAbstraction::h(), GraphAbstractionConstants::kTemporaryLabel, map, node::markEdge(), node::SetLabelF(), verbose, and wh.
Referenced by GetPath().
|
private |
Definition at line 39 of file AStar3.h.
Referenced by aStarOld(), and GetName().
|
private |
Definition at line 40 of file AStar3.h.
Referenced by aStarOld(), drawPath(), and extractBestPath().
|
private |
Definition at line 37 of file AStar3.h.
Referenced by GetPath(), and relaxEdge().
|
private |
Definition at line 38 of file AStar3.h.
Referenced by aStarOld(), GetPath(), and relaxEdge().