diff --git a/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice b/source/RobotAPI/interface/units/RobotUnit/NJointTaskSpaceDMPController.ice index 2f039d60c1343421a5a22bc576eec0ea7b3fc456..38cdb96be1a6e47b98e7adc0c939cc816cfd55c6 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 0ed7f2136377c71399c71fec0310fbec12baba85..70fae3d0b1c6576d26d71ee652cd79ef4ae3c75d 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 412a46f20b5ce93eddfed0d68854d4a3c03bc30a..34bd9785cbac94d173e45c6e345cf1531e0a158c 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&);