PlannerBase Class Reference

#include <planners/PlannerBase.h>

Inherited by PL_HasCollisionDetector [virtual], PL_OpenGL [virtual], and PlannerMultiThreaded [virtual].

Inheritance diagram for PlannerBase:

Inheritance graph
[legend]
Collaboration diagram for PlannerBase:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 PlannerBase ()
virtual ~PlannerBase ()
void CopySettings (PlannerBase *original)
virtual void * GetParameters ()
virtual bool SetParameters (const void *param)
virtual bool ValidateParameters ()
virtual bool Plan ()=0
virtual const PathBaseGetPath () const =0
virtual void SetCollisionDetector (CollisionDetectorBase *collisionDetector)
bool HasTimeLimitExpired () const
void StartTimer () const
void SetTimeLimitInSeconds (double newTimeLimit)
virtual bool Save (const char *filename) const
virtual bool Load (const char *filename)
bool GetPlanSuccess () const
void SetPlanSuccess (bool success)
double GetTimeLimitInSeconds () const
double GetTimeElapsedInSeconds () const
int GetGuid () const
virtual void SetStartConfig (const Configuration &configuration)
virtual void SetGoalConfig (const Configuration &configuration)
const ConfigurationGetStartConfig () const
const ConfigurationGetGoalConfig () const

Public Attributes

bool m_UseSemaphores

Protected Attributes

double timeLimitInSeconds
bool planSuccessful
int guid
char * paramBuffer
int sizeOfParameterBuffer
TimerCPU timer

Private Attributes

Configuration startConfig
Configuration goalConfig

Detailed Description

Definition at line 10 of file PlannerBase.h.


Constructor & Destructor Documentation

PlannerBase::PlannerBase  ) 
 

Definition at line 8 of file PlannerBase.cpp.

PlannerBase::~PlannerBase  )  [virtual]
 

Definition at line 19 of file PlannerBase.cpp.

References paramBuffer.


Member Function Documentation

void PlannerBase::CopySettings PlannerBase original  ) 
 

Reimplemented in PL_Astar, IK_ACA, IK_InvKinBase, PL_GraphBase, and PL_PRM.

Definition at line 143 of file PlannerBase.cpp.

const Configuration & PlannerBase::GetGoalConfig  )  const
 

Definition at line 168 of file PlannerBase.cpp.

References goalConfig.

Referenced by PL_RRT_ClosedChain::CompareLocalPlanners(), PL_SimplexSubdivision::ConnectStartAndGoal(), PL_RRT_ClosedChain::ConnectToGoal(), PL_RGD_RRT::ConnectToGoal(), PL_RRT_ClosedChain::ConnectToGoal2(), PL_RRT_ClosedChain::ConnectToGoalJacobian(), PL_RRT_CONNECT::DrawExplicit(), PL_RRT::DrawExplicit(), PL_SimplexSubdivision::DrawExplicit(), PL_Juan::DrawExplicit(), PL_ACA_CONNECT::DrawExplicit(), PL_ATACE::ExtendToGoal(), PL_ATACE::ExtendWithConstraint(), PL_Range_Sensor::GenerateRandomConfig(), IK_ACA::InitBestParams(), PL_ATACE::LazyTrackEEPath(), PL_GraphBase::LoadContents(), PL_Juan::MyGoalFunc(), PL_Juan::MyLocalPlanner(), PL_RRT_CONNECT::Plan(), PL_RRT::Plan(), PL_Range_Sensor::Plan(), PL_PrmIjg::Plan(), PL_Linear::Plan(), PL_IanRandom::Plan(), PL_Neural::Plan(), PL_MPEP::Plan(), PL_PRM_ClosedLocalJacobian::Plan(), PL_RGD_PRM::Plan(), PL_PRM_ClosedChain::Plan(), PL_Juan::Plan(), PL_ACA_CONNECT::Plan(), PL_GraphBase::SaveContents(), PL_Sandros::SetGoalConfig(), PL_PRM::SetGoalConfig(), IK_ACA::SetGoalConfig(), PL_Astar::SetGoalConfig(), PL_RRT_CONNECT::SetStart_and_GoalConfig(), PL_Sandros::SetStartConfig(), and PL_Astar::SetStartConfig().

int PlannerBase::GetGuid  )  const
 

Definition at line 148 of file PlannerBase.cpp.

References guid.

void * PlannerBase::GetParameters  )  [virtual]
 

Reimplemented in PL_PRM.

Definition at line 25 of file PlannerBase.cpp.

References paramBuffer, and sizeOfParameterBuffer.

Referenced by PL_PRM::GetParameters(), and ServerBase::GetPlannerParameters().

virtual const PathBase* PlannerBase::GetPath  )  const [pure virtual]
 

