#include <planners/prm/PL_PRM.h>
Inherits PL_GraphBase.
Inherited by PL_PRM_ClosedBase [virtual]
, PL_PRM_ClosedChain, and PL_RGD_PRM.
Inheritance diagram for PL_PRM:
Public Member Functions | |
virtual | ~PL_PRM () |
PL_PRM () | |
virtual bool | DrawExplicit () const |
virtual bool | Plan () |
virtual void | SetStartConfig (const Configuration &config) |
virtual void | SetGoalConfig (const Configuration &config) |
virtual void | SetCollisionDetector (CD_BasicStyle *collisionDetector) |
virtual void * | GetParameters () |
virtual bool | SetParameters (const void *param) |
virtual bool | ValidateParameters () |
void | SetRadiusTol (double tol) |
double | GetRadiusTol () |
void | SetPRMMode (BOOL &isLazy, BOOL &validNodes, BOOL &validEdges) |
void | GetPRMMode (BOOL &isLazy, BOOL &validNodes, BOOL &validEdges) const |
void | SetUseMidPts (BOOL use_them) |
BOOL | GetUseMidPts () const |
PRM_StateMachineType | GetLastPlanningState () const |
void | SetInitQuant (int quant) |
int | GetInitQuant () const |
void | SetEnhanceQuant (int quant) |
int | GetEnhanceQuant () const |
void | SetSeedRatio (double ratio) |
double | GetSeedRatio () const |
BOOL | AddNode () |
void | CopySettings (PlannerBase *original) |
Protected Member Functions | |
virtual void | ConnectNode (const node &newnode) |
virtual void | ConnectEdgesFull (const node &n1, const double &radius_squared) |
virtual void | ConnectEdgesLazy (const node &n1, const double &radius_squared) |
SuccessResultType | BuildInitRoadMap () |
SuccessResultType | FindPath () |
SuccessResultType | VerifyPath () |
SuccessResultType | EnhanceRoadMap () |
virtual bool | SaveContents (std::ofstream &outfile) const |
virtual bool | LoadContents (std::ifstream &infile) |
void | SetGraphMode (const bool &treeGraph) |
bool | NodeInConnectionList (const node &n1, const list< int > &connectIDs) |
Protected Attributes | |
double | diagonal_squared |
double | radiusTol |
BOOL | lazyMode |
BOOL | validNodesOnly |
BOOL | validEdgesOnly |
BOOL | useMidPts |
PRM_StateMachineType | lastPlanningState |
int | initQuant |
int | enhanceQuant |
double | seedRatio |
list< Configuration > | config_seeds |
node_map< BOOL > | nodeChecked |
edge_map< BOOL > | edgeChecked |
node_map< BOOL > | uniformlyAdded |
node_map< int > * | connectIDp |
int | baseConnectID |
node_map< node > | pred |
node_map< double > | dist |
node_pq< double > * | openp |
Private Member Functions | |
double | Astar_f (const node &n, const double &currcost) const |
Definition at line 37 of file PL_PRM.h.
|
Definition at line 88 of file PL_PRM.cpp. References connectIDp, and openp. |
|
Definition at line 44 of file PL_PRM.cpp. References baseConnectID, config_seeds, connectIDp, DEFAULT_ENHANCE_QUANT, DEFAULT_INIT_QUANT, DEFAULT_SEED_RATIO, DEFAULT_TOL, DEFAULTBASECONNECTID, diagonal_squared, edgeChecked, enhanceQuant, FALSE, FILEEXT, PL_GraphBase::fileext, FILEHEADER, PL_GraphBase::fileheader, PL_GraphBase::G, initQuant, lastPlanningState, lazyMode, nodeChecked, openp, PRM_START, seedRatio, SetRadiusTol(), TRUE, uniformlyAdded, useMidPts, validEdgesOnly, and validNodesOnly. Here is the call graph for this function: ![]() |
|
Definition at line 896 of file PL_PRM.cpp. References config_seeds, ConnectNode(), FALSE, PL_GraphBase::G, PL_GraphBase::GenerateRandomConfig(), PlannerBase::HasTimeLimitExpired(), PL_GraphBase::IsInterfering(), nodeChecked, TRUE, uniformlyAdded, and validNodesOnly. Referenced by BuildInitRoadMap(). Here is the call graph for this function: ![]() |
|
Definition at line 1762 of file PL_PRM.cpp. References PL_GraphBase::Distance(), and PL_GraphBase::goalNode. Referenced by FindPath(). Here is the call graph for this function: ![]() |
|
Definition at line 1200 of file PL_PRM.cpp. References AddNode(), PlannerBase::HasTimeLimitExpired(), initQuant, PL_GraphBase::NodeCount(), and TIMER_EXPIRED. Referenced by Plan(), PL_RGD_PRM::Plan_As_Usual(), and PL_PRM_ClosedChain::Plan_As_Usual(). Here is the call graph for this function: ![]() |
|
Reimplemented in PL_PRM_ClosedChain, PL_RGD_PRM, and PL_PRM_ClosedBase. Definition at line 1047 of file PL_PRM.cpp. References baseConnectID, config_seeds, connectIDp, PL_GraphBase::Distance(), edgeChecked, PL_GraphBase::G, PL_GraphBase::GetMidPoint(), PL_GraphBase::IsInterfering(), PL_GraphBase::NIL_ID, NodeInConnectionList(), TRUE, and useMidPts. Referenced by ConnectNode(). Here is the call graph for this function: ![]() |
|
Definition at line 989 of file PL_PRM.cpp. References config_seeds, PL_GraphBase::Distance(), edgeChecked, FALSE, PL_GraphBase::G, PL_GraphBase::GetMidPoint(), PL_GraphBase::IsInterfering(), TRUE, useMidPts, and validEdgesOnly. Referenced by ConnectNode(). Here is the call graph for this function: ![]() |
|
Definition at line 964 of file PL_PRM.cpp. References ConnectEdgesFull(), ConnectEdgesLazy(), diagonal_squared, lazyMode, and radiusTol. Referenced by AddNode(), SetGoalConfig(), and SetStartConfig(). Here is the call graph for this function: ![]() |
|
Reimplemented from PL_GraphBase. Definition at line 1772 of file PL_PRM.cpp. References PL_GraphBase::CopySettings(), enhanceQuant, initQuant, lazyMode, radiusTol, seedRatio, SetGraphMode(), useMidPts, validEdgesOnly, and validNodesOnly. Referenced by ServerBase::RefreshPlanner(). Here is the call graph for this function: ![]() |
|
Reimplemented from PL_GraphBase. Reimplemented in PL_RGD_RRT, PL_RGD_Constraint, PL_RRT_ClosedChain, and PL_RRT_ClosedChain. Definition at line 114 of file PL_PRM.cpp. References PL_GraphBase::DrawSpecific(), PL_GraphBase::G, PL_GraphBase::GetCoords(), PL_GraphBase::goalNode, PL_GraphBase::graphPath, Semaphore::Lock(), nodeChecked, PL_GraphBase::startNode, and uniformlyAdded. Referenced by PL_RGD_Constraint::DrawExplicit(). Here is the call graph for this function: ![]() |
|
Definition at line 1640 of file PL_PRM.cpp. References config_seeds, diagonal_squared, enhanceQuant, FALSE, PL_GraphBase::GenerateRandomConfig(), PL_GraphBase::IsInterfering(), radiusTol, seedRatio, TRUE, and validNodesOnly. Referenced by Plan(), PL_RGD_PRM::Plan_As_Usual(), and PL_PRM_ClosedChain::Plan_As_Usual(). Here is the call graph for this function: ![]() |
|
Definition at line 1228 of file PL_PRM.cpp. References Astar_f(), dist, PL_GraphBase::G, PL_GraphBase::goalNode, PL_GraphBase::graphPath, PlannerBase::HasTimeLimitExpired(), lastPlanningState, openp, PASS, pred, PRM_FIND_PATH, PRM_TIMER_EXPIRED, PL_GraphBase::startNode, and TIMER_EXPIRED. Referenced by Plan(), PL_RGD_PRM::Plan_As_Usual(), and PL_PRM_ClosedChain::Plan_As_Usual(). Here is the call graph for this function: ![]() |
|
Definition at line 78 of file PL_PRM.h. References enhanceQuant. |
|
Definition at line 75 of file PL_PRM.h. References initQuant. |
|
Definition at line 72 of file PL_PRM.h. References lastPlanningState. |
|
Reimplemented from PlannerBase. Definition at line 1794 of file PL_PRM.cpp. References enhanceQuant, PlannerBase::GetParameters(), initQuant, lazyMode, PlannerBase::paramBuffer, radiusTol, seedRatio, PlannerBase::sizeOfParameterBuffer, validEdgesOnly, and validNodesOnly. Here is the call graph for this function: ![]() |
|
Definition at line 721 of file PL_PRM.cpp. References lazyMode, validEdgesOnly, and validNodesOnly. |
|
Definition at line 664 of file PL_PRM.cpp. References radiusTol. |
|
Definition at line 81 of file PL_PRM.h. References seedRatio. |
|
Definition at line 70 of file PL_PRM.h. References useMidPts. |
|
Reimplemented from PL_GraphBase. Definition at line 292 of file PL_PRM.cpp. References baseConnectID, connectIDp, DEFAULTBASECONNECTID, edgeChecked, enhanceQuant, PL_GraphBase::G, initQuant, lastPlanningState, lazyMode, PL_GraphBase::LoadContents(), PL_GraphBase::NIL_ID, nodeChecked, PRM_START, radiusTol, seedRatio, uniformlyAdded, useMidPts, validEdgesOnly, and validNodesOnly. Here is the call graph for this function: ![]() |
|
Definition at line 867 of file PL_PRM.cpp. References connectIDp. Referenced by ConnectEdgesFull(), PL_PRM_ClosedBase::ConnectEdgesFull(), PL_RGD_PRM::ConnectEdgesFull(), and PL_PRM_ClosedChain::ConnectEdgesFull(). |
|
|
Reimplemented from PL_GraphBase. Definition at line 382 of file PL_PRM.cpp. References baseConnectID, edgeChecked, enhanceQuant, PL_GraphBase::G, initQuant, lazyMode, PL_GraphBase::NIL_ID, nodeChecked, radiusTol, PL_GraphBase::SaveContents(), seedRatio, uniformlyAdded, useMidPts, validEdgesOnly, and validNodesOnly. Here is the call graph for this function: ![]() |
|
Reimplemented from PL_GraphBase. Reimplemented in PL_PRM_ClosedChain, PL_RGD_PRM, PL_RRT_ClosedChain, PL_PRM_ClosedLocalJacobian, PL_PRM_ClosedJacobian, PL_PRM_ClosedAPDecomp, PL_PRM_ClosedChain, and PL_RRT_ClosedChain. Definition at line 736 of file PL_PRM.cpp. References PL_HasCollisionDetector::collisionDetector, diagonal_squared, PL_GraphBase::GetCspaceRange(), and PL_GraphBase::SetCollisionDetector(). Referenced by ServerBase::RefreshPlanner(), PL_PRM_ClosedAPDecomp::SetCollisionDetector(), PL_PRM_ClosedJacobian::SetCollisionDetector(), PL_PRM_ClosedLocalJacobian::SetCollisionDetector(), PL_RRT_ClosedChain::SetCollisionDetector(), PL_RGD_PRM::SetCollisionDetector(), and PL_PRM_ClosedChain::SetCollisionDetector(). Here is the call graph for this function: ![]() |
|
Definition at line 77 of file PL_PRM.h. References enhanceQuant. |
|
Reimplemented from PL_GraphBase. Definition at line 789 of file PL_PRM.cpp. References ConnectNode(), PL_GraphBase::G, PlannerBase::GetGoalConfig(), PL_GraphBase::goalNode, and PL_GraphBase::SetGoalConfig(). Referenced by PL_RGD_PRM::Plan(), and PL_PRM_ClosedChain::Plan(). Here is the call graph for this function: ![]() |
|
Definition at line 830 of file PL_PRM.cpp. References baseConnectID, PL_GraphBase::ClearGraph(), connectIDp, DEFAULTBASECONNECTID, and PL_GraphBase::G. Referenced by CopySettings(), and SetPRMMode(). Here is the call graph for this function: ![]() |
|
Definition at line 74 of file PL_PRM.h. References initQuant. |
|
Reimplemented from PlannerBase. Definition at line 1866 of file PL_PRM.cpp. References enhanceQuant, initQuant, lazyMode, PlannerBase::paramBuffer, radiusTol, seedRatio, PlannerBase::SetParameters(), validEdgesOnly, and validNodesOnly. Here is the call graph for this function: ![]() |
|
Definition at line 675 of file PL_PRM.cpp. References lazyMode, SetGraphMode(), TRUE, validEdgesOnly, and validNodesOnly. Here is the call graph for this function: ![]() |
|
Definition at line 651 of file PL_PRM.cpp. References radiusTol. Referenced by PL_PRM(). |
|
Definition at line 80 of file PL_PRM.h. References seedRatio. |
|
Reimplemented from PL_GraphBase. Definition at line 753 of file PL_PRM.cpp. References ConnectNode(), PL_GraphBase::G, PlannerBase::GetStartConfig(), PL_GraphBase::SetStartConfig(), and PL_GraphBase::startNode. Here is the call graph for this function: ![]() |
|
Definition at line 69 of file PL_PRM.h. References useMidPts. |
|
Reimplemented from PlannerBase. Definition at line 1932 of file PL_PRM.cpp. |
|
Definition at line 1413 of file PL_PRM.cpp. References FAIL, and PL_GraphBase::graphPath. Referenced by Plan(), PL_RGD_PRM::Plan_As_Usual(), and PL_PRM_ClosedChain::Plan_As_Usual(). |
|
Definition at line 145 of file PL_PRM.h. Referenced by ConnectEdgesFull(), PL_PRM_ClosedBase::ConnectEdgesFull(), PL_RGD_PRM::ConnectEdgesFull(), PL_PRM_ClosedChain::ConnectEdgesFull(), LoadContents(), PL_PRM(), SaveContents(), and SetGraphMode(). |
|
Definition at line 131 of file PL_PRM.h. Referenced by AddNode(), ConnectEdgesFull(), PL_PRM_ClosedBase::ConnectEdgesFull(), PL_RGD_PRM::ConnectEdgesFull(), PL_PRM_ClosedChain::ConnectEdgesFull(), ConnectEdgesLazy(), EnhanceRoadMap(), and PL_PRM(). |
|
Definition at line 144 of file PL_PRM.h. Referenced by ConnectEdgesFull(), PL_PRM_ClosedBase::ConnectEdgesFull(), PL_RGD_PRM::ConnectEdgesFull(), PL_PRM_ClosedChain::ConnectEdgesFull(), LoadContents(), NodeInConnectionList(), PL_PRM(), SetGraphMode(), and ~PL_PRM(). |
|
Definition at line 117 of file PL_PRM.h. Referenced by ConnectNode(), EnhanceRoadMap(), PL_PRM(), Plan(), PL_RGD_PRM::Plan_As_Usual(), PL_PRM_ClosedChain::Plan_As_Usual(), and SetCollisionDetector(). |
|
Definition at line 154 of file PL_PRM.h. Referenced by PL_RRT_ClosedChain::Distance(), PL_RGD_RRT::Distance(), PL_RRT_ClosedChain::Extend(), PL_RGD_RRT::Extend(), and FindPath(). |
|
Definition at line 139 of file PL_PRM.h. Referenced by ConnectEdgesFull(), PL_PRM_ClosedBase::ConnectEdgesFull(), PL_RGD_PRM::ConnectEdgesFull(), PL_PRM_ClosedChain::ConnectEdgesFull(), ConnectEdgesLazy(), LoadContents(), PL_PRM(), and SaveContents(). |
|
Definition at line 128 of file PL_PRM.h. Referenced by CopySettings(), EnhanceRoadMap(), GetEnhanceQuant(), GetParameters(), LoadContents(), PL_PRM(), SaveContents(), SetEnhanceQuant(), and SetParameters(). |
|
Definition at line 127 of file PL_PRM.h. Referenced by BuildInitRoadMap(), CopySettings(), GetInitQuant(), GetParameters(), LoadContents(), PL_PRM(), SaveContents(), SetInitQuant(), and SetParameters(). |
|
Definition at line 125 of file PL_PRM.h. Referenced by FindPath(), GetLastPlanningState(), LoadContents(), PL_PRM(), Plan(), PL_RGD_PRM::Plan_As_Usual(), and PL_PRM_ClosedChain::Plan_As_Usual(). |
|
Definition at line 120 of file PL_PRM.h. Referenced by ConnectNode(), CopySettings(), GetParameters(), GetPRMMode(), LoadContents(), PL_PRM(), SaveContents(), SetParameters(), and SetPRMMode(). |
|
Definition at line 138 of file PL_PRM.h. Referenced by AddNode(), DrawExplicit(), LoadContents(), PL_PRM(), and SaveContents(). |
|
Definition at line 155 of file PL_PRM.h. Referenced by FindPath(), PL_PRM(), and ~PL_PRM(). |
|
Definition at line 153 of file PL_PRM.h. Referenced by FindPath(). |
|
Definition at line 118 of file PL_PRM.h. Referenced by ConnectNode(), CopySettings(), EnhanceRoadMap(), GetParameters(), GetRadiusTol(), LoadContents(), SaveContents(), SetParameters(), and SetRadiusTol(). |
|
Definition at line 129 of file PL_PRM.h. Referenced by CopySettings(), EnhanceRoadMap(), GetParameters(), GetSeedRatio(), LoadContents(), PL_PRM(), SaveContents(), SetParameters(), and SetSeedRatio(). |
|
Definition at line 141 of file PL_PRM.h. Referenced by AddNode(), DrawExplicit(), LoadContents(), PL_PRM(), and SaveContents(). |
|
Definition at line 123 of file PL_PRM.h. Referenced by ConnectEdgesFull(), PL_PRM_ClosedBase::ConnectEdgesFull(), PL_RGD_PRM::ConnectEdgesFull(), PL_PRM_ClosedChain::ConnectEdgesFull(), ConnectEdgesLazy(), CopySettings(), GetUseMidPts(), LoadContents(), PL_PRM(), SaveContents(), and SetUseMidPts(). |
|
Definition at line 122 of file PL_PRM.h. Referenced by ConnectEdgesLazy(), CopySettings(), GetParameters(), GetPRMMode(), LoadContents(), PL_PRM(), SaveContents(), SetParameters(), and SetPRMMode(). |
|
Definition at line 121 of file PL_PRM.h. Referenced by AddNode(), CopySettings(), EnhanceRoadMap(), GetParameters(), GetPRMMode(), LoadContents(), PL_PRM(), SaveContents(), SetParameters(), and SetPRMMode(). |