From f0b99a7f8e5af2bbf033358f41b5d9b37385e33b Mon Sep 17 00:00:00 2001
From: Fabian Reister <fabian.reister@kit.edu>
Date: Thu, 23 Jun 2022 13:41:33 +0200
Subject: [PATCH] factories: removing .trajectoryControl and .safetyControl

---
 .../armarx/navigation/factories/NavigationStackFactory.cpp | 6 +++---
 .../navigation/factories/TrajectoryControllerFactory.cpp   | 7 ++++---
 .../navigation/factories/TrajectoryControllerFactory.h     | 5 +++--
 3 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/source/armarx/navigation/factories/NavigationStackFactory.cpp b/source/armarx/navigation/factories/NavigationStackFactory.cpp
index 68fa77a0..9869c6a7 100644
--- a/source/armarx/navigation/factories/NavigationStackFactory.cpp
+++ b/source/armarx/navigation/factories/NavigationStackFactory.cpp
@@ -40,9 +40,9 @@ namespace armarx::navigation::fac
 
         return server::NavigationStack{
             .globalPlanner = GlobalPlannerFactory::create(globalPlannerCfg, ctx),
-            .localPlanner = LocalPlannerFactory::create(localPlannerCfg, ctx),
-            .trajectoryControl = TrajectoryControllerFactory::create(trajectoryControllerCfg, ctx),
-            .safetyControl = SafetyControllerFactory::create(safetyControllerCfg, ctx)};
+            .localPlanner = LocalPlannerFactory::create(localPlannerCfg, ctx)};
+            // .trajectoryControl = TrajectoryControllerFactory::create(trajectoryControllerCfg, ctx),
+            // .safetyControl = SafetyControllerFactory::create(safetyControllerCfg, ctx)};
     }
 
     server::NavigationStack
diff --git a/source/armarx/navigation/factories/TrajectoryControllerFactory.cpp b/source/armarx/navigation/factories/TrajectoryControllerFactory.cpp
index 277d277d..3b8f6a39 100644
--- a/source/armarx/navigation/factories/TrajectoryControllerFactory.cpp
+++ b/source/armarx/navigation/factories/TrajectoryControllerFactory.cpp
@@ -12,7 +12,8 @@
 namespace armarx::navigation::fac
 {
     traj_ctrl::TrajectoryControllerPtr
-    TrajectoryControllerFactory::create(const aron::data::DictPtr& params, const core::Scene& ctx)
+    TrajectoryControllerFactory::create(const VirtualRobot::RobotPtr& robot,
+                                        const aron::data::DictPtr& params)
     {
         namespace layer = traj_ctrl;
 
@@ -35,11 +36,11 @@ namespace armarx::navigation::fac
         {
             case traj_ctrl::Algorithms::WaypointController:
                 controller = std::make_shared<traj_ctrl::WaypointController>(
-                    traj_ctrl::WaypointControllerParams::FromAron(algoParams), ctx);
+                    traj_ctrl::WaypointControllerParams::FromAron(algoParams));
                 break;
             case traj_ctrl::Algorithms::TrajectoryFollowingController:
                 controller = std::make_shared<traj_ctrl::TrajectoryFollowingController>(
-                    traj_ctrl::TrajectoryFollowingControllerParams::FromAron(algoParams), ctx);
+                    robot, traj_ctrl::TrajectoryFollowingControllerParams::FromAron(algoParams));
                 break;
         }
 
diff --git a/source/armarx/navigation/factories/TrajectoryControllerFactory.h b/source/armarx/navigation/factories/TrajectoryControllerFactory.h
index 16328e1c..cd35d860 100644
--- a/source/armarx/navigation/factories/TrajectoryControllerFactory.h
+++ b/source/armarx/navigation/factories/TrajectoryControllerFactory.h
@@ -23,6 +23,7 @@
 #pragma once
 
 // #include <RobotAPI/libraries/aron/core/data/variant/container/Dict.h>
+#include <VirtualRobot/VirtualRobot.h>
 #include <RobotAPI/libraries/aron/core/data/variant/forward_declarations.h>
 
 #include <armarx/navigation/core/fwd.h>
@@ -38,8 +39,8 @@ namespace armarx::navigation::fac
     class TrajectoryControllerFactory
     {
     public:
-        static traj_ctrl::TrajectoryControllerPtr create(const aron::data::DictPtr& params,
-                                                         const core::Scene& ctx);
+        static traj_ctrl::TrajectoryControllerPtr create(const VirtualRobot::RobotPtr& robot,
+                                                         const aron::data::DictPtr& params);
 
     protected:
     private:
-- 
GitLab