Implemented in PL_LinearCollision, and PL_Boolean_Output.

Referenced by Server::SendPath().

bool PlannerBase::GetPlanSuccess  )  const
 

Definition at line 112 of file PlannerBase.cpp.

References planSuccessful.

const Configuration & PlannerBase::GetStartConfig  )  const
 

Definition at line 158 of file PlannerBase.cpp.

References startConfig.

Referenced by PL_Astar::AlignJoint(), PL_RRT_ClosedChain::CompareJacobianAndRGD(), PL_RRT_ClosedChain::CompareLocalPlanners(), PL_SimplexSubdivision::ConnectStartAndGoal(), IK_ACA::CreateEmbryo(), PL_Juan::GenerateNewEmbryo(), PL_Range_Sensor::GenerateRandomConfig(), PL_PrmIjg::GenerateRandomConfig(), PL_IanRandom::GenerateRandomConfig(), PL_Neural::GenerateRandomConfig(), PL_RRT_CONNECT::Get_random_config(), PL_RRT::Get_random_config(), PL_MPEP::InitializeTree(), IK_ACA::InitNewSearch(), PL_GraphBase::LoadContents(), PL_Juan::MyRandomPath(), PL_ACA_CONNECT::MyRandomPath(), PL_RRT_CONNECT::Plan(), PL_RRT::Plan(), PL_Range_Sensor::Plan(), PL_PrmIjg::Plan(), PL_PRM::Plan(), PL_SimplexSubdivision::Plan(), PL_Linear::Plan(), PL_IanRandom::Plan(), PL_Neural::Plan(), PL_MPEP::Plan(), IK_Jacobian::Plan(), IK_ACA::Plan(), PL_ForTest::Plan(), PL_PRM_ClosedLocalJacobian::Plan(), PL_RRT_ClosedChain::Plan(), PL_RGD_RRT::Plan(), PL_RGD_PRM::Plan(), LocalPlannerClosed::Plan(), PL_PRM_ClosedChain::Plan(), PL_ATACE::Plan(), PL_Juan::Plan(), PL_ACA_CONNECT::Plan(), PL_RGD_PRM::Plan_As_Usual(), PL_PRM_ClosedChain::Plan_As_Usual(), PL_GraphBase::SaveContents(), PL_RRT_CONNECT::SetStart_and_GoalConfig(), PL_RRT::SetStart_and_GoalConfig(), PL_ACA_CONNECT::SetStart_and_GoalConfig(), PL_Sandros::SetStartConfig(), PL_PRM::SetStartConfig(), IK_ACA::SetStartConfig(), PL_Astar::SetStartConfig(), PL_Juan::SetStartConfig(), PL_GraphBase::TranslatePath(), PL_PRM_ClosedBase::TranslatePath(), PL_RGD_PRM::TranslatePath(), PL_PRM_ClosedChain::TranslatePath(), PL_RGD_PRM::UpdatePlanarConstraint(), and PL_PRM_ClosedChain::UpdatePlanarConstraint().

double PlannerBase::GetTimeElapsedInSeconds  )  const
 

Definition at line 127 of file PlannerBase.cpp.

References TimerCPU::ElapsedTime(), and timer.

Referenced by PL_RRT_ClosedChain::OutputStatistics(), PL_RGD_PRM::Plan(), PL_PRM_ClosedChain::Plan(), and PL_MPEP::Planner_SMG_Greedy().

Here is the call graph for this function:

double PlannerBase::GetTimeLimitInSeconds  )  const
 

Definition at line 133 of file PlannerBase.cpp.

References timeLimitInSeconds.

Referenced by PL_PRM_ClosedLocalJacobian::Plan(), PL_RGD_PRM::Plan(), and PL_PRM_ClosedChain::Plan().

bool PlannerBase::HasTimeLimitExpired  )  const
 

Definition at line 78 of file PlannerBase.cpp.

References TimerCPU::ElapsedTime(), and timer.

Referenced by PL_PRM::AddNode(), PL_PRM::BuildInitRoadMap(), PL_RGD_RRT::ConnectToGoal(), PL_ATACE::ExtendWithConstraint(), PL_PRM::FindPath(), PL_RGD_PRM::GetSatisfactoryConfiguration(), PL_PRM_ClosedChain::GetSatisfactoryConfiguration(), PL_RGD_PRM::IsInterfering(), PL_PRM_ClosedChain::IsInterfering(), PL_PRM_ClosedChain::MakeItClosed(), PL_RGD_PRM::MakeItSatisfied(), PL_RRT_ClosedChain::Plan(), PL_RGD_RRT::Plan(), PL_RGD_PRM::Plan(), PL_PRM_ClosedChain::Plan(), PL_ATACE::Plan(), PL_Astar::Plan(), PL_MPEP::Planner_Greedy(), PL_MPEP::Planner_IMP_Greedy(), PL_MPEP::Planner_RRT_Connect_Like(), PL_MPEP::Planner_RRT_Greedy_Connect(), PL_MPEP::Planner_RRT_Greedy_Like(), PL_MPEP::Planner_RRT_Like(), PL_MPEP::Planner_SMG_Greedy(), PL_MPEP::Planner_SMG_RRT_Connect_Like(), PL_MPEP::Planner_SMG_RRT_Greedy_Like(), IK_ACA::Search(), and IK_ACA::Search1().

