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

praStar Class Reference

The pra* search algorithm which does partial pathfinding using abstraction. More...

#include <praStar.h>

Inheritance diagram for praStar:

Inheritance graph
[legend]
Collaboration diagram for praStar:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 praStar ()
virtual ~praStar ()
virtual pathgetPath (graphAbstraction *aMap, node *from, node *to, reservationProvider *rp=0)
virtual const char * getName ()
void setPartialPathLimit (int limit)
int getPartialPathLimit ()
void setPlanFromMiddle (bool _planFromMiddle)
void setExpandSearchRadius (bool _expandSearchRadius)
void setUseSmoothing (bool _smoothing)
void setCache (path **p)
void setFixedPlanLevel (int p)
 Set a fixed level for abstraction in planning.

void getAbstractPathLengths (std::vector< int > &len)

Protected Member Functions

pathgetAbstractPath (graph *g, unsigned int source, unsigned int destParent, std::vector< unsigned int > &eligibleNodeParents, int LABEL, unsigned int dest)
unsigned int astar (graph *g, unsigned int source, unsigned int destParent, std::vector< unsigned int > &eligibleNodeParents, int LABEL, unsigned int dest)
void relaxEdge (heap *nodeHeap, graph *g, edge *e, int source, int nextNode, int dest, int LABEL)
pathsmoothPath (path *p)

Protected Attributes

path ** cache
int partialLimit
int fixedPlanLevel
char algName [30]
graphAbstractionmap
bool expandSearchRadius
bool planFromMiddle
bool smoothing
reservationProviderrp
std::vector< int > lengths

Detailed Description

The pra* search algorithm which does partial pathfinding using abstraction.


Constructor & Destructor Documentation

praStar::praStar  ) 
 

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


Member Function Documentation

unsigned int praStar::astar graph g,
unsigned int  source,
unsigned int  destParent,
std::vector< unsigned int > &  eligibleNodeParents,
int  LABEL,
unsigned int  dest
[protected]
 

path * praStar::getAbstractPath graph g,
unsigned int  source,
unsigned int  destParent,
std::vector< unsigned int > &  eligibleNodeParents,
int  LABEL,
unsigned int  dest
[protected]
 

void praStar::getAbstractPathLengths std::vector< int > &  len  )  [inline]
 

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

Implements searchAlgorithm.

int praStar::getPartialPathLimit  )  [inline]
 

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

Implements searchAlgorithm.

Reimplemented in aStar2.

void praStar::relaxEdge heap nodeHeap,
graph g,
edge e,
int  source,
int  nextNode,
int  dest,
int  LABEL
[protected]
 

void praStar::setCache path **  p  ) 
 

void praStar::setExpandSearchRadius bool  _expandSearchRadius  )  [inline]
 

void praStar::setFixedPlanLevel int  p  )  [inline]
 

Set a fixed level for abstraction in planning.

-1 to return to dynamic level selection

void praStar::setPartialPathLimit int  limit  )  [inline]
 

void praStar::setPlanFromMiddle bool  _planFromMiddle  )  [inline]
 

void praStar::setUseSmoothing bool  _smoothing  )  [inline]
 

path * praStar::smoothPath path p  )  [protected]
 


Member Data Documentation

char praStar::algName[30] [protected]
 

path** praStar::cache [protected]
 

bool praStar::expandSearchRadius [protected]
 

int praStar::fixedPlanLevel [protected]
 

std::vector<int> praStar::lengths [protected]
 

graphAbstraction* praStar::map [protected]
 

int praStar::partialLimit [protected]
 

bool praStar::planFromMiddle [protected]
 

reservationProvider* praStar::rp [protected]
 

bool praStar::smoothing [protected]
 


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