Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

PathPlanner Class Reference

#include <PathPlanner.h>

List of all members.


Detailed Description

Definition at line 17 of file PathPlanner.h.


Public Types

enum  Cost {
  transF, transB, transY, tranB,
  rotate, noLM, oneLM
}

Public Member Functions

 PathPlanner (coordinate_t xMax, coordinate_t xMin, coordinate_t yMax, coordinate_t yMin)
virtual ~PathPlanner ()
void findPath ()
void addLandmark (const ShapeRoot &lm)
void addLandmarkAsObstacle (const ShapeRoot &lm, unsigned int cost)

Public Attributes

unsigned int maxDistance
std::map< Cost, unsigned int > costs
Point startPt
Point goalPt
AngTwoPi startOrientation
AngTwoPi goalOrientation

Protected Member Functions

bool isLMVisible (location loc, const Point &lm)
void initialize ()
void fillState (unsigned int low, unsigned int high)
void findLinks (state &s)
std::vector< std::pair< int,
int > > 
findLMs (location loc)
statethereIs (unsigned int pos, direction dir, std::pair< int, int > lms)
void computeLandmarkCosts ()
Point findWorldCoords (unsigned int pos)
std::string toString (const PathPlanner::state &s)

Protected Attributes

std::queue< stateallStates
std::vector< state * > * unreached
std::priority_queue< edge,
std::vector< edge >, lessCost
reached
unsigned int numX
unsigned int numY
float minX
float minY
float dX
float dY
location start
location goal
unsigned int * costMap
std::map< unsigned int, PointDatalandmarks
std::map< unsigned int,
unsigned int > 
lmCosts
std::vector< std::pair< Point,
unsigned int > > 
obstacles

Static Protected Attributes

static const int size = 300

Private Member Functions

PathPlanneroperator= (const PathPlanner &)
 PathPlanner (const PathPlanner &)

Classes

struct  direction
struct  edge
struct  lessCost
struct  location
struct  state

Member Enumeration Documentation

enum Cost

Enumerator:
transF 
transB 
transY 
tranB 
rotate 
noLM 
oneLM 

Definition at line 81 of file PathPlanner.h.


Constructor & Destructor Documentation

PathPlanner ( coordinate_t  xMax,
coordinate_t  xMin,
coordinate_t  yMax,
coordinate_t  yMin 
)

Definition at line 17 of file PathPlanner.cc.

virtual ~PathPlanner (  )  [inline, virtual]

Definition at line 20 of file PathPlanner.h.

PathPlanner ( const PathPlanner  )  [private]


Member Function Documentation

void findPath (  ) 

Definition at line 36 of file PathPlanner.cc.

void addLandmark ( const ShapeRoot lm  )  [inline]

Definition at line 96 of file PathPlanner.h.

Referenced by PathPlanner::addLandmarkAsObstacle().

void addLandmarkAsObstacle ( const ShapeRoot lm,
unsigned int  cost 
) [inline]

Definition at line 100 of file PathPlanner.h.

bool isLMVisible ( location  loc,
const Point lm 
) [protected]

Definition at line 320 of file PathPlanner.cc.

Referenced by PathPlanner::findLMs().

void initialize (  )  [protected]

Definition at line 154 of file PathPlanner.cc.

Referenced by PathPlanner::findPath().

void fillState ( unsigned int  low,
unsigned int  high 
) [protected]

Definition at line 279 of file PathPlanner.cc.

Referenced by PathPlanner::initialize().

void findLinks ( state s  )  [protected]

Definition at line 68 of file PathPlanner.cc.

Referenced by PathPlanner::findPath(), and PathPlanner::initialize().

std::vector< std::pair< int, int > > findLMs ( location  loc  )  [protected]

PathPlanner::state * thereIs ( unsigned int  pos,
PathPlanner::direction  dir,
std::pair< int, int >  lms 
) [protected]

Definition at line 293 of file PathPlanner.cc.

Referenced by PathPlanner::findLinks().

void computeLandmarkCosts (  )  [protected]

Definition at line 131 of file PathPlanner.cc.

Referenced by PathPlanner::initialize().

Point findWorldCoords ( unsigned int  pos  )  [protected]

Definition at line 126 of file PathPlanner.cc.

Referenced by PathPlanner::initialize(), and PathPlanner::isLMVisible().

std::string toString ( const PathPlanner::state s  )  [protected]

Definition at line 338 of file PathPlanner.cc.

Referenced by PathPlanner::findPath(), and PathPlanner::initialize().

PathPlanner& operator= ( const PathPlanner  )  [private]


Member Data Documentation

std::queue<state> allStates [protected]

Definition at line 70 of file PathPlanner.h.

Referenced by PathPlanner::fillState(), and PathPlanner::initialize().

std::priority_queue<edge,std::vector<edge>,lessCost> reached [protected]

const int size = 300 [static, protected]

Definition at line 75 of file PathPlanner.h.

unsigned int numX [protected]

float minX [protected]

Definition at line 77 of file PathPlanner.h.

Referenced by PathPlanner::findWorldCoords().

float minY [protected]

Definition at line 77 of file PathPlanner.h.

Referenced by PathPlanner::findWorldCoords().

float dX [protected]

Definition at line 77 of file PathPlanner.h.

Referenced by PathPlanner::findWorldCoords().

float dY [protected]

Definition at line 77 of file PathPlanner.h.

Referenced by PathPlanner::findWorldCoords().

location start [protected]

Definition at line 78 of file PathPlanner.h.

Referenced by PathPlanner::findPath(), and PathPlanner::initialize().

location goal [protected]

Definition at line 78 of file PathPlanner.h.

Referenced by PathPlanner::initialize().

unsigned int maxDistance

Definition at line 80 of file PathPlanner.h.

Referenced by PathPlanner::isLMVisible().

std::map<Cost, unsigned int> costs

Definition at line 83 of file PathPlanner.h.

Referenced by PathPlanner::initialize().

Definition at line 83 of file PathPlanner.h.

Referenced by PathPlanner::initialize().

AngTwoPi startOrientation

Definition at line 84 of file PathPlanner.h.

Referenced by PathPlanner::initialize().

AngTwoPi goalOrientation

Definition at line 84 of file PathPlanner.h.

Referenced by PathPlanner::initialize().

unsigned int* costMap [protected]

std::map<unsigned int, PointData> landmarks [protected]

std::map<unsigned int, unsigned int> lmCosts [protected]

std::vector<std::pair<Point, unsigned int> > obstacles [protected]

Definition at line 92 of file PathPlanner.h.

Referenced by PathPlanner::addLandmarkAsObstacle(), and PathPlanner::initialize().


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

DualCoding 4.0
Generated Thu Nov 22 00:53:59 2007 by Doxygen 1.5.4