Here is the call graph for this function:

bool PlannerBase::Load const char *  filename  )  [virtual]
 

Reimplemented in PL_Juan, IK_ACA, IK_InvKinBase, PL_GraphBase, and PL_Sandros.

Definition at line 107 of file PlannerBase.cpp.

Referenced by ServerBase::OpenExampleFile().

virtual bool PlannerBase::Plan  )  [pure virtual]
 

Implemented in PL_ACA_CONNECT, PL_Juan, PL_Astar, TrajPlanner, RRT_TrajPlanner, Jacobian_TrajPlanner, PL_ATACE, LocalPlannerClosed, PL_PRM_ClosedChain, PL_RGD_PRM, PL_RGD_RRT, PL_RGD_Constraint, PL_RRT_ClosedChain, LocalPlannerClosed, PL_PRM_ClosedBase, PL_PRM_ClosedLocalJacobian, PL_PRM_ClosedChain, PL_RRT_ClosedChain, PL_ForTest, IK_ACA, IK_Jacobian, PL_MPEP, IK_InvKinBase, PL_Neural, PL_IanRandom, PL_Linear, PL_SimplexSubdivision, PL_GraphBase, PL_PRM, PL_PrmIjg, PL_Range_Sensor, PL_RRT, PL_RRT_CONNECT, PL_Sandros, and PL_Sequential.

Referenced by DoPlanning(), and Server::Plan().

bool PlannerBase::Save const char *  filename  )  const [virtual]
 

Reimplemented in PL_Juan, IK_ACA, IK_InvKinBase, PL_GraphBase, and PL_Sandros.

Definition at line 102 of file PlannerBase.cpp.

void PlannerBase::SetCollisionDetector CollisionDetectorBase collisionDetector  )  [virtual]
 

Reimplemented in IK_ACA.

Definition at line 73 of file PlannerBase.cpp.

void PlannerBase::SetGoalConfig const Configuration configuration  )  [virtual]
 

Reimplemented in PL_Astar, RRT_TrajPlanner, PL_ATACE, IK_ACA, PL_GraphBase, PL_PRM, PL_Range_Sensor, and PL_Sandros.

Definition at line 188 of file PlannerBase.cpp.

References goalConfig.

Referenced by IK_InvKinBase::AssignGoalConfig(), PL_ATACE::ExtendWithConstraint(), PL_ATACE::LazyTrackEEPath(), ServerBase::OpenExampleFile(), Server::Plan(), PL_PRM_ClosedLocalJacobian::Plan(), PL_RGD_PRM::Plan(), PL_PRM_ClosedChain::Plan(), ServerBase::RefreshPlanner(), PL_Range_Sensor::SetGoalConfig(), PL_GraphBase::SetGoalConfig(), IK_ACA::SetGoalConfig(), PL_ATACE::SetGoalConfig(), and RRT_TrajPlanner::SetGoalConfig().

bool PlannerBase::SetParameters const void *  param  )  [virtual]
 

Reimplemented in PL_PRM.

Definition at line 33 of file PlannerBase.cpp.

References paramBuffer, and sizeOfParameterBuffer.

Referenced by PL_PRM::SetParameters(), and ServerBase::SetPlannerParameters().

void PlannerBase::SetPlanSuccess bool  success  ) 
 

Definition at line 117 of file PlannerBase.cpp.

References planSuccessful.

Referenced by DoPlanning().

void PlannerBase::SetStartConfig const Configuration configuration  )  [virtual]
 

Reimplemented in PL_Juan, PL_Astar, RRT_TrajPlanner, Jacobian_TrajPlanner, PL_ATACE, IK_ACA, PL_GraphBase, PL_PRM, PL_Range_Sensor, and PL_Sandros.

Definition at line 178 of file PlannerBase.cpp.

References startConfig.

Referenced by PL_ATACE::ExtendWithConstraint(), PL_ATACE::LazyTrackEEPath(), ServerBase::OpenExampleFile(), Server::Plan(), PL_PRM_ClosedLocalJacobian::Plan(), PL_RGD_PRM::Plan(), PL_PRM_ClosedChain::Plan(), ServerBase::RefreshPlanner(), PL_Range_Sensor::SetStartConfig(), PL_GraphBase::SetStartConfig(), PL_ATACE::SetStartConfig(), Jacobian_TrajPlanner::SetStartConfig(), RRT_TrajPlanner::SetStartConfig(), and PL_Juan::SetStartConfig().

