ParallelPlan.h
107 base::PlannerStatus solve(double solveTime, std::size_t minSolCount, std::size_t maxSolCount, bool hybridize = true);
113 base::PlannerStatus solve(const base::PlannerTerminationCondition &ptc, std::size_t minSolCount, std::size_t maxSolCount, bool hybridize = true);
118 void solveOne(base::Planner *planner, std::size_t minSolCount, const base::PlannerTerminationCondition *ptc);
121 void solveMore(base::Planner *planner, std::size_t minSolCount, std::size_t maxSolCount, const base::PlannerTerminationCondition *ptc);
A boost shared pointer wrapper for ompl::geometric::PathHybridization.
This is a utility that allows executing multiple planners in parallel, until one or more find a solut...
Definition: ParallelPlan.h:66
void clearHybridizationPaths()
Clear the set of paths recorded for hybrididzation.
Definition: ParallelPlan.cpp:70
A boost shared pointer wrapper for ompl::base::ProblemDefinition.
void addPlannerAllocator(const base::PlannerAllocator &pa)
Add a planner allocator to use.
Definition: ParallelPlan.cpp:58
boost::function< PlannerPtr(const SpaceInformationPtr &)> PlannerAllocator
Definition of a function that can allocate a planner.
Definition: Planner.h:422
Encapsulate a termination condition for a motion planner. Planners will call operator() to decide whe...
Definition: PlannerTerminationCondition.h:64
void solveMore(base::Planner *planner, std::size_t minSolCount, std::size_t maxSolCount, const base::PlannerTerminationCondition *ptc)
Run the planner and collect the solutions. This function is only called if hybridize_ is true...
Definition: ParallelPlan.cpp:152
base::PlannerStatus solve(double solveTime, bool hybridize=true)
Call Planner::solve() for all planners, in parallel, each planner running for at most solveTime secon...
Definition: ParallelPlan.cpp:75
std::vector< base::PlannerPtr > planners_
The set of planners to be used.
Definition: ParallelPlan.h:127
geometric::PathHybridizationPtr phybrid_
The instance of the class that performs path hybridization.
Definition: ParallelPlan.h:130
A boost shared pointer wrapper for ompl::base::Planner.
ParallelPlan(const base::ProblemDefinitionPtr &pdef)
Create an instance for a specified space information.
Definition: ParallelPlan.cpp:40
A class to store the exit status of Planner::solve()
Definition: PlannerStatus.h:48
void addPlanner(const base::PlannerPtr &planner)
Add a planner to use.
Definition: ParallelPlan.cpp:49
void solveOne(base::Planner *planner, std::size_t minSolCount, const base::PlannerTerminationCondition *ptc)
Run the planner and call ompl::base::PlannerTerminationCondition::terminate() for the other planners ...
Definition: ParallelPlan.cpp:135
const base::ProblemDefinitionPtr & getProblemDefinition() const
Get the problem definition used.
Definition: ParallelPlan.h:88