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

Prioritized Class Reference

#include <Prioritized.h>

Inheritance diagram for Prioritized:

Inheritance graph
[legend]
Collaboration diagram for Prioritized:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Prioritized ()
 Prioritized (int sizeQueue)
virtual ~Prioritized ()
void setParams (PrioritizedlevelData *_unitData, PrioritizedGroup *_group)
 Get the parameters of the Prioritized unit, set them inside Prioritized.

pathgetPath (graphAbstraction *aMap, node *from, node *to, reservationProvider *rp=NULL)
 The wrapper for the main procedure.

virtual const char * getName ()
int getNumAbsLevels ()
void resetNewlySeenCount ()
int getNewlySeenCount ()
graphAbstractiongetAMap ()

Private Member Functions

void setCorridorIndex (node *n, int index)
 Sets the corridor index of a node.

void setClosedListIndex (node *n, int index)
 Sets the closed list index of a node.

void setDepth (node *n, int depth)
 Sets the depth of a node.

void setgValue (node *n, double g)
 Sets the g-value of a node.

int getCorridorIndex (node *n)
 Gets the corridor index of a node.

int getClosedListIndex (node *n)
 Gets the closed list index of a node.

int getDepth (node *n)
 Gets the depth of a node.

double getgValue (node *n)
 Gets the g-value of a node.

int getAllocateENI (node *n)
 Given a node, return the index of the corresponding extended node.

int getENI (node *n)
 Tells us if the node is in the extNodes array.

void generateName (char *name)
 Generates algorithm's name.

void resetCachedPaths ()
 Clears the cached paths and corridors.

int defineCorridor (int aLevel)
 Finds and marks the corridor that restricts search at the given level.

void markCorridor (corridor *c)
 Mark the corridor in extNodes for a constant time lookup.

nodeupdateState (graphAbstraction *map, node *from, node *to)
 Update the current state (queueing the changes in a -heap-).

void updateQueuedStates (graphAbstraction *map, node *from, node *to)
 Update the states that have been queued.


Private Attributes

char PrioritizedName [128]
graphAbstractionaMap
PrioritizedGroupgroup
int numAbsLevels
algSpecalgAtLevel
PrioritizedlevelDataunitData
std::deque< extNodeextNodes
int newlySeenCount
std::vector< node * > _LSS
std::map< node *, bool, ltNodePtr_inLSS
unsigned int _sizeQueue
PriorityQueue_priorityQueue

Friends

class PrioritizedGroup

Constructor & Destructor Documentation

Prioritized::Prioritized  ) 
 

Prioritized::Prioritized int  sizeQueue  ) 
 

Prioritized::~Prioritized  )  [virtual]
 


Member Function Documentation

int Prioritized::defineCorridor int  aLevel  )  [private]
 

Finds and marks the corridor that restricts search at the given level.

Returns -1 if no corridor is defined above us

void Prioritized::generateName char *  name  )  [private]
 

Generates algorithm's name.

int Prioritized::getAllocateENI node n  )  [inline, private]
 

Given a node, return the index of the corresponding extended node.

Create one if needed

graphAbstraction* Prioritized::getAMap  )  [inline]
 

int Prioritized::getClosedListIndex node n  )  [inline, private]
 

Gets the closed list index of a node.

int Prioritized::getCorridorIndex node n  )  [inline, private]
 

Gets the corridor index of a node.

int Prioritized::getDepth node n  )  [inline, private]
 

Gets the depth of a node.

int Prioritized::getENI node n  )  [inline, private]
 

Tells us if the node is in the extNodes array.

double Prioritized::getgValue node n  )  [inline, private]
 

Gets the g-value of a node.

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

Implements searchAlgorithm.

int Prioritized::getNewlySeenCount  )  [inline]
 

int Prioritized::getNumAbsLevels  )  [inline]
 

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

The wrapper for the main procedure.

Implements searchAlgorithm.

void Prioritized::markCorridor corridor c  )  [private]
 

Mark the corridor in extNodes for a constant time lookup.

void Prioritized::resetCachedPaths  )  [private]
 

Clears the cached paths and corridors.

void Prioritized::resetNewlySeenCount  )  [inline]
 

void Prioritized::setClosedListIndex node n,
int  index
[inline, private]
 

Sets the closed list index of a node.

void Prioritized::setCorridorIndex node n,
int  index
[inline, private]
 

Sets the corridor index of a node.

void Prioritized::setDepth node n,
int  depth
[inline, private]
 

Sets the depth of a node.

void Prioritized::setgValue node n,
double  g
[inline, private]
 

Sets the g-value of a node.

void Prioritized::setParams PrioritizedlevelData _unitData,
PrioritizedGroup _group
 

Get the parameters of the Prioritized unit, set them inside Prioritized.

void Prioritized::updateQueuedStates graphAbstraction map,
node from,
node to
[inline, private]
 

Update the states that have been queued.

node * Prioritized::updateState graphAbstraction map,
node from,
node to
[inline, private]
 

Update the current state (queueing the changes in a -heap-).

While we're at it, return the best neighboring state.


Friends And Related Function Documentation

friend class PrioritizedGroup [friend]
 


Member Data Documentation

std::map<node*, bool, ltNodePtr> Prioritized::_inLSS [private]
 

std::vector<node*> Prioritized::_LSS [private]
 

PriorityQueue* Prioritized::_priorityQueue [private]
 

unsigned int Prioritized::_sizeQueue [private]
 

algSpec* Prioritized::algAtLevel [private]
 

graphAbstraction* Prioritized::aMap [private]
 

std::deque<extNode> Prioritized::extNodes [private]
 

PrioritizedGroup* Prioritized::group [private]
 

int Prioritized::newlySeenCount [private]
 

int Prioritized::numAbsLevels [private]
 

char Prioritized::PrioritizedName[128] [private]
 

PrioritizedlevelData* Prioritized::unitData [private]
 


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