diff --git a/core/include/moveit/task_constructor/container.h b/core/include/moveit/task_constructor/container.h index b5bb0c43..33b29861 100644 --- a/core/include/moveit/task_constructor/container.h +++ b/core/include/moveit/task_constructor/container.h @@ -48,6 +48,7 @@ class ContainerBase : public Stage { public: PRIVATE_CLASS(ContainerBase) + typedef std::unique_ptr pointer; size_t numChildren() const; @@ -227,7 +228,7 @@ class WrapperBase : public ParallelContainerBase { public: PRIVATE_CLASS(WrapperBase) - WrapperBase(const std::string &name, pointer &&child = Stage::pointer()); + WrapperBase(const std::string &name, Stage::pointer &&child = Stage::pointer()); /// insertion is only allowed if children() is empty bool insert(Stage::pointer&& stage, int before = -1) override; @@ -242,7 +243,7 @@ public: bool compute() override; protected: - WrapperBase(WrapperBasePrivate* impl, pointer &&child = Stage::pointer()); + WrapperBase(WrapperBasePrivate* impl, Stage::pointer &&child = Stage::pointer()); /// called by a (direct) child when a new solution becomes available void onNewSolution(const SolutionBase &s) override = 0; diff --git a/core/include/moveit/task_constructor/stages/compute_ik.h b/core/include/moveit/task_constructor/stages/compute_ik.h index c35dc7e3..b232d7e2 100644 --- a/core/include/moveit/task_constructor/stages/compute_ik.h +++ b/core/include/moveit/task_constructor/stages/compute_ik.h @@ -60,7 +60,7 @@ namespace moveit { namespace task_constructor { namespace stages { */ class ComputeIK : public WrapperBase { public: - ComputeIK(const std::string &name, pointer &&child = Stage::pointer()); + ComputeIK(const std::string &name, Stage::pointer &&child = Stage::pointer()); void init(const core::RobotModelConstPtr &robot_model); void onNewSolution(const SolutionBase &s) override; diff --git a/core/include/moveit/task_constructor/task.h b/core/include/moveit/task_constructor/task.h index db2bb8af..85556066 100644 --- a/core/include/moveit/task_constructor/task.h +++ b/core/include/moveit/task_constructor/task.h @@ -70,7 +70,7 @@ public: const std::string &planning_plugin_param_name = "planning_plugin", const std::string &adapter_plugins_param_name = "request_adapters"); Task(const std::string& id = "", - Stage::pointer &&container = std::make_unique("task pipeline")); + ContainerBase::pointer &&container = std::make_unique("task pipeline")); Task(Task &&other); Task& operator=(Task&& other); ~Task(); diff --git a/core/src/task.cpp b/core/src/task.cpp index 8cdee876..1e807ad1 100644 --- a/core/src/task.cpp +++ b/core/src/task.cpp @@ -115,7 +115,7 @@ void Task::loadRobotModel(const std::string& robot_description) { throw Exception("Task failed to construct RobotModel"); } -void Task::add(pointer &&stage) { +void Task::add(Stage::pointer &&stage) { if (!stage) throw std::runtime_error("stage insertion failed: invalid stage pointer"); diff --git a/visualization/motion_planning_tasks/src/local_task_model.cpp b/visualization/motion_planning_tasks/src/local_task_model.cpp index 5563739c..5cf12f42 100644 --- a/visualization/motion_planning_tasks/src/local_task_model.cpp +++ b/visualization/motion_planning_tasks/src/local_task_model.cpp @@ -84,7 +84,7 @@ LocalTaskModel::LocalTaskModel(QObject *parent) flags_ |= LOCAL_MODEL; } -LocalTaskModel::LocalTaskModel(Stage::pointer &&container, QObject *parent) +LocalTaskModel::LocalTaskModel(ContainerBase::pointer &&container, QObject *parent) : BaseTaskModel(parent) , Task("", std::move(container)) {