Aikido
aikido::planner::CompositePlanner Class Reference

CompositePlanner is a base class for concrete planner classes that contain multiple planners. More...

#include <aikido/planner/CompositePlanner.hpp>

Inheritance diagram for aikido::planner::CompositePlanner:
aikido::planner::Planner aikido::planner::FirstSupportedMetaPlanner aikido::planner::RankedMetaPlanner aikido::planner::SequenceMetaPlanner

Public Member Functions

 CompositePlanner (statespace::ConstStateSpacePtr stateSpace, const std::vector< PlannerPtr > &planners=std::vector< PlannerPtr >())
 Constructs given list of planners. More...
 
bool hasPlanner (const Planner &planner) const
 Returns true if this CompositePlanner contains planner. More...
 
bool canSolve (const Problem &problem) const override
 Returns true if this planner can solve problem. More...
 
- Public Member Functions inherited from aikido::planner::Planner
 Planner (statespace::ConstStateSpacePtr stateSpace, common::RNG *rng=nullptr)
 Constructs from a state space. More...
 
virtual ~Planner ()=default
 Default destructor. More...
 
statespace::ConstStateSpacePtr getStateSpace () const
 Returns const state space. More...
 
common::RNGgetRng ()
 Returns RNG. More...
 
virtual trajectory::TrajectoryPtr plan (const Problem &problem, Result *result=nullptr)=0
 Solves problem returning the result to result. More...
 

Protected Attributes

const std::vector< PlannerPtrmPlanners
 Planners. More...
 
- Protected Attributes inherited from aikido::planner::Planner
statespace::ConstStateSpacePtr mStateSpace
 State space associated with this planner. More...
 
std::unique_ptr< common::RNGmRng
 RNG the planner uses. More...
 

Detailed Description

CompositePlanner is a base class for concrete planner classes that contain multiple planners.

Constructor & Destructor Documentation

◆ CompositePlanner()

aikido::planner::CompositePlanner::CompositePlanner ( statespace::ConstStateSpacePtr  stateSpace,
const std::vector< PlannerPtr > &  planners = std::vector< PlannerPtr >() 
)

Constructs given list of planners.

Parameters
[in]stateSpaceState space that this planner associated with.
[in]plannersPlanners that this CompositePlanner will contain.
Exceptions
Ifany of planners are null.

Member Function Documentation

◆ canSolve()

bool aikido::planner::CompositePlanner::canSolve ( const Problem problem) const
overridevirtual

Returns true if this planner can solve problem.

Implements aikido::planner::Planner.

◆ hasPlanner()

bool aikido::planner::CompositePlanner::hasPlanner ( const Planner planner) const

Returns true if this CompositePlanner contains planner.

Member Data Documentation

◆ mPlanners

const std::vector<PlannerPtr> aikido::planner::CompositePlanner::mPlanners
protected

Planners.