HOG2
Public Member Functions | Private Member Functions | Private Attributes | List of all members
aStar Class Reference

#include <AStar.h>

Inheritance diagram for aStar:
Inheritance graph
[legend]
Collaboration diagram for aStar:
Collaboration graph
[legend]

Public Member Functions

 aStar ()
 
virtual ~aStar ()
 
pathGetPath (GraphAbstraction *aMap, node *from, node *to, reservationProvider *rp=0)
 
virtual const char * GetName ()
 
double getHVal (node *whence)
 
void setCorridor (path *corridor, int width)
 
void printStats ()
 
uint64_t GetNodesExpanded ()
 
uint64_t GetNodesTouched ()
 
void resetNodeCount ()
 
int getMemoryUsage ()
 
- Public Member Functions inherited from SearchAlgorithm
 SearchAlgorithm ()
 
virtual ~SearchAlgorithm ()
 
uint64_t GetNodesExpanded ()
 
uint64_t GetNodesTouched ()
 
virtual void LogFinalStats (StatCollection *)
 

Private Member Functions

nodeABSNode (node *n)
 
pathgetPathToNode (node *target, reservationProvider *rp)
 
pathextractPathToStart (Graph *g, node *n)
 
nodegetNextNode ()
 
void updateWeight (node *currOpenNode, node *neighbor, edge *e)
 
void addToOpenList (node *currOpenNode, node *neighbor, edge *e)
 
bool nodeInCorridor (node *n)
 
void addNeighborsToCorridor (Graph *g, node *n, int windowSize)
 
void buildCorridor (path *p, int windowSize)
 
double internalHeuristic (node *from, node *to)
 

Private Attributes

AStar3Util::PQueue openQueue
 
AStar3Util::NodeLookupTable closedList
 
nodegoal
 
nodestart
 
Graphg
 
GraphAbstractionabstr
 
AStar3Util::Corridor eligibleNodes
 
int absLevel
 

Additional Inherited Members

- Public Attributes inherited from SearchAlgorithm
uint32_t nodesExpanded
 
uint32_t nodesTouched
 

Detailed Description

Definition at line 81 of file AStar.h.

Constructor & Destructor Documentation

◆ aStar()

aStar::aStar ( )
inline

Definition at line 83 of file AStar.h.

◆ ~aStar()

virtual aStar::~aStar ( )
inlinevirtual

Definition at line 84 of file AStar.h.

Member Function Documentation

◆ ABSNode()

node* aStar::ABSNode ( node n)
inlineprivate

Definition at line 98 of file AStar.h.

References absLevel, abstr, and GraphAbstraction::GetNthParent().

◆ addNeighborsToCorridor()

void aStar::addNeighborsToCorridor ( Graph g,
node n,
int  windowSize 
)
private

Definition at line 228 of file AStar.cpp.

References node::edgeIterNext(), node::getEdgeIter(), Graph::GetNode(), and node::GetNum().

◆ addToOpenList()

void aStar::addToOpenList ( node currOpenNode,
node neighbor,
edge e 
)
private

Definition at line 169 of file AStar.cpp.

References edge::GetWeight(), and verbose.

◆ buildCorridor()

void aStar::buildCorridor ( path p,
int  windowSize 
)
private

Definition at line 221 of file AStar.cpp.

References path::next.

◆ extractPathToStart()

path * aStar::extractPathToStart ( Graph g,
node n 
)
private

◆ getHVal()

double aStar::getHVal ( node whence)

◆ getMemoryUsage()

int aStar::getMemoryUsage ( )

Definition at line 216 of file AStar.cpp.

◆ GetName()

const char * aStar::GetName ( )
virtual

Implements SearchAlgorithm.

Definition at line 21 of file AStar.cpp.

◆ getNextNode()

node * aStar::getNextNode ( )
private

Definition at line 124 of file AStar.cpp.

References AStar3Util::SearchNode::currNode.

◆ GetNodesExpanded()

uint64_t aStar::GetNodesExpanded ( )
inline

Definition at line 92 of file AStar.h.

References SearchAlgorithm::nodesExpanded.

Referenced by patrolUnit::goToLoc().

◆ GetNodesTouched()

uint64_t aStar::GetNodesTouched ( )
inline

Definition at line 93 of file AStar.h.

References SearchAlgorithm::nodesTouched.

Referenced by patrolUnit::goToLoc().

◆ GetPath()

path * aStar::GetPath ( GraphAbstraction aMap,
node from,
node to,
reservationProvider rp = 0 
)
virtual

◆ getPathToNode()

path * aStar::getPathToNode ( node target,
reservationProvider rp 
)
private

◆ internalHeuristic()

double aStar::internalHeuristic ( node from,
node to 
)
private

Definition at line 256 of file AStar.cpp.

◆ nodeInCorridor()

bool aStar::nodeInCorridor ( node n)
private

Definition at line 250 of file AStar.cpp.

◆ printStats()

void aStar::printStats ( )

Definition at line 209 of file AStar.cpp.

◆ resetNodeCount()

void aStar::resetNodeCount ( )
inline

Definition at line 94 of file AStar.h.

References SearchAlgorithm::nodesExpanded, and SearchAlgorithm::nodesTouched.

◆ setCorridor()

void aStar::setCorridor ( path corridor,
int  width 
)

Definition at line 52 of file AStar.cpp.

References width.

◆ updateWeight()

void aStar::updateWeight ( node currOpenNode,
node neighbor,
edge e 
)
private

Member Data Documentation

◆ absLevel

int aStar::absLevel
private

Definition at line 114 of file AStar.h.

Referenced by ABSNode().

◆ abstr

GraphAbstraction* aStar::abstr
private

Definition at line 112 of file AStar.h.

Referenced by ABSNode().

◆ closedList

AStar3Util::NodeLookupTable aStar::closedList
private

Definition at line 109 of file AStar.h.

◆ eligibleNodes

AStar3Util::Corridor aStar::eligibleNodes
private

Definition at line 113 of file AStar.h.

◆ g

Graph* aStar::g
private

Definition at line 111 of file AStar.h.

◆ goal

node* aStar::goal
private

Definition at line 110 of file AStar.h.

◆ openQueue

AStar3Util::PQueue aStar::openQueue
private

Definition at line 108 of file AStar.h.

◆ start

node * aStar::start
private

Definition at line 110 of file AStar.h.


The documentation for this class was generated from the following files: