libmove3d-planners
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Attributes | List of all members
PRM Class Reference

Classe représentant l'algorithme PRM. More...

#include <PRM.hpp>

Inheritance diagram for PRM:
Planner ACR CellPRM PerturbationRoadmap RRM Vis_PRM

Public Member Functions

 PRM (Robot *robot, Graph *graph)
 Constructor.
 
 ~PRM ()
 Destructor.
 
int getNumberOfExpansion () const
 
virtual unsigned init ()
 Initialize the PRM. More...
 
bool checkStopConditions ()
 Check the stopping conditions of PRM. More...
 
bool preConditions ()
 Check the pre-conditions of PRM. More...
 
virtual void expandOneStep ()
 Perform a single expansion step of PRM.
 
unsigned int run ()
 Main function of the PRM. More...
 
bool trajFound ()
 Check whether PRM has found a trajectory. More...
 
API::TrajectoryextractTrajectory ()
 Extract a trajectory going through all the waypoints.
 
- Public Member Functions inherited from Planner
 Planner ()
 Plain Constructor of the class.
 
 Planner (Robot *rob, Graph *graph)
 Constructor of the class. More...
 
virtual ~Planner ()
 Destructeur de la classe.
 
RobotgetActivRobot ()
 retourne le Robot activ More...
 
void setRobot (Robot *R)
 place le Robot utilisé pour la planification More...
 
GraphgetActivGraph ()
 obtient le Graph actif pour la planification More...
 
void setGraph (Graph *G)
 modifie le Graph actif pour la planification More...
 
bool setInit (confPtr_t Cs)
 place le Node initial de la planification More...
 
bool setGoal (confPtr_t Cg)
 place le Node final de la planification More...
 
NodegetInit ()
 obtient le Node intial de la planification More...
 
NodegetGoal ()
 obtient le Node final de la planification More...
 
confPtr_t getInitConf ()
 Get init configuration.
 
confPtr_t getGoalConf ()
 Get goal configuration.
 
bool getInitialized ()
 test si le Planner est initialisé pour la planification More...
 
void setInitialized (bool b)
 modifie la valeur du Booleen de test d'initialisation More...
 
int getRunId ()
 Get the run Id.
 
void setRunId (int id)
 Set the run Id.
 
double getTime ()
 return time in algorithm this function must be called after ChronoTimeOfDayOn() More...
 
void chronoStart ()
 
void chronoStop ()
 
void chronoUpdate ()
 

Protected Attributes

unsigned m_nbAddedNode
 
int m_nbConscutiveFailures
 
int m_nbExpansions
 
std::vector< confPtr_t > waypoints
 waypoints through which the solution path should go
 
std::vector< Node * > waypointNodes
 nodes containing the waypoints
 
- Protected Attributes inherited from Planner
int(* _stop_func )()
 
void(* _draw_func )()
 
confPtr_t _q_start
 
confPtr_t _q_goal
 
Node_Start
 Le Node initial de la planification.
 
Node_Goal
 Le Node final de la planification.
 
Robot_Robot
 Le Robot pour lequel la recherche va se faire.
 
Graph_Graph
 Le Graph qui va être utilisé
 
bool _Init
 Le Planner a été initialisé
 
bool m_fail
 
int m_runId
 
double m_time
 

Detailed Description

Classe représentant l'algorithme PRM.

Author
Florian Pilardeau,B90,6349 <fpilarde>

Member Function Documentation

bool PRM::checkStopConditions ( )

Check the stopping conditions of PRM.

Returns
TRUE if one of the conditions is satisfied, and FALSE otherwise
unsigned PRM::init ( void  )
virtual

Initialize the PRM.

Returns
the number of nodes added to the graph

Reimplemented from Planner.

Reimplemented in PerturbationRoadmap.

bool PRM::preConditions ( )

Check the pre-conditions of PRM.

Returns
TRUE if one of the conditions is satisfied, and FALSE otherwise
unsigned int PRM::run ( )
virtual

Main function of the PRM.

Returns
the number of nodes added to the graph

Implements Planner.

bool PRM::trajFound ( )
virtual

Check whether PRM has found a trajectory.

Returns
TRUE if the criteria required for a trajectory to be found are met, and FALSE otherwise

Reimplemented from Planner.


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