From 5a050a1aca53bd164b7fae426e47fea0ffff45a4 Mon Sep 17 00:00:00 2001
From: Alexis Nicolin <alexisnicolin@gmail.com>
Date: Wed, 14 Mar 2018 16:33:06 +0100
Subject: [PATCH] Added createAcceleration command

---
 include/sot-dynamic-pinocchio/dynamic-pinocchio.h |  1 +
 src/sot-dynamic-pinocchio.cpp                     | 13 ++++++++++++-
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/include/sot-dynamic-pinocchio/dynamic-pinocchio.h b/include/sot-dynamic-pinocchio/dynamic-pinocchio.h
index 7861a4a..48ef5dc 100644
--- a/include/sot-dynamic-pinocchio/dynamic-pinocchio.h
+++ b/include/sot-dynamic-pinocchio/dynamic-pinocchio.h
@@ -254,6 +254,7 @@ class SOTDYNAMIC_EXPORT DynamicPinocchio
   void cmd_createJacobianEndEffectorSignal( const std::string& sig,const std::string& j );
   void cmd_createPositionSignal           ( const std::string& sig,const std::string& j );
   void cmd_createVelocitySignal           ( const std::string& sig,const std::string& j );
+  void cmd_createAccelerationSignal       ( const std::string& sig,const std::string& j );
 
  private:
   /// \brief map of joints in construction.
diff --git a/src/sot-dynamic-pinocchio.cpp b/src/sot-dynamic-pinocchio.cpp
index ef5cd91..b7e47cb 100644
--- a/src/sot-dynamic-pinocchio.cpp
+++ b/src/sot-dynamic-pinocchio.cpp
@@ -215,6 +215,12 @@ DynamicPinocchio( const std::string & name)
 				"string (signal name)","string (joint name)");
     addCommand("createVelocity",
 	       makeCommandVoid2(*this,&DynamicPinocchio::cmd_createVelocitySignal,docstring));
+ 
+    docstring = docCommandVoid2("Create an acceleration (vector) signal only for one joint.",
+				"string (signal name)","string (joint name)");
+    addCommand("createAcceleration",
+	       makeCommandVoid2(*this,&DynamicPinocchio::cmd_createAccelerationSignal,docstring));
+
   }
 
 
@@ -564,7 +570,7 @@ createAccelerationSignal( const std::string& signame, const std::string& jointNa
     = new dg::SignalTimeDependent< dg::Vector,int >
     ( boost::bind(&DynamicPinocchio::computeGenericAcceleration,this,jointId,_1,_2),
       forwardKinematicsSINTERN,
-      "sotDynamicPinocchio("+name+")::output(matrixHomo)::"+signame );
+      "sotDynamicPinocchio("+name+")::output(dg::Vector)::"+signame );
 
   genericSignalRefs.push_back( sig );
   signalRegistration( *sig );
@@ -1182,3 +1188,8 @@ void DynamicPinocchio::cmd_createVelocitySignal( const std::string& signalName,
 {
     createVelocitySignal(signalName, jointName);
 }
+void DynamicPinocchio::cmd_createAccelerationSignal( const std::string& signalName,
+          				const std::string& jointName )
+{
+    createAccelerationSignal(signalName, jointName);
+}
-- 
GitLab