mirror of
https://github.com/moveit/moveit_task_constructor.git
synced 2025-11-04 14:49:57 +08:00
52 lines
801 B
C++
52 lines
801 B
C++
// copyright Michael 'v4hn' Goerner @ 2017
|
|
|
|
#pragma once
|
|
|
|
#include <moveit/macros/class_forward.h>
|
|
|
|
#include <vector>
|
|
|
|
namespace planning_scene {
|
|
MOVEIT_CLASS_FORWARD(PlanningScene);
|
|
}
|
|
|
|
namespace robot_model_loader {
|
|
MOVEIT_CLASS_FORWARD(RobotModelLoader);
|
|
}
|
|
|
|
namespace planning_pipeline {
|
|
MOVEIT_CLASS_FORWARD(PlanningPipeline);
|
|
}
|
|
|
|
namespace moveit::task_constructor {
|
|
|
|
MOVEIT_CLASS_FORWARD(SubTask);
|
|
|
|
|
|
MOVEIT_CLASS_FORWARD(Task);
|
|
|
|
class Task {
|
|
public:
|
|
Task();
|
|
~Task();
|
|
|
|
void addStart( SubTaskPtr );
|
|
void addAfter( SubTaskPtr );
|
|
|
|
bool plan();
|
|
|
|
void printState();
|
|
|
|
protected:
|
|
void addSubTask( SubTaskPtr );
|
|
|
|
std::vector<SubTaskPtr> subtasks_;
|
|
|
|
planning_scene::PlanningScenePtr scene_;
|
|
robot_model_loader::RobotModelLoaderPtr rml_;
|
|
|
|
planning_pipeline::PlanningPipelinePtr planner_;
|
|
};
|
|
|
|
}
|