diff --git a/include/sot-dyninv/commands-helper.h b/include/sot-dyninv/commands-helper.h
index e9e2502689c51a741212dba09f1e63c3d8af7ea1..742b812282360160b3b77e7b598d1a49c2422a8f 100644
--- a/include/sot-dyninv/commands-helper.h
+++ b/include/sot-dyninv/commands-helper.h
@@ -19,113 +19,15 @@
 
 /* --- COMMON INCLUDE -------------------------------------------------- */
 #include <dynamic-graph/command.h>
-#include <dynamic-graph/command-setter.h>
-#include <dynamic-graph/command-getter.h>
+#include <dynamic-graph/command-direct-setter.h>
+#include <dynamic-graph/command-direct-getter.h>
 
 
-/* --- GETTER --------------------------------------------------------- */
-namespace dynamicgraph {
-  namespace command {
-
-
-
-    template <class E, typename T>
-      class DirectGetter
-      : public Command
-    {
-    public:
-      /// Pointer to method that sets paramter of type T
-      typedef T (E::*GetterMethod) () const;
-
-      /// Constructor
-    DirectGetter(E& entity,T* ptr,
-		 const std::string& docString)
-      : Command(entity, std::vector<Value::Type>(), docString),
-	T_ptr(ptr) {}
-
-    protected:
-      virtual Value doExecute() { return Value(*T_ptr); }
-    private:
-      T* T_ptr;
-    };
-
-    template <class E, typename T>
-      DirectGetter<E,T>*
-      makeDirectGetter( E& entity,T* ptr,
-			const std::string& docString)
-      { return  new DirectGetter<E,T>(entity,ptr,docString); }
-
-    std::string docDirectGetter( const std::string& name,
-				 const std::string& type )
-      {
-	return std::string("\nGet the ")+name+".\n\nNo input.\nReturn an "+type+".\n\n";
-      }
-
-  } // namespace command
-} // namespace dynamicgraph
-
-
-/* --- SETTER --------------------------------------------------------- */
-namespace dynamicgraph {
-  namespace command {
-
-
-    template< typename T >
-      struct ValueHelper
-      {
-	static const Value::Type TypeID;
-      };
-
-    template<>
-      const Value::Type ValueHelper<int>::TypeID = Value::INT;
-
-
-    template <class E, typename T, Value::Type TYPEID>
-      class DirectSetter
-      : public Command
-    {
-    public:
-    DirectSetter(E& entity,T* ptr,const std::string& docString)
-      :Command(entity, boost::assign::list_of(TYPEID), docString)
-	,T_ptr(ptr)
-      {}
-
-    protected:
-      virtual Value doExecute()
-      {
-	const std::vector<Value>& values = getParameterValues();
-	T val = values[0].value();
-	(*T_ptr) = val;
-	return Value(); // void
-      }
-    private:
-      T* T_ptr;
-    };
-
-
-
-    template <Value::Type TYPEID,class E, typename T>
-      DirectSetter<E,T,TYPEID>*
-      makeDirectSetter( E& entity,T* ptr,
-			const std::string& docString)
-      { return  new DirectSetter<E,T,TYPEID>(entity,ptr,docString); }
-
-    std::string docDirectSetter( const std::string& name,
-				 const std::string& type )
-      {
-	return std::string("\nSet the ")+name+".\n\nInput:\n - a "
-	  +type+".\nVoid return.\n\n";
-      }
-
-  } // namespace command
-} // namespace dynamicgraph
-
 
 
 /* --- HELPER --------------------------------------------------------------- */
 namespace sot {
   namespace dyninv {
-    using ::dynamicgraph::command::Value;
     using ::dynamicgraph::command::makeDirectGetter;
     using ::dynamicgraph::command::docDirectGetter;
     using ::dynamicgraph::command::makeDirectSetter;
diff --git a/src/controller-pd.cpp b/src/controller-pd.cpp
index d95590b34b8825809580099f6a757be3b32621c0..5dbd0722e35a88333f7088e8d5414096f54f46c2 100644
--- a/src/controller-pd.cpp
+++ b/src/controller-pd.cpp
@@ -60,7 +60,7 @@ namespace sot
 				  docDirectGetter("dimension","int")));
 
       addCommand("setSize",
-		 makeDirectSetter<Value::INT>(*this, &_dimension,
+		 makeDirectSetter(*this, &_dimension,
 				  docDirectSetter("dimension","int")));
     }