22 #ifndef OPENRAVE_PLANNER_H
23 #define OPENRAVE_PLANNER_H
74 StateSaver(boost::shared_ptr<PlannerParameters> params);
79 virtual void Restore();
81 boost::shared_ptr<PlannerParameters>
_params;
84 virtual void _Restore();
95 virtual void copy(boost::shared_ptr<PlannerParameters const> r);
133 virtual void Validate()
const;
142 typedef boost::function<dReal(const std::vector<dReal>&)>
CostFn;
152 typedef boost::function<dReal(const std::vector<dReal>&)>
GoalFn;
160 typedef boost::function<dReal(const std::vector<dReal>&,
const std::vector<dReal>&)>
DistMetricFn;
187 typedef boost::function<bool (std::vector<dReal>&)>
SampleFn;
223 typedef boost::function<void (const std::vector<dReal>&)>
SetStateFn;
226 typedef boost::function<void (std::vector<dReal>&)>
GetStateFn;
236 typedef boost::function<void (std::vector<dReal>&,
const std::vector<dReal>&)>
DiffStateFn;
249 typedef boost::function<bool (std::vector<dReal>&,
const std::vector<dReal>&, int)>
NeighStateFn;
295 return _configurationspecification.GetDOF();
310 virtual bool serialize(std::ostream& O,
int options=0)
const;
313 virtual ProcessElement startElement(
const std::string& name,
const AttributesList& atts);
314 virtual bool endElement(
const std::string& name);
315 virtual void characters(
const std::string& ch);
326 std::string __processingtag;
327 int _plannerparametersdepth;
360 virtual bool InitPlan(
RobotBasePtr robot, PlannerParametersConstPtr params) = 0;
369 virtual bool InitPlan(
RobotBasePtr robot, std::istream& isParameters);
382 RAVELOG_WARN(
"planner does not support pOutputStream anymore, please find another method to return information like using SendCommand or writing the data into the returned trajectory\n");
384 return PlanPath(ptraj);
388 virtual PlannerParametersConstPtr GetParameters()
const = 0;
404 return boost::static_pointer_cast<
PlannerBase>(shared_from_this());
407 return boost::static_pointer_cast<
PlannerBase const>(shared_from_this());
427 virtual PlannerAction _CallCallbacks(
const PlannerProgress& progress);
430 virtual const char* GetHash()
const {
434 std::list<UserDataWeakPtr> __listRegisteredCallbacks;