From f8c4ebcd8ef67bdd9c3dbd4560a93f22a9daa44f Mon Sep 17 00:00:00 2001
From: Christoph Pohl <christoph.pohl@kit.edu>
Date: Mon, 10 May 2021 14:00:02 +0200
Subject: [PATCH] Added removeAllViaPoints interface method to
 NJointTaskSpaceImpedanceDMPController

---
 .../units/RobotUnit/NJointTaskSpaceDMPController.ice        | 1 +
 .../DMPController/NJointTaskSpaceImpedanceDMPController.cpp | 6 ++++++
 .../DMPController/NJointTaskSpaceImpedanceDMPController.h   | 2 ++
 3 files changed, 9 insertions(+)

diff --git a/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice b/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice
index 2f039d60c..38cdb96be 100644
--- a/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice
+++ b/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice
@@ -340,6 +340,7 @@ module armarx
         void resetDMP();
         void stopDMP();
         void resumeDMP();
+        void removeAllViaPoints();
 
         void setMPWeights(DoubleSeqSeq weights);
         DoubleSeqSeq getMPWeights();
diff --git a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
index 0ed7f2136..70fae3d0b 100644
--- a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
+++ b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.cpp
@@ -575,6 +575,12 @@ namespace armarx
         return resvec;
     }
 
+    void NJointTaskSpaceImpedanceDMPController::removeAllViaPoints(const Ice::Current&)
+    {
+        LockGuardType guard {controllerMutex};
+        ARMARX_INFO << "setting via points ";
+        dmpCtrl->removeAllViaPoints();
+    }
 
 
 }
diff --git a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.h b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.h
index 412a46f20..34bd9785c 100644
--- a/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.h
+++ b/source/RobotAPI/libraries/RobotAPINJointControllers/DMPController/NJointTaskSpaceImpedanceDMPController.h
@@ -74,6 +74,8 @@ namespace armarx
         void setMPWeights(const DoubleSeqSeq& weights, const Ice::Current&);
         DoubleSeqSeq getMPWeights(const Ice::Current&);
 
+        void removeAllViaPoints(const Ice::Current&) override;
+
     protected:
         virtual void onPublish(const SensorAndControl&, const DebugDrawerInterfacePrx&, const DebugObserverInterfacePrx&);
 
-- 
GitLab