Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

corridorAStar Class Reference

Corridor AStar builds a a* path between two nodes, restricting itself to a particular corridor, if defined. More...

#include <corridorAStar.h>

Inheritance diagram for corridorAStar:

Inheritance graph
[legend]
Collaboration diagram for corridorAStar:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 corridorAStar ()
virtual ~corridorAStar ()
pathgetPath (graphAbstraction *aMap, node *from, node *to, reservationProvider *rp=0)
pathgetBestPath (graphAbstraction *aMap, node *from, node *to, node *hGoal, reservationProvider *rp=0)
 get the best path from FROM to TO.

pathgetBestPath (graphAbstraction *aMap, node *afrom, node *ato, node *from, node *to, reservationProvider *rp=0)
 get the best path from aFROM to aTO.

void setCorridor (const std::vector< node * > *)
virtual const char * getName ()

Private Member Functions

void relaxEdge (heap *nodeHeap, graph *g, graphAbstraction *aMap, edge *e, node *from, node *to, node *dest)
void relaxFirstEdge (heap *nodeHeap, graph *g, graphAbstraction *aMap, edge *e, node *from, node *afrom, node *ato, node *dest)
void relaxFinalEdge (heap *nodeHeap, graph *g, graphAbstraction *aMap, edge *e, node *from, node *to, node *realDest)
pathextractBestPath (graph *g, unsigned int current)

Private Attributes

const std::vector< node * > * corridor
std::vector< node * > emptyCorridor

Detailed Description

Corridor AStar builds a a* path between two nodes, restricting itself to a particular corridor, if defined.

The corridor must be set before every search if it is to be used properly. After each getPath call the corridor is reset. If no corridor is defined, it will explore all nodes.


Constructor & Destructor Documentation

corridorAStar::corridorAStar  ) 
 

virtual corridorAStar::~corridorAStar  )  [inline, virtual]
 


Member Function Documentation

path * corridorAStar::extractBestPath graph g,
unsigned int  current
[private]
 

path * corridorAStar::getBestPath graphAbstraction aMap,
node afrom,
node ato,
node from,
node to,
reservationProvider rp = 0
 

get the best path from aFROM to aTO.

Use an insertion edge cost from the original from/to.

path * corridorAStar::getBestPath graphAbstraction aMap,
node from,
node to,
node hGoal,
reservationProvider rp = 0
 

get the best path from FROM to TO.

Use hGoal as the heuristic goal. If TO is not on the same level as from path will be returned that ends inside the child of TO.

virtual const char* corridorAStar::getName  )  [inline, virtual]
 

Implements searchAlgorithm.

path * corridorAStar::getPath graphAbstraction aMap,
node from,
node to,
reservationProvider rp = 0
[virtual]
 

Implements searchAlgorithm.

void corridorAStar::relaxEdge heap nodeHeap,
graph g,
graphAbstraction aMap,
edge e,
node from,
node to,
node dest
[private]
 

void corridorAStar::relaxFinalEdge heap nodeHeap,
graph g,
graphAbstraction aMap,
edge e,
node from,
node to,
node realDest
[private]
 

void corridorAStar::relaxFirstEdge heap nodeHeap,
graph g,
graphAbstraction aMap,
edge e,
node from,
node afrom,
node ato,
node dest
[private]
 

void corridorAStar::setCorridor const std::vector< node * > *   ) 
 


Member Data Documentation

const std::vector<node *>* corridorAStar::corridor [private]
 

std::vector<node *> corridorAStar::emptyCorridor [private]
 


The documentation for this class was generated from the following files:
Generated on Tue Aug 18 03:42:41 2009 for HOG by doxygen 1.3.4