void PlannerBase::SetTimeLimitInSeconds double  newTimeLimit  ) 
 

Definition at line 96 of file PlannerBase.cpp.

References timeLimitInSeconds.

Referenced by PL_Range_Sensor::Plan(), PL_PRM_ClosedLocalJacobian::Plan(), PL_RGD_PRM::Plan(), and PL_PRM_ClosedChain::Plan().

void PlannerBase::StartTimer  )  const
 

Definition at line 91 of file PlannerBase.cpp.

References TimerCPU::Start(), and timer.

Referenced by PL_Sandros::Plan(), PL_RRT_CONNECT::Plan(), PL_RRT::Plan(), PL_Range_Sensor::Plan(), PL_PRM::Plan(), PL_SimplexSubdivision::Plan(), IK_Jacobian::Plan(), IK_ACA::Plan(), PL_PRM_ClosedLocalJacobian::Plan(), PL_RRT_ClosedChain::Plan(), PL_RGD_RRT::Plan(), PL_RGD_PRM::Plan(), PL_PRM_ClosedChain::Plan(), PL_ATACE::Plan(), PL_Astar::Plan(), PL_Juan::Plan(), and PL_ACA_CONNECT::Plan().

Here is the call graph for this function:

bool PlannerBase::ValidateParameters  )  [virtual]
 

Reimplemented in PL_PRM.

Definition at line 68 of file PlannerBase.cpp.


Member Data Documentation

Configuration PlannerBase::goalConfig [private]
 

Definition at line 49 of file PlannerBase.h.

Referenced by GetGoalConfig(), PL_MPEP::Plan(), and SetGoalConfig().

int PlannerBase::guid [protected]
 

Definition at line 42 of file PlannerBase.h.

Referenced by PL_RRT_ClosedChain::AddNodeInTree(), PL_RGD_RRT::AddNodeInTree(), PL_ATACE::AddNodeInTree(), PL_MPEP::ClearTree(), PL_RRT_ClosedChain::ClearTree(), PL_RGD_RRT::ClearTree(), PL_ATACE::ClearTree(), PL_MPEP::ConnectNode(), PL_RRT_ClosedChain::CreateTree(), PL_RGD_RRT::CreateTree(), PL_ATACE::CreateTree(), PL_RRT_ClosedChain::DrawExplicit(), PL_RGD_RRT::DrawExplicit(), PL_ATACE::DrawExplicit(), PL_Neural::DrawUniversePortion(), GetGuid(), PL_MPEP::InitializeTree(), PL_Sandros::Plan(), PL_Range_Sensor::Plan(), PL_PRM::Plan(), IK_ACA::Plan(), PL_Astar::Plan(), PL_RGD_PRM::Plan_As_Usual(), PL_PRM_ClosedChain::Plan_As_Usual(), PL_ForTest::RemoveNode(), IK_ACA::Search(), IK_ACA::Search1(), and PL_ATACE::TrimTreeFrom().

bool PlannerBase::m_UseSemaphores
 

Definition at line 38 of file PlannerBase.h.

Referenced by PlannerMultiThreaded::PlanMultiThreaded().

char* PlannerBase::paramBuffer [protected]
 

Definition at line 43 of file PlannerBase.h.

Referenced by PL_PRM::GetParameters(), GetParameters(), PL_PRM::SetParameters(), SetParameters(), and ~PlannerBase().

bool PlannerBase::planSuccessful [protected]
 

Definition at line 41 of file PlannerBase.h.

Referenced by GetPlanSuccess(), and SetPlanSuccess().

int PlannerBase::sizeOfParameterBuffer [protected]
 

Definition at line 44 of file PlannerBase.h.

Referenced by PL_PRM::GetParameters(), GetParameters(), and SetParameters().

Configuration PlannerBase::startConfig [private]
 

Definition at line 48 of file PlannerBase.h.

Referenced by GetStartConfig(), PL_MPEP::Plan(), PL_ForTest::Plan(), and SetStartConfig().

double PlannerBase::timeLimitInSeconds [protected]
 

Definition at line 40 of file PlannerBase.h.

Referenced by GetTimeLimitInSeconds(), and SetTimeLimitInSeconds().

TimerCPU PlannerBase::timer [mutable, protected]
 

Definition at line 45 of file PlannerBase.h.

Referenced by GetTimeElapsedInSeconds(), HasTimeLimitExpired(), and StartTimer().


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 22:03:00 2006 for Motion Planning Kernel by  doxygen 1.4.6-NO