diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
index 05cdacc125454884f24d83f0459d5aca9be9f81c..2121db12a27af07ca4c4bb8879a9aa3e4a070efd 100644
--- a/include/CMakeLists.txt
+++ b/include/CMakeLists.txt
@@ -67,7 +67,7 @@ task-abstract.h
 task-unilateral.h
 task-pd.h
 task-conti.h
-task-multi-bound.h
+multi-bound.h
 constraint.h
 gain-adaptive.h
 task.h
diff --git a/include/sot-core/derivator.h b/include/sot-core/derivator.h
index cde2caf196a24bc3dfd911d9f753754a2fc7c87d..81107f0c1cc720c8f114f35ac3a2f066343b0980 100644
--- a/include/sot-core/derivator.h
+++ b/include/sot-core/derivator.h
@@ -32,15 +32,15 @@ namespace ml = maal::boost;
 
 /* SOT */
 #include <sot-core/flags.h>
-#include <dynamic-graph/entity.h>
 #include <sot-core/pool.h>
+#include <dynamic-graph/entity.h>
 #include <dynamic-graph/all-signals.h>
 #include <sot-core/vector-quaternion.h>
 
 /* STD */
 #include <string>
 
-
+namespace sot {
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
@@ -108,7 +108,7 @@ class sotDerivator
 
 };
 
-
+} // using namespace sot
 
 
 
diff --git a/include/sot-core/exception-abstract.h b/include/sot-core/exception-abstract.h
index c84791faa8791c72bf64359b5bae35ce96dae528..459a90bd0da1ffb7025b1eb5f366863041916be7 100644
--- a/include/sot-core/exception-abstract.h
+++ b/include/sot-core/exception-abstract.h
@@ -31,6 +31,7 @@
 #include <string>                  /* Classe string.     */
 #include <sot-core/sot-core-api.h>
 
+
 // Uncomment this macros to have lines parameter on the throw display
 // #define SOT_EXCEPTION_PASSING_PARAM 
 
@@ -38,6 +39,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /* \class sotExceptionAbstract
  */
@@ -93,7 +95,7 @@ public:
   
   /** Print the error structure. */
   SOT_CORE_EXPORT friend std::ostream & operator << (std::ostream & os,
-				     const sotExceptionAbstract & err);
+				     const sot::sotExceptionAbstract & err);
 
 #ifdef SOT_EXCEPTION_PASSING_PARAM 
  public:
@@ -137,6 +139,7 @@ public:
 #  define SOT_THROW throw
 #endif //#ifdef SOT_EXCEPTION_PASSING_PARAM 
 
+} // namespace sot
 
 #endif /* #ifndef __SOT_ABSTRACT_EXCEPTION_H */
 
diff --git a/include/sot-core/exception-dynamic.h b/include/sot-core/exception-dynamic.h
index 8f73310835390051ff51dbff379b785277290b1c..5f41b26e923e4239a26e4cfd6b9c2ed243f5c9a2 100644
--- a/include/sot-core/exception-dynamic.h
+++ b/include/sot-core/exception-dynamic.h
@@ -32,6 +32,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /* \class sotExceptionDynamic
  */
@@ -66,7 +67,7 @@ public:
 };
 
 
-
+} // namespace sot
 
 
 #endif /* #ifndef __SOT_DYNAMIC_EXCEPTION_H */
diff --git a/include/sot-core/exception-factory.h b/include/sot-core/exception-factory.h
index feedd21257000217b11c60fad72b8d940e519079..3fb2c35cf8a22591baadd6160d802717f818d7cc 100644
--- a/include/sot-core/exception-factory.h
+++ b/include/sot-core/exception-factory.h
@@ -32,6 +32,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /* \class sotExceptionFactory
  */
@@ -67,7 +68,7 @@ public:
 };
 
 
-
+} // namespace sot
 
 
 #endif /* #ifndef __SOT_EXCEPTION_FACTORY_H */
diff --git a/include/sot-core/exception-feature.h b/include/sot-core/exception-feature.h
index 71e4c2c890f84b098a3484a52eff2df1bec02bb0..c26efc4ae552b9124736b39de81cc8f654382c24 100644
--- a/include/sot-core/exception-feature.h
+++ b/include/sot-core/exception-feature.h
@@ -32,6 +32,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /* \class sotExceptionFeature
  */
@@ -61,7 +62,7 @@ public:
 };
 
 
-
+} // namespace sot
 
 
 #endif /* #ifndef __SOT_EXCEPTION_FEATURE_H */
diff --git a/include/sot-core/exception-signal.h b/include/sot-core/exception-signal.h
index e091c39940aa492ff1d4c6156f760f1de790fda7..323b324edaba7283e845cb3f75613d35b12cf1f8 100644
--- a/include/sot-core/exception-signal.h
+++ b/include/sot-core/exception-signal.h
@@ -32,6 +32,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /* \class sotExceptionSignal
  */
@@ -67,7 +68,7 @@ public:
 };
 
 
-
+} // namespace sot
 
 
 #endif /* #ifndef __SOT_SIGNAL_EXCEPTION_H */
diff --git a/include/sot-core/exception-task.h b/include/sot-core/exception-task.h
index b5845ab2921295c3abd9de04dd002e3d043003da..079bfd828aea2d870a52c87852d368f77c7d3598 100644
--- a/include/sot-core/exception-task.h
+++ b/include/sot-core/exception-task.h
@@ -32,6 +32,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /* \class sotExceptionTask
  */
@@ -62,7 +63,7 @@ public:
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/exception-tools.h b/include/sot-core/exception-tools.h
index 9e1236d618dfb99a1b1f2ff6b337b58272635fbc..3ffe2d58da5d8ad24a2ac39c9b6c65674e71403b 100644
--- a/include/sot-core/exception-tools.h
+++ b/include/sot-core/exception-tools.h
@@ -32,6 +32,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /* \class sotExceptionTools
  */
@@ -62,7 +63,7 @@ public:
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/exception-traces.h b/include/sot-core/exception-traces.h
index 1ab6e84864e17e769668e971af230c12b8e002bc..e2c4f37f95ad77d872231d526b8cf4493c018ed5 100644
--- a/include/sot-core/exception-traces.h
+++ b/include/sot-core/exception-traces.h
@@ -32,6 +32,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /* \class sotExceptionTraces
  */
@@ -61,7 +62,7 @@ public:
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/factory.h b/include/sot-core/factory.h
index e37fad4da588fbccd0844a0c06481857768fe07c..8939c0e4700c193f018a7f7fc5d62724477c1b15 100644
--- a/include/sot-core/factory.h
+++ b/include/sot-core/factory.h
@@ -31,12 +31,15 @@
 #include <string>
 
 /* --- SOT --- */
-class sotFeatureAbstract;
-class sotTaskAbstract;
 #include <sot-core/exception-factory.h>
 #include <sot-core/sot-core-api.h>
 #include <dynamic-graph/factory.h>
 
+namespace sot {
+
+class sotFeatureAbstract;
+class sotTaskAbstract;
+
 /* --------------------------------------------------------------------- */
 /* --- FACTORY ---------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
@@ -149,7 +152,7 @@ class SOT_CORE_EXPORT sotTaskRegisterer
   sotTaskRegisterer reg##_##sotTaskType( className,&sotTaskMaker##_##sotTaskType );   \
   }                                                       \
 
-
+} // namespace sot
 
 #endif /* #ifndef __SOT_FACTORY_HH__ */
 
diff --git a/include/sot-core/feature-1d.h b/include/sot-core/feature-1d.h
index 1ad8d2718cd4d0c8298c653de6eaec72cab2a8f9..a906f5d71a4d6b598eba35fc1898932f1ebd7ed3 100644
--- a/include/sot-core/feature-1d.h
+++ b/include/sot-core/feature-1d.h
@@ -47,6 +47,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
   \class sotFeature1D
@@ -132,7 +133,7 @@ class SOTFEATURE1D_EXPORT sotFeature1D
 
 } ;
 
-
+} // namespace sot
 
 #endif // #ifndef __SOT_FEATURE_1D_HH__
 
diff --git a/include/sot-core/feature-abstract.h b/include/sot-core/feature-abstract.h
index 12b1b337ea3bd3f66240d36eb95bfb42a2f89292..2e09c8f08365b97b9dd75f60dccc0f27eea16598 100644
--- a/include/sot-core/feature-abstract.h
+++ b/include/sot-core/feature-abstract.h
@@ -39,6 +39,7 @@ namespace ml = maal::boost;
 /* STD */
 #include <string>
 using namespace dynamicgraph;
+namespace sot {
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
@@ -182,7 +183,7 @@ class SOT_CORE_EXPORT sotFeatureAbstract
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/feature-generic.h b/include/sot-core/feature-generic.h
index 280e1d6c771a1511dc9f6411af907165c4a39cdd..2740715526fd8185a46b041c5a17f4401216562c 100644
--- a/include/sot-core/feature-generic.h
+++ b/include/sot-core/feature-generic.h
@@ -47,6 +47,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
   \class sotFeatureGeneric
@@ -148,6 +149,7 @@ class SOTFEATUREGENERIC_EXPORT sotFeatureGeneric
 
 } ;
 
+} // namespace sot
 
 
 #endif // #ifndef __SOT_FEATURE_GENERIC_HH__
diff --git a/include/sot-core/feature-joint-limits.h b/include/sot-core/feature-joint-limits.h
index bf07615ebd36991ed608a6b5c9e5f65ee6553fc2..6b81bbe8e5a6e3bdeaf969435bd2257230cdfaa0 100644
--- a/include/sot-core/feature-joint-limits.h
+++ b/include/sot-core/feature-joint-limits.h
@@ -47,6 +47,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
   \class sotFeatureJointLimits
@@ -105,6 +106,8 @@ class SOTFEATUREJOINTLIMITS_EXPORT sotFeatureJointLimits
 
 } ;
 
+} // namespace sot
+
 #endif // #ifndef __SOT_FEATURE_JOINTLIMITS_HH__
 
 /*
diff --git a/include/sot-core/feature-line-distance.h b/include/sot-core/feature-line-distance.h
index 01ee9ddc951e2a58c19a4a4f775bd5259bd6ed27..f19fe1ef7606b7e83ab8a3af11db76a48898fd40 100644
--- a/include/sot-core/feature-line-distance.h
+++ b/include/sot-core/feature-line-distance.h
@@ -48,6 +48,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
   \class sotFeatureLineDistance
@@ -98,6 +99,7 @@ class SOTFEATURELINEDISTANCE_EXPORT sotFeatureLineDistance
 } ;
 
 
+} // namespace sot
 
 #endif // #ifndef __SOT_FEATURE_LINEDISTANCE_HH__
 
diff --git a/include/sot-core/feature-point6d-relative.h b/include/sot-core/feature-point6d-relative.h
index 3243d3d918bf0558d365bc205e03ab93d189f873..3bc3107126d769989337c0994b574218cdbdeb14 100644
--- a/include/sot-core/feature-point6d-relative.h
+++ b/include/sot-core/feature-point6d-relative.h
@@ -49,6 +49,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
   \class sotFeaturePoint6dRelative
@@ -105,7 +106,7 @@ class SOTFEATUREPOINT6DRELATIVE_EXPORT sotFeaturePoint6dRelative
 
 } ;
 
-
+} // namespace sot
 
 #endif // #ifndef __SOT_FEATURE_POINT6DRELATIVE_HH__
 
diff --git a/include/sot-core/feature-point6d.h b/include/sot-core/feature-point6d.h
index 2b345b5cb496f658019d89680bcefedd250ec238..c9b460c42a0e0f63def616e609824867d33b24a1 100644
--- a/include/sot-core/feature-point6d.h
+++ b/include/sot-core/feature-point6d.h
@@ -48,6 +48,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
   \class sotFeaturePoint6d
@@ -111,7 +112,7 @@ class SOTFEATUREPOINT6D_EXPORT sotFeaturePoint6d
 
 } ;
 
-
+} // namespace sot
 
 #endif // #ifndef __SOT_FEATURE_POINT6D_HH__
 
diff --git a/include/sot-core/feature-task.h b/include/sot-core/feature-task.h
index 1ecbed5b307e165993ea70cedd498f1b50ee137b..d8f9aa8a3a020ba500ec29dd8f8dcb8325dd1f6d 100644
--- a/include/sot-core/feature-task.h
+++ b/include/sot-core/feature-task.h
@@ -48,6 +48,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 class SOTFEATURETASK_EXPORT sotFeatureTask 
 : public sotFeatureGeneric
@@ -92,7 +93,7 @@ class SOTFEATURETASK_EXPORT sotFeatureTask
 
 } ;
 
-
+} // namespace sot
 
 #endif // #ifndef __SOT_FEATURE_TASK_HH__
 
diff --git a/include/sot-core/feature-vector3.h b/include/sot-core/feature-vector3.h
index 80379550e1e3b405d835e7742851ea2167ab05a1..27b986156bd0f2cb1018c02a1dbff1014bb14abd 100644
--- a/include/sot-core/feature-vector3.h
+++ b/include/sot-core/feature-vector3.h
@@ -48,6 +48,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
   \class sotFeatureVector3
@@ -95,6 +96,7 @@ class SOTFEATUREVECTOR3_EXPORT sotFeatureVector3
 
 } ;
 
+} // namespace sot
 
 
 #endif // #ifndef __SOT_FEATURE_VECTOR3_HH__
diff --git a/include/sot-core/feature-visual-point.h b/include/sot-core/feature-visual-point.h
index 614fffb1b55388fa6fb9027e5ebde627a57ce411..a6272ec59b44f6e88d9a46c5d155798dd616d141 100644
--- a/include/sot-core/feature-visual-point.h
+++ b/include/sot-core/feature-visual-point.h
@@ -47,6 +47,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
   \class sotFeatureVisualPoint
@@ -99,7 +100,7 @@ class SOTFEATUREVISUALPOINT_EXPORT sotFeatureVisualPoint
 
 } ;
 
-
+} // namespace sot
 
 #endif // #ifndef __SOT_FEATURE_VISUALPOINT_HH__
 
diff --git a/include/sot-core/fir-filter.h b/include/sot-core/fir-filter.h
index 144abde7c5f3cd042e1145ee1a771a50c22f4170..e7a641f6375b50066a5d864a18dfa80fea706325 100644
--- a/include/sot-core/fir-filter.h
+++ b/include/sot-core/fir-filter.h
@@ -33,7 +33,6 @@ namespace ml = maal::boost;
 
 #include <dynamic-graph/entity.h>
 #include <dynamic-graph/all-signals.h>
-#include <dynamic-graph/all-signals.h>
 
 namespace detail
 {
diff --git a/include/sot-core/flags.h b/include/sot-core/flags.h
index ee3e5ec059ed321e05265d84c56ac75f3d8b92d3..d044e0cde2a533a5c740a310b9088ffd4f7894f5 100644
--- a/include/sot-core/flags.h
+++ b/include/sot-core/flags.h
@@ -37,6 +37,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 class SOT_CORE_EXPORT sotFlags
 {
@@ -99,5 +100,6 @@ SOT_CORE_EXPORT extern const sotFlags FLAG_LINE_6;
 SOT_CORE_EXPORT extern const sotFlags FLAG_LINE_7;
 SOT_CORE_EXPORT extern const sotFlags FLAG_LINE_8;
 
+} // namespace sot
 
 #endif /* #ifndef __SOT_FLAGS_H */
diff --git a/include/sot-core/gain-adaptive.h b/include/sot-core/gain-adaptive.h
index bd30df204721897536b9047998af70e7b12e4e8e..8965a7639543ab89ab2e087b56445f34fc34ea26 100644
--- a/include/sot-core/gain-adaptive.h
+++ b/include/sot-core/gain-adaptive.h
@@ -52,6 +52,8 @@ namespace ml = maal::boost;
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
 class SOTGAINADAPTATIVE_EXPORT sotGainAdaptative
 : public Entity
 {
@@ -106,7 +108,7 @@ class SOTGAINADAPTATIVE_EXPORT sotGainAdaptative
 			    std::ostream& os );
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/gain-hyperbolic.h b/include/sot-core/gain-hyperbolic.h
index 2339350e566e33764a73a7399fb019896cb5b364..3de809e0a4967ae44ae36df5a826c0e1b6fa3333 100644
--- a/include/sot-core/gain-hyperbolic.h
+++ b/include/sot-core/gain-hyperbolic.h
@@ -53,6 +53,8 @@ namespace ml = maal::boost;
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
 class SOTGAINHYPERBOLIC_EXPORT sotGainHyperbolic
 : public Entity
 {
@@ -110,7 +112,7 @@ class SOTGAINHYPERBOLIC_EXPORT sotGainHyperbolic
 			    std::ostream& os );
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/integrator-abstract.h b/include/sot-core/integrator-abstract.h
index 48cb2313b8b77d8f6fe10369bb70452706bdc37f..4b8b3b2a4453ad59fcf9396f0b47ccddb5f3b4eb 100644
--- a/include/sot-core/integrator-abstract.h
+++ b/include/sot-core/integrator-abstract.h
@@ -45,6 +45,8 @@ namespace ml = maal::boost;
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
 /*! \brief integrates an ODE. If Y is the output and X the input, the
  * following equation is integrated:
  * a_p * d(p)Y / dt^p + .... + a_0 Y = b_m * d(m)X / dt^m + ... . b_0 X
@@ -138,4 +140,10 @@ class sotIntegratorAbstract
   std::vector<coefT> denominator;
 };
 
+
+} // namespace sot
+
+
+
+
 #endif
diff --git a/include/sot-core/integrator-euler.h b/include/sot-core/integrator-euler.h
index efbeda93b7eda54a498ed3a17e13155bb15ddae2..c786f02ad8ad60da29bd94536063e05fd02dd8d2 100644
--- a/include/sot-core/integrator-euler.h
+++ b/include/sot-core/integrator-euler.h
@@ -33,6 +33,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*!
  * \class sotIntegratorEuler
@@ -128,4 +129,9 @@ public:
   }
 };
 
+} // namespace sot
+
+
+
+
 #endif
diff --git a/include/sot-core/matrix-constant.h b/include/sot-core/matrix-constant.h
index ef0c264f30483a9d8f9fad796344a15a86673f65..6c096cbdb527e4816f45b5d0f751d5377ea2308f 100644
--- a/include/sot-core/matrix-constant.h
+++ b/include/sot-core/matrix-constant.h
@@ -29,6 +29,9 @@ namespace ml = maal::boost;
 /* --------------------------------------------------------------------- */
 /* --- MATRIX ---------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+
+namespace sot {
+
 class sotMatrixConstant
 : public Entity
 {
@@ -59,7 +62,7 @@ public:
 
 };
     
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/matrix-force.h b/include/sot-core/matrix-force.h
index ca89c9e9811a5a0a84b0fce39f26b032f250bb04..ea34b5fae22d2271d56d6e06eb2ebdfffb25313e 100644
--- a/include/sot-core/matrix-force.h
+++ b/include/sot-core/matrix-force.h
@@ -23,16 +23,21 @@
 
 /* --- Matrix --- */
 #include <MatrixAbstractLayer/boost.h>
+#include <sot-core/sot-core-api.h>
 namespace ml = maal::boost;
 
-class sotMatrixHomogeneous;
-class sotMatrixTwist;
-
-#include <sot-core/sot-core-api.h>
 
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+
+namespace sot {
+
+
+class sotMatrixHomogeneous;
+class sotMatrixTwist;
+
+
 class SOT_CORE_EXPORT sotMatrixForce
 : public ml::Matrix
 {
@@ -57,6 +62,8 @@ class SOT_CORE_EXPORT sotMatrixForce
   sotMatrixTwist transpose( void ) const;
 
  };
+
+} // namespace sot
     
 
 #endif /* #ifndef __SOT_MATRIX_FORCE_H__ */
diff --git a/include/sot-core/matrix-homogeneous.h b/include/sot-core/matrix-homogeneous.h
index e46c062e1731b4ef7f2834c1e676d0ed501d685e..cdaaf15b3cffcbbfee98113f7092e0113c6d2dc9 100644
--- a/include/sot-core/matrix-homogeneous.h
+++ b/include/sot-core/matrix-homogeneous.h
@@ -23,15 +23,16 @@
 
 /* --- Matrix --- */
 #include <MatrixAbstractLayer/boost.h>
-namespace ml = maal::boost;
-
-class sotMatrixRotation;
-
 #include <sot-core/sot-core-api.h>
+namespace ml = maal::boost;
 
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+namespace sot {
+
+class sotMatrixRotation;
+
 class SOT_CORE_EXPORT sotMatrixHomogeneous
 : public ml::Matrix
 {
@@ -64,7 +65,7 @@ class SOT_CORE_EXPORT sotMatrixHomogeneous
 
  };
     
-
+} // namespace sot
 
 
 #endif /* #ifndef __SOT_MATRIX_HOMOGENEOUS_H__ */
diff --git a/include/sot-core/matrix-rotation.h b/include/sot-core/matrix-rotation.h
index f558d40c2c86e6d8e6c813c5f1bc27d8c6ff6913..2fc4cfad25b24c4bc67b28791a27d9a0c93808ec 100644
--- a/include/sot-core/matrix-rotation.h
+++ b/include/sot-core/matrix-rotation.h
@@ -22,13 +22,14 @@
 
 
 /* --- Matrix --- */
+
+#include <sot-core/sot-core-api.h>
 #include <MatrixAbstractLayer/boost.h>
 namespace ml = maal::boost;
 
+namespace sot {
 class sotVectorUTheta;
 
-#include <sot-core/sot-core-api.h>
-
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
@@ -45,7 +46,7 @@ class SOT_CORE_EXPORT sotMatrixRotation
   sotMatrixRotation& operator= ( sotVectorUTheta&th ) { fromVector(th); return *this; } 
 };
     
-
+} // namespace sot
 #endif /* #ifndef __SOT_MATRIX_ROTATION_H__ */
 
 
diff --git a/include/sot-core/matrix-twist.h b/include/sot-core/matrix-twist.h
index 9e6a1f530c651ff02b900e8abf5026e2fca6795c..54174a58113faab15d818b0316011e70eb5c1555 100644
--- a/include/sot-core/matrix-twist.h
+++ b/include/sot-core/matrix-twist.h
@@ -23,16 +23,19 @@
 
 /* --- Matrix --- */
 #include <MatrixAbstractLayer/boost.h>
-namespace ml = maal::boost;
-
-class sotMatrixHomogeneous;
-class sotMatrixForce;
-
 #include <sot-core/sot-core-api.h>
 
+namespace ml = maal::boost;
+
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+namespace sot {
+
+
+class sotMatrixHomogeneous;
+class sotMatrixForce;
+
 class SOT_CORE_EXPORT sotMatrixTwist
 : public ml::Matrix
 {
@@ -56,7 +59,8 @@ class SOT_CORE_EXPORT sotMatrixTwist
   sotMatrixForce& transpose( sotMatrixForce& Vt ) const;
   sotMatrixForce transpose( void ) const;
  };
-    
+
+} // namespace sot
 
 #endif /* #ifndef __SOT_MATRIX_TWIST_H__ */
 
diff --git a/include/sot-core/memory-task-sot.h b/include/sot-core/memory-task-sot.h
index e505ef60373b2ed820d6b2658809a8dfdfb8880b..9c3c859fa9c3af108f0092f592c183791310c9ff 100644
--- a/include/sot-core/memory-task-sot.h
+++ b/include/sot-core/memory-task-sot.h
@@ -44,6 +44,8 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
 class SOTSOT_CORE_EXPORT sotMemoryTaskSOT
 : public sotTaskAbstract::sotMemoryTaskAbstract, public Entity
 {
@@ -87,4 +89,6 @@ class SOTSOT_CORE_EXPORT sotMemoryTaskSOT
 			    std::ostream& os );
 };
 
+} //namespace sot
+
 #endif // __SOT_MEMORY_TASK_HH
diff --git a/include/sot-core/task-multi-bound.h b/include/sot-core/multi-bound.h
similarity index 98%
rename from include/sot-core/task-multi-bound.h
rename to include/sot-core/multi-bound.h
index 42809510a2765fc94e3c741bd67a3b94a0fadb13..815e4c208d1cd294c8328ad2c50f6670f745491d 100644
--- a/include/sot-core/task-multi-bound.h
+++ b/include/sot-core/multi-bound.h
@@ -39,6 +39,8 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
 class SOT_CORE_EXPORT sotMultiBound
 {
  public:
@@ -78,6 +80,7 @@ typedef std::vector< sotMultiBound > sotVectorMultiBound;
 SOT_CORE_EXPORT std::ostream& operator<< (std::ostream& os, const sotVectorMultiBound& v );
 SOT_CORE_EXPORT std::istream& operator>> (std::istream& os, sotVectorMultiBound& v );
 
+} // namespace sot
 
 
 #endif // #ifndef __SOT_sotMultiBound_H__
diff --git a/include/sot-core/op-point-modifier.h b/include/sot-core/op-point-modifier.h
index 3f17958d8fa277a9fc7dee5791a6fec8d5ddee89..8486bf8015877b89fc7b9983d481b1ed10c91941 100644
--- a/include/sot-core/op-point-modifier.h
+++ b/include/sot-core/op-point-modifier.h
@@ -47,6 +47,9 @@ namespace ml = maal::boost;
 /* --------------------------------------------------------------------- */
 /* --- VECTOR ---------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+
+namespace sot {
+
 class SOTOPPOINTMODIFIOR_EXPORT sotOpPointModifior
 : public Entity
 {
@@ -79,5 +82,6 @@ public:
 
 };
 
+} // namespace sot
 
 #endif //  __SOT_OP_POINT_MODIFIOR_H__ 
diff --git a/include/sot-core/pool.h b/include/sot-core/pool.h
index 7f21be7a4161fb10a2f161a36a4724c84a3102cc..1c8cd35d587fa28a3b353c2a1c13f26ebe294e07 100644
--- a/include/sot-core/pool.h
+++ b/include/sot-core/pool.h
@@ -38,13 +38,17 @@
 #include <sot-core/sot-core-api.h>
 #include <dynamic-graph/pool.h>
 
-class sotFeatureAbstract;
-class sotTaskAbstract;
-
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
+// Preliminary declarations
+class sotFeatureAbstract;
+class sotTaskAbstract;
+
+
 /*! @ingroup factory
   \brief This class keep tracks of all the objects in the stack of Tasks.
 
@@ -137,6 +141,8 @@ class SOT_CORE_EXPORT sotPoolStorage
 
 SOT_CORE_EXPORT extern sotPoolStorage sotPool;
 
+} // namespace sot
+
 #endif /* #ifndef __SOT_POOL_HH__ */
 
 
diff --git a/include/sot-core/signal-cast.h b/include/sot-core/signal-cast.h
index 2cf622c2c2f09fc7bb9a91290d9c2025db85792c..b4d5f823cf872ad2bb042610f943627119332163 100644
--- a/include/sot-core/signal-cast.h
+++ b/include/sot-core/signal-cast.h
@@ -31,7 +31,7 @@
 #include <sot-core/vector-quaternion.h>
 #include <sot-core/vector-roll-pitch-yaw.h>
 #include <sot-core/matrix-force.h>
-#include <sot-core/task-multi-bound.h>
+#include <sot-core/multi-bound.h>
 #include <sot-core/sot-core-api.h>
 #ifdef WIN32
 #include <sot-core/sotUtilsWindows.h>
@@ -41,6 +41,10 @@
 /* -------------------------------------------------------------------------- */
 /* --- CLASS ---------------------------------------------------------------- */
 /* -------------------------------------------------------------------------- */
+
+namespace sot {
+
+
 class sotFeatureAbstract;
 
 
@@ -192,7 +196,7 @@ SOT_SIGNAL_CAST_DEFINITION_MATRIX(sotMatrixHomogeneous);
 SOT_SIGNAL_CAST_DEFINITION_MATRIX(sotMatrixTwist);
 SOT_SIGNAL_CAST_DEFINITION_MATRIX(sotMatrixForce);
 
-
+} // namespace sot
 
 
 #endif // #ifndef __SOT_SIGNAL_CAST_HH__
diff --git a/include/sot-core/solver-hierarchical-inequalities.h b/include/sot-core/solver-hierarchical-inequalities.h
index 8a46fb9a7315beb3acd88d50e808a9b33013e401..8a79b239f535c91ece8fb4fe96fa7ea4a4c49bff 100644
--- a/include/sot-core/solver-hierarchical-inequalities.h
+++ b/include/sot-core/solver-hierarchical-inequalities.h
@@ -53,6 +53,8 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
 class SOTSOTH_EXPORT ConstraintMem
 {
 public:
@@ -293,5 +295,9 @@ public:
 };
 
 
+} // namespace sot
+
+
+
 #endif // #ifdef __SOT_sotSolverHierarchicalInequalities_HH__
 
diff --git a/include/sot-core/sot-h.h b/include/sot-core/sot-h.h
index db6688747ba8c942c4d96789a1a291d0fa09345d..d0ebe4e9ff48de963155675ea34f92fd9c75b5e3 100644
--- a/include/sot-core/sot-h.h
+++ b/include/sot-core/sot-h.h
@@ -50,6 +50,8 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
 class SOTSOTH_EXPORT sotSOTH
 :public sotSOT
 {
@@ -126,7 +128,7 @@ class SOTSOTH_EXPORT sotSOTH
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/sot-qr.h b/include/sot-core/sot-qr.h
index 7b4b371a99727662d6cb173a7f0ab6f4ac661eaa..991b66929883f18c173df55ad5402fbb2f92427d 100644
--- a/include/sot-core/sot-qr.h
+++ b/include/sot-core/sot-qr.h
@@ -66,6 +66,9 @@ namespace ml = maal::boost;
 
 
 */
+
+namespace sot {
+
 class SOTSOTQR_EXPORT sotSOTQr
 :public Entity
 {
@@ -266,7 +269,7 @@ class SOTSOTQR_EXPORT sotSOTQr
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/sot.h b/include/sot-core/sot.h
index 4f0e88981bf3c58386430cea2f0fab4161b02129..63fb02384ba291b4456ceac12afe2963e29408db 100644
--- a/include/sot-core/sot.h
+++ b/include/sot-core/sot.h
@@ -59,6 +59,7 @@ namespace ml = maal::boost;
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 /*! @ingroup stackoftasks
   \brief This class implements the Stack of Task.
@@ -283,6 +284,7 @@ class SOTSOT_CORE_EXPORT sotSOT
 
 };
 
+} // namespace sot
 
 
 
diff --git a/include/sot-core/task-abstract.h b/include/sot-core/task-abstract.h
index 68f7bc548bf9b1b74eb1f0877ffbfbc763613fb9..ab639ed9f8bff19e0ac9a99dc8501c8d935844be 100644
--- a/include/sot-core/task-abstract.h
+++ b/include/sot-core/task-abstract.h
@@ -38,12 +38,15 @@ namespace ml = maal::boost;
 #include <dynamic-graph/entity.h>
 #include <dynamic-graph/all-signals.h>
 #include <dynamic-graph/all-signals.h>
-#include <sot-core/task-multi-bound.h>
+#include <sot-core/multi-bound.h>
 #include <sot-core/sot-core-api.h>
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+
+namespace sot {
+
 class SOT_CORE_EXPORT sotTaskAbstract
 : public Entity
 {
@@ -89,6 +92,8 @@ class SOT_CORE_EXPORT sotTaskAbstract
  public:
 };
 
+} // namespace sot
+
 
 
 
diff --git a/include/sot-core/task-conti.h b/include/sot-core/task-conti.h
index 010d2d1a6ccdd1f1d0dd6cae78ae9a82572f7219..992f89a62162449da58e847ae0a06b9b985e03a8 100644
--- a/include/sot-core/task-conti.h
+++ b/include/sot-core/task-conti.h
@@ -58,7 +58,7 @@ namespace ml = maal::boost;
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
-
+namespace sot {
 
 class SOTTASKCONTI_EXPORT sotTaskConti
 : public sotTask
@@ -103,7 +103,7 @@ class SOTTASKCONTI_EXPORT sotTaskConti
 			    std::ostream& os );
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/task-pd.h b/include/sot-core/task-pd.h
index 6d28b55bc22b4b5411e5f497ba26e018d52c57fd..fbabd2452abd1b3e0c22467d11f730012cbf56e0 100644
--- a/include/sot-core/task-pd.h
+++ b/include/sot-core/task-pd.h
@@ -48,7 +48,7 @@
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
-
+namespace sot {
 
 class SOTTASKPD_EXPORT sotTaskPD
 : public sotTask
@@ -82,7 +82,7 @@ class SOTTASKPD_EXPORT sotTaskPD
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/task-unilateral.h b/include/sot-core/task-unilateral.h
index dddb35b40824e7b4d99b0f8d78383f7722a4ad01..2ddd8865041df2f475cfb87d40dfd2a8626eb41b 100644
--- a/include/sot-core/task-unilateral.h
+++ b/include/sot-core/task-unilateral.h
@@ -60,6 +60,7 @@ namespace ml = maal::boost;
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
 
 class SOTTASKUNILATERAL_EXPORT sotTaskUnilateral
 : public sotTask
@@ -90,7 +91,7 @@ class SOTTASKUNILATERAL_EXPORT sotTaskUnilateral
   void display( std::ostream& os ) const;
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/task.h b/include/sot-core/task.h
index 8d10d9e83b75ec03fb540c133f8d6dbfb1c77d77..6e9816376005e2e6c008510e211a6ea891532cb0 100644
--- a/include/sot-core/task.h
+++ b/include/sot-core/task.h
@@ -82,6 +82,7 @@ namespace ml = maal::boost;
 
  */
 
+namespace sot {
 
 class SOTTASK_EXPORT sotTask
 : public sotTaskAbstract
@@ -134,7 +135,7 @@ class SOTTASK_EXPORT sotTask
   virtual std::ostream& writeGraph( std::ostream& os ) const;
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/unary-op.h b/include/sot-core/unary-op.h
index 24b6660abc2d0629b0ec3a41dec3a88231d5dbd4..e9888d72e96b23e07b0c5363372f8a0b79a2a53d 100644
--- a/include/sot-core/unary-op.h
+++ b/include/sot-core/unary-op.h
@@ -46,6 +46,8 @@ namespace ml = maal::boost;
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+namespace sot {
+
 template< class Tin,class Tout,typename Operator >
 class sotUnaryOp
 :public Entity
@@ -90,7 +92,7 @@ class sotUnaryOp
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/vector-constant.h b/include/sot-core/vector-constant.h
index b39ec1016eb527a90b7ef78b1920f6befa3a917e..84a4fbcee0efd176a7281d6b7ce9d5c810ec22bd 100644
--- a/include/sot-core/vector-constant.h
+++ b/include/sot-core/vector-constant.h
@@ -28,6 +28,8 @@ namespace ml = maal::boost;
 /* --------------------------------------------------------------------- */
 /* --- VECTOR ---------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+namespace sot{
+
 class sotVectorConstant
 : public Entity
 {
@@ -57,7 +59,7 @@ public:
 
 };
     
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/vector-quaternion.h b/include/sot-core/vector-quaternion.h
index 8d4771acd861896b06b15c374960aaf547c2534b..28a75301cfa4eb1cc4efe3bfdc6bb09d80722953 100644
--- a/include/sot-core/vector-quaternion.h
+++ b/include/sot-core/vector-quaternion.h
@@ -27,6 +27,8 @@
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+namespace sot {
+
 class SOT_CORE_EXPORT sotVectorQuaternion
 : public sotVectorRotation
 {
@@ -45,6 +47,7 @@ class SOT_CORE_EXPORT sotVectorQuaternion
 
 };
     
+}
 
 
 #endif /* #ifndef __SOT_VECTOR_QUATERNION_H__ */
diff --git a/include/sot-core/vector-roll-pitch-yaw.h b/include/sot-core/vector-roll-pitch-yaw.h
index 5fecfa041940e6b851f8a6c332b3c4cf30e58b4c..7e9eda4dbeede4f382d6f3c67ea390ae1c4baf84 100644
--- a/include/sot-core/vector-roll-pitch-yaw.h
+++ b/include/sot-core/vector-roll-pitch-yaw.h
@@ -27,6 +27,8 @@
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+namespace sot {
+
 class SOT_CORE_EXPORT sotVectorRollPitchYaw
 : public sotVectorRotation
 {
@@ -40,6 +42,6 @@ class SOT_CORE_EXPORT sotVectorRollPitchYaw
 
 };
     
-
+} // namespace sot
 
 #endif /* #ifndef __SOT_VECTOR_ROLLPITCHYAW_H__ */
diff --git a/include/sot-core/vector-rotation.h b/include/sot-core/vector-rotation.h
index 9da8469e2e59f7afaa99e78584cd314da76ae33e..829e5333ed03511d6f33737b266840ac81d99452 100644
--- a/include/sot-core/vector-rotation.h
+++ b/include/sot-core/vector-rotation.h
@@ -31,6 +31,9 @@ namespace ml = maal::boost;
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+
+namespace sot {
+
 class SOT_CORE_EXPORT sotVectorRotation
 : public ml::Vector
 {
@@ -42,7 +45,8 @@ class SOT_CORE_EXPORT sotVectorRotation
   virtual sotVectorRotation& fromMatrix( const sotMatrixRotation& rot ) = 0;
   virtual sotMatrixRotation& toMatrix( sotMatrixRotation& rot ) const = 0;
 };
-    
+
+} // namespace sot
 
 #endif /* #ifndef __SOT_VECTOR_ROTATION_H__ */
 
diff --git a/include/sot-core/vector-to-rotation.h b/include/sot-core/vector-to-rotation.h
index 20a4e9ae30ca02feb7d951d0f3d8b5c45c216f67..29e5da1ba2078da9c92d2e497476337bff024964 100644
--- a/include/sot-core/vector-to-rotation.h
+++ b/include/sot-core/vector-to-rotation.h
@@ -35,6 +35,8 @@ namespace ml = maal::boost;
 /* --------------------------------------------------------------------- */
 /* --- VECTOR ---------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+namespace sot {
+
 class sotVectorToRotation
 : public Entity
 {
@@ -70,7 +72,7 @@ public:
 
 };
     
-
+} // namespace sot
 
 
 
diff --git a/include/sot-core/vector-utheta.h b/include/sot-core/vector-utheta.h
index 983d89c03dab3b9b8f2c397fdf700d1eba110d2d..5f8594688b03ef20c8d7107048f4dde6bb8f6bd2 100644
--- a/include/sot-core/vector-utheta.h
+++ b/include/sot-core/vector-utheta.h
@@ -27,6 +27,10 @@
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
+
+namespace sot {
+
+
 class SOT_CORE_EXPORT sotVectorUTheta
 : public sotVectorRotation
 {
@@ -39,6 +43,8 @@ class SOT_CORE_EXPORT sotVectorUTheta
   virtual sotMatrixRotation& toMatrix( sotMatrixRotation& rot ) const;
 
 };
+
+} // namespace sot
     
 
 
diff --git a/include/sot-core/weighted-sot.h b/include/sot-core/weighted-sot.h
index e497466968a0d9ad5d681f8c4d39196a0acf1dc4..f1e09fd13674a607f28fa42d84219f7066b058f9 100644
--- a/include/sot-core/weighted-sot.h
+++ b/include/sot-core/weighted-sot.h
@@ -63,6 +63,9 @@ namespace ml = maal::boost;
 
 
 */
+
+namespace sot {
+
 class SOTWEIGHTEDSOT_CORE_EXPORT sotWeightedSOT
 :public sotSOT
 {
@@ -104,7 +107,7 @@ class SOTWEIGHTEDSOT_CORE_EXPORT sotWeightedSOT
 
 };
 
-
+} // namespace sot
 
 
 
diff --git a/src/debug/debug.cpp b/src/debug/debug.cpp
index bedea1a733474de28eeee2236179ee04f850766c..4e54feb526ac91dd964843fbf4fe158a4fc1ec0a 100644
--- a/src/debug/debug.cpp
+++ b/src/debug/debug.cpp
@@ -64,9 +64,6 @@ std::ofstream debugfile; //( "/dev/null", std::ios::trunc&std::ios::out );
 
 #endif
 
-DebugTrace sotDEBUGFLOW(debugfile);
-DebugTrace sotERRORFLOW(debugfile);
-
 
 void DebugTrace::openFile( const char * filename )
 {
@@ -86,3 +83,8 @@ void DebugTrace::closeFile( const char * filename )
 //DebugTrace sotDEBUGFLOW(std::cout);
 //DebugTrace sotERRORFLOW(std::cerr);
 
+/// Debug objects instances
+namespace sot {
+DebugTrace sotDEBUGFLOW(debugfile);
+DebugTrace sotERRORFLOW(debugfile);
+}
diff --git a/src/exception/exception-abstract.cpp b/src/exception/exception-abstract.cpp
index 907420859cad0d0297f3707e500263861e688adf..14a19e5382b32f8c12fd255a870e4580402839f4 100644
--- a/src/exception/exception-abstract.cpp
+++ b/src/exception/exception-abstract.cpp
@@ -23,6 +23,7 @@
 #include <sot-core/debug.h>
 
 using namespace std;
+using namespace sot;
 
 /* ------------------------------------------------------------------------- */
 /* --- CONSTRUCTORS -------------------------------------------------------- */
@@ -99,6 +100,8 @@ Param( const int& _line, const char * _function, const char * _file )
 /* --- OP << --------------------------------------------------------------- */
 /* ------------------------------------------------------------------------- */
 
+
+namespace sot {
 ostream &
 operator << (ostream & os,
 	     const sotExceptionAbstract & error)
@@ -114,6 +117,7 @@ operator << (ostream & os,
     return os;
 }
 
+}
 
 
 
diff --git a/src/exception/exception-dynamic.cpp b/src/exception/exception-dynamic.cpp
index 5aa538c39cab1d38fcc0516be422e674eccf964a..bb3d95aab2577c1d53552c21d7f597f9dfd8c961 100644
--- a/src/exception/exception-dynamic.cpp
+++ b/src/exception/exception-dynamic.cpp
@@ -21,6 +21,8 @@
 #include <stdarg.h>
 #include <cstdio>
 
+using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/exception/exception-factory.cpp b/src/exception/exception-factory.cpp
index 1d170e27f6e086683eba7d17ff439f7225327a92..60fff81d3c3a33a3cc82442964ac65e2ae407d05 100644
--- a/src/exception/exception-factory.cpp
+++ b/src/exception/exception-factory.cpp
@@ -23,6 +23,7 @@
 #include <cstdio>
 
 using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/exception/exception-feature.cpp b/src/exception/exception-feature.cpp
index bf45cbb2150ef2e4c9b35ae858ca9e3b72675976..1bd27faf6c7f3d06b1a9ad3c6381fe6b99da75c7 100644
--- a/src/exception/exception-feature.cpp
+++ b/src/exception/exception-feature.cpp
@@ -21,6 +21,7 @@
 #include <stdarg.h>
 #include <cstdio>
 
+using namespace sot;
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
diff --git a/src/exception/exception-signal.cpp b/src/exception/exception-signal.cpp
index 890c95b712d6b62c7c347c4183c3662153f2a58b..ac7aba2b96d500bf1713aa07dc579056eeb355dd 100644
--- a/src/exception/exception-signal.cpp
+++ b/src/exception/exception-signal.cpp
@@ -21,6 +21,8 @@
 #include <stdarg.h>
 #include <cstdio>
 
+using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/exception/exception-task.cpp b/src/exception/exception-task.cpp
index 99c0df6e83549d5c7cdef4975e4a0f085d28e787..5aaac4173b719f517bed3ac98f1b2fc0f0ebc450 100644
--- a/src/exception/exception-task.cpp
+++ b/src/exception/exception-task.cpp
@@ -22,6 +22,8 @@
 #include <cstdio>
 
 
+using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/exception/exception-tools.cpp b/src/exception/exception-tools.cpp
index 2b77b6ddda2c2c98b808eda12df63babf220f45a..b0a53545728a1c5517f1caa612d2dd88a83b5458 100644
--- a/src/exception/exception-tools.cpp
+++ b/src/exception/exception-tools.cpp
@@ -21,6 +21,8 @@
 #include <stdarg.h>
 #include <cstdio>
 
+using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/exception/exception-traces.cpp b/src/exception/exception-traces.cpp
index 38c46fc83ab08f4d0b781c4aed71bbcb5d116a85..125b0a78291a65a63465c9f8ce5fb97d8a0ad9ba 100644
--- a/src/exception/exception-traces.cpp
+++ b/src/exception/exception-traces.cpp
@@ -21,6 +21,8 @@
 #include <stdarg.h>
 #include <cstdio>
 
+using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/factory/factory.cpp b/src/factory/factory.cpp
index beb3be889505ee1fe1c66cf32004530ae3f82087..d6b9f4847b8f291e22885c70e3ec1d84c4abd1fa 100644
--- a/src/factory/factory.cpp
+++ b/src/factory/factory.cpp
@@ -27,6 +27,8 @@
 #include <sot-core/factory.h>
 
 using namespace std;
+using namespace sot;
+
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
@@ -202,6 +204,7 @@ commandLine( const std::string& cmdLine,std::istringstream& cmdArgs,
 
 
 
-
+/// The global sotFactory object
+namespace sot {
 sotFactoryStorage sotFactory;
-
+}
diff --git a/src/factory/pool.cpp b/src/factory/pool.cpp
index bb747f2402d07fdf26dc78b3e684297189354931..b7ed526b0742f06d2221f411571c368de494606d 100644
--- a/src/factory/pool.cpp
+++ b/src/factory/pool.cpp
@@ -28,6 +28,9 @@
 #include <dynamic-graph/entity.h>
 #include <list>
 
+using namespace sot;
+
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
@@ -244,6 +247,7 @@ commandLine( const std::string& objectName,const std::string& functionName,
     }
 }
 
-
+/// The global sotPool object
+namespace sot {
 sotPoolStorage sotPool;
-
+}
diff --git a/src/feature/feature-1d.cpp b/src/feature/feature-1d.cpp
index 3a9ac538198345accaea093eb2a37d4f934b6b63..6c16ddfae681d90009bf7555a129495cbf4846a9 100644
--- a/src/feature/feature-1d.cpp
+++ b/src/feature/feature-1d.cpp
@@ -31,6 +31,8 @@ using namespace std;
 #include <sot-core/factory.h>
 SOT_FACTORY_FEATURE_PLUGIN(sotFeature1D,"Feature1D");
 
+using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/feature/feature-abstract.cpp b/src/feature/feature-abstract.cpp
index 5c0b6203114b1d16f1335b717c7356d3be5be42d..5165bf3e1fd52397b7b8d0321252ac63fc4d767a 100644
--- a/src/feature/feature-abstract.cpp
+++ b/src/feature/feature-abstract.cpp
@@ -20,6 +20,8 @@
 #include <sot-core/feature-abstract.h>
 #include <sot-core/pool.h>
 
+using namespace sot;
+
 const std::string 
 sotFeatureAbstract::CLASS_NAME = "FeatureAbstract";
 
diff --git a/src/feature/feature-generic.cpp b/src/feature/feature-generic.cpp
index cdd9ced3905bb4936661eb23657658de699ecbd1..6c3b537dcc715208f69da26655723d331f7e6926 100644
--- a/src/feature/feature-generic.cpp
+++ b/src/feature/feature-generic.cpp
@@ -31,6 +31,8 @@ using namespace std;
 #include <sot-core/factory.h>
 SOT_FACTORY_FEATURE_PLUGIN(sotFeatureGeneric,"FeatureGeneric");
 
+using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/feature/feature-joint-limits.cpp b/src/feature/feature-joint-limits.cpp
index f13ecb27fd0d012ee9c1b30f90c27432de86b215..2cf50b6cd86e33819b9619a7cc867aeebac2b6ef 100644
--- a/src/feature/feature-joint-limits.cpp
+++ b/src/feature/feature-joint-limits.cpp
@@ -35,6 +35,8 @@ SOT_FACTORY_FEATURE_PLUGIN(sotFeatureJointLimits,"FeatureJointLimits");
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
 
+using namespace sot;
+
 const double sotFeatureJointLimits::THRESHOLD_DEFAULT = .9;
 
 
diff --git a/src/feature/feature-line-distance.cpp b/src/feature/feature-line-distance.cpp
index dd9087f24a8bd929290be91d9867c805f684b842..3b4915221faae220de6f4e669ec4f72959cf120c 100644
--- a/src/feature/feature-line-distance.cpp
+++ b/src/feature/feature-line-distance.cpp
@@ -33,6 +33,8 @@
 
 using namespace std;
 
+using namespace sot;
+
 #include <sot-core/factory.h>
 SOT_FACTORY_FEATURE_PLUGIN(sotFeatureLineDistance,"FeatureLineDistance");
 
diff --git a/src/feature/feature-point6d-relative.cpp b/src/feature/feature-point6d-relative.cpp
index 4612b58deddede3adb00df7fc87e68a86ee6d004..95d7428bf647a9d27fef1badc76f13dd3d87ff1a 100644
--- a/src/feature/feature-point6d-relative.cpp
+++ b/src/feature/feature-point6d-relative.cpp
@@ -33,6 +33,8 @@
 #include <dynamic-graph/pool.h>
 
 using namespace std;
+using namespace sot;
+
 
 #include <sot-core/factory.h>
 SOT_FACTORY_FEATURE_PLUGIN(sotFeaturePoint6dRelative,"FeaturePoint6dRelative");
diff --git a/src/feature/feature-point6d.cpp b/src/feature/feature-point6d.cpp
index 5718527f653ce231a4ec6ed93588ab4fbec8824b..354b1c654048311dcc0c3fd5a792ba3381b5a16b 100644
--- a/src/feature/feature-point6d.cpp
+++ b/src/feature/feature-point6d.cpp
@@ -35,6 +35,8 @@
 
 using namespace std;
 
+using namespace sot;
+
 #include <sot-core/factory.h>
 SOT_FACTORY_FEATURE_PLUGIN(sotFeaturePoint6d,"FeaturePoint6d");
 
diff --git a/src/feature/feature-task.cpp b/src/feature/feature-task.cpp
index 4995f32abe812b16bf1105d4ba7c352ddb3ced35..72d79f9bf31fd550bd89f71f6234d2964f365ddd 100644
--- a/src/feature/feature-task.cpp
+++ b/src/feature/feature-task.cpp
@@ -28,6 +28,8 @@
 #include <sot-core/exception-feature.h>
 #include <dynamic-graph/pool.h>
 using namespace std;
+using namespace sot;
+
 
 #include <sot-core/factory.h>
 SOT_FACTORY_FEATURE_PLUGIN(sotFeatureTask,"FeatureTask");
diff --git a/src/feature/feature-vector3.cpp b/src/feature/feature-vector3.cpp
index 9721af265b215e41b1644d70095670b786c485d1..1e69158649b242c2c9e2094d7fa3d1d242d23d29 100644
--- a/src/feature/feature-vector3.cpp
+++ b/src/feature/feature-vector3.cpp
@@ -32,10 +32,12 @@
 #include <sot-core/matrix-homogeneous.h>
 #include <sot-core/matrix-rotation.h>
 #include <sot-core/vector-utheta.h>
+#include <sot-core/factory.h>
 
+using namespace sot;
 using namespace std;
 
-#include <sot-core/factory.h>
+
 SOT_FACTORY_FEATURE_PLUGIN(sotFeatureVector3,"FeatureVector3");
 
 /* --------------------------------------------------------------------- */
diff --git a/src/feature/feature-visual-point.cpp b/src/feature/feature-visual-point.cpp
index 06955d7775f234577a49a6e9a06e0191949f3938..3d355106f1abc50c7620a3bc0ee5f1cd9518148e 100644
--- a/src/feature/feature-visual-point.cpp
+++ b/src/feature/feature-visual-point.cpp
@@ -26,9 +26,12 @@
 #include <sot-core/feature-visual-point.h>
 #include <sot-core/exception-feature.h>
 #include <sot-core/debug.h>
+#include <sot-core/factory.h>
 using namespace std;
+using namespace sot;
+
+
 
-#include <sot-core/factory.h>
 SOT_FACTORY_FEATURE_PLUGIN(sotFeatureVisualPoint,"FeatureVisualPoint");
 
 /* --------------------------------------------------------------------- */
diff --git a/src/math/matrix-force.cpp b/src/math/matrix-force.cpp
index 31f36a829bef2f9d3648626537de6411dec2859f..32b21089ccef0a72fca9dfb0bbbf5a9c482f499d 100644
--- a/src/math/matrix-force.cpp
+++ b/src/math/matrix-force.cpp
@@ -23,6 +23,9 @@
 #include <sot-core/matrix-twist.h>
 #include <sot-core/debug.h>
 
+using namespace sot;
+
+
 sotMatrixForce& sotMatrixForce::
 buildFrom( const sotMatrixHomogeneous& M )
 {
diff --git a/src/math/matrix-homogeneous.cpp b/src/math/matrix-homogeneous.cpp
index 59309779f0f9f7b8da19d96faf4d5d227c510c61..364c42587e5fd00fb5837dc57ed4b21a512b3c5c 100644
--- a/src/math/matrix-homogeneous.cpp
+++ b/src/math/matrix-homogeneous.cpp
@@ -21,6 +21,9 @@
 #include <sot-core/matrix-rotation.h>
 #include <sot-core/debug.h>
 
+using namespace sot;
+
+
 sotMatrixHomogeneous& sotMatrixHomogeneous::
 buildFrom( const sotMatrixRotation& rot, const ml::Vector& trans )
 {
diff --git a/src/math/matrix-rotation.cpp b/src/math/matrix-rotation.cpp
index 1ec358b123d750302b655558fc66014f53c05d1c..4f81cc09dc9a307916d54095b1515098548c2d1f 100644
--- a/src/math/matrix-rotation.cpp
+++ b/src/math/matrix-rotation.cpp
@@ -21,6 +21,8 @@
 #include <sot-core/vector-utheta.h>
 
 using namespace std;
+using namespace sot;
+
 
 void sotMatrixRotation::fromVector( sotVectorUTheta& vec )
 {
diff --git a/src/math/matrix-twist.cpp b/src/math/matrix-twist.cpp
index 01744ff208a45978c03080560ffb2c0d0427a613..806e20e21dce802dea72188136a353d89814b0a8 100644
--- a/src/math/matrix-twist.cpp
+++ b/src/math/matrix-twist.cpp
@@ -23,6 +23,9 @@
 #include <sot-core/matrix-force.h>
 #include <sot-core/debug.h>
 
+using namespace sot;
+
+
 sotMatrixTwist& sotMatrixTwist::
 buildFrom( const sotMatrixHomogeneous& M )
 {
diff --git a/src/math/op-point-modifior.cpp b/src/math/op-point-modifior.cpp
index ae5b7ced4c1c5237199b93a2c07d2facccea8b87..124d4175518a94ec872ff080e62f2dac6121eabd 100644
--- a/src/math/op-point-modifior.cpp
+++ b/src/math/op-point-modifior.cpp
@@ -27,6 +27,8 @@
 SOT_FACTORY_ENTITY_PLUGIN(sotOpPointModifior,"OpPointModifior");
 
 using namespace std;
+using namespace sot;
+
 
 
 /* --------------------------------------------------------------------- */
diff --git a/src/math/vector-quaternion.cpp b/src/math/vector-quaternion.cpp
index b9e9f3b9d746b07644ebb2ad35a12bcc8c984a14..8c41f26755e56896cb636c993113a97b8d043ad1 100644
--- a/src/math/vector-quaternion.cpp
+++ b/src/math/vector-quaternion.cpp
@@ -20,6 +20,8 @@
 #include <sot-core/vector-quaternion.h>
 #include <sot-core/debug.h>
 using namespace std;
+using namespace sot;
+
 
 static const double ANGLE_MINIMUM = 0.0001;
 static const double SINC_MINIMUM = 1e-8;
diff --git a/src/math/vector-roll-pitch-yaw.cpp b/src/math/vector-roll-pitch-yaw.cpp
index 6d2aac0cfd08d1546f627c53b48697d6d0ef34af..db7719e34a53d730967c1b31716852f9e3d3aed9 100644
--- a/src/math/vector-roll-pitch-yaw.cpp
+++ b/src/math/vector-roll-pitch-yaw.cpp
@@ -20,6 +20,8 @@
 #include <sot-core/vector-roll-pitch-yaw.h>
 #include <sot-core/debug.h>
 using namespace std;
+using namespace sot;
+
 
 static const double ANGLE_MINIMUM = 0.0001;
 static const double SINC_MINIMUM = 1e-8;
diff --git a/src/math/vector-utheta.cpp b/src/math/vector-utheta.cpp
index ddad6c610d7253084b7ad3f4260a39f706a9d49a..3a3b76a8a8ea3139e99b7ff22c41af85f61a6a90 100644
--- a/src/math/vector-utheta.cpp
+++ b/src/math/vector-utheta.cpp
@@ -20,6 +20,7 @@
 #include <sot-core/vector-utheta.h>
 #include <sot-core/debug.h>
 using namespace std;
+using namespace sot;
 
 static const double ANGLE_MINIMUM = 0.0001;
 static const double SINC_MINIMUM = 1e-8;
diff --git a/src/matrix/binary-op.cpp b/src/matrix/binary-op.cpp
index 2d5a21ed069e6d71472782375bc19d8ccb1390e4..9fb0373c2f2af0b0f9c6184d4b0c5fb9b6f6a40b 100644
--- a/src/matrix/binary-op.cpp
+++ b/src/matrix/binary-op.cpp
@@ -28,8 +28,6 @@
 
 #include <deque>
 
-using namespace sot;
-
 namespace sot {
 
 #define SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN_ExE_E_CMD(sotClassType,sotType,index,className,CMDLINE,CMDHELP)  \
@@ -76,6 +74,8 @@ struct sotAdder
 };
 
 typedef BinaryOp<Vector,Vector,Vector,sotAdder<Vector> > advector;
+
+
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN_ExE_E_CMD
 (advector,vector,ad_vector,"Add<vector>"
 ,else if( cmdLine=="coeff1" ){ cmdArgs>>op.coeff1; } 
diff --git a/src/matrix/derivator.cpp b/src/matrix/derivator.cpp
index 54209ab325bc8734f85e38ac156a9e6ea18b8155..42bf4f765b7356efc50d391a6dd420bfa093440d 100644
--- a/src/matrix/derivator.cpp
+++ b/src/matrix/derivator.cpp
@@ -20,7 +20,8 @@
 #include <sot-core/derivator.h>
 #include <sot-core/factory.h>
 
-
+using namespace sot;
+using namespace ml;
 
 #define SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotClassType,sotType,className)              \
   template<>                                                                            \
@@ -40,13 +41,12 @@
 					  &regFunction##_##sotType##_##sotClassType );                   \
   }
 
-using namespace ml;
+namespace sot {
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotDerivator,double,"Derivator");
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotDerivator,Vector,"Derivator");
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotDerivator,Matrix,"Derivator");
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotDerivator,sotVectorQuaternion,"Derivator");
-
-
+}
 
 //SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotDerivator,double,"T");
 
diff --git a/src/matrix/fir-filter.cpp b/src/matrix/fir-filter.cpp
index ebafaa3b0cb34e0f356c905376c6186d2b6a0a30..04594d71edacb4cb43318b9e27e70a36b9357c6b 100644
--- a/src/matrix/fir-filter.cpp
+++ b/src/matrix/fir-filter.cpp
@@ -18,9 +18,11 @@
  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
 
 #include <sot-core/fir-filter.h>
-
 #include <sot-core/factory.h>
 
+using namespace sot;
+
+
 #define SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotClassType,sotSigType,sotCoefType,id,className) \
   template<>								\
   std::string sotClassType<sotSigType,sotCoefType>::			\
diff --git a/src/matrix/integrator-abstract.cpp b/src/matrix/integrator-abstract.cpp
index 8a82926b2f835e2703ace4860dd3ea104429a2b6..43eb241482223bded7953cce30a6f6272f66b2a9 100644
--- a/src/matrix/integrator-abstract.cpp
+++ b/src/matrix/integrator-abstract.cpp
@@ -18,9 +18,11 @@
  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
 
 #include <sot-core/integrator-abstract.h>
-
 #include <sot-core/factory.h>
 
+using namespace sot;
+
+
 #define SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotClassType,sotSigType,sotCoefType,className)   \
   template<>                                                                                \
   std::string sotClassType<sotSigType,sotCoefType>::                                        \
@@ -34,8 +36,10 @@
 
 
 using namespace ml;
+namespace sot {
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotIntegratorAbstract,double,double,"integratorAbstract");
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotIntegratorAbstract,Vector,Matrix,"integratorAbstract");
+}
 
 #if 0
   extern "C" {
diff --git a/src/matrix/integrator-euler.cpp b/src/matrix/integrator-euler.cpp
index 2e64db888df7880a8cdc5c469ade930e8694bd57..472bfbaf833ca5f509386322e80c21c2e4aa124c 100644
--- a/src/matrix/integrator-euler.cpp
+++ b/src/matrix/integrator-euler.cpp
@@ -18,9 +18,11 @@
  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
 
 #include <sot-core/integrator-euler.h>
-
 #include <sot-core/factory.h>
 
+using namespace sot;
+
+
 #define SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotClassType,sotSigType,sotCoefType,className)   \
   template<>                                                                                \
   std::string sotClassType<sotSigType,sotCoefType>::                                        \
@@ -43,4 +45,6 @@
 
 using namespace ml;
 using namespace std;
+namespace sot {
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN(sotIntegratorEuler,Vector,Matrix,"integratorEuler");
+}
diff --git a/src/matrix/matrix-constant.cpp b/src/matrix/matrix-constant.cpp
index 198475ae7bb07cb2e8a18840819efd7aebb95884..e68b9175868857f07b54601ff72187b2452cd822 100644
--- a/src/matrix/matrix-constant.cpp
+++ b/src/matrix/matrix-constant.cpp
@@ -18,13 +18,14 @@
  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
 
 #include <sot-core/matrix-constant.h>
-
 #include <sot-core/factory.h>
-SOT_FACTORY_ENTITY_PLUGIN(sotMatrixConstant,"MatrixConstant");
 
 using namespace std;
+using namespace sot;
 
 
+SOT_FACTORY_ENTITY_PLUGIN(sotMatrixConstant,"MatrixConstant");
+
 /* --------------------------------------------------------------------- */
 /* --- MATRIX ---------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
diff --git a/src/matrix/unary-op.cpp b/src/matrix/unary-op.cpp
index af85041498ea0f57d606f47c4381622eda5f58a0..cc05a1618f913279274cea92ba6705af599420d9 100644
--- a/src/matrix/unary-op.cpp
+++ b/src/matrix/unary-op.cpp
@@ -28,6 +28,8 @@
 #include <sot-core/vector-quaternion.h>
 
 
+using namespace sot;
+
 
 
 #define SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN_E_E(sotClassType,sotType,index,className,CMDLINE,CMDHELP)    \
@@ -60,6 +62,8 @@
 
 using namespace ml;
 
+namespace sot {
+
 template< typename matrixgen >
 struct sotInverser
 {
@@ -464,3 +468,5 @@ res=r;
 
 typedef sotUnaryOp<ml::Vector,ml::Vector,sotDirtyMemory> v2mDirtyMemory;
 SOT_FACTORY_TEMPLATE_ENTITY_PLUGIN_E_E(v2mDirtyMemory,vector,v2mDM_,"DirtyMemory", ,"");
+
+} // namespace sot
diff --git a/src/matrix/vector-constant.cpp b/src/matrix/vector-constant.cpp
index 49e7c9f195b2e7a23e67a12a586b12406130e492..f0b1330749838816add65293be20d6f1cc71ed13 100644
--- a/src/matrix/vector-constant.cpp
+++ b/src/matrix/vector-constant.cpp
@@ -20,9 +20,13 @@
 #include <sot-core/vector-constant.h>
 
 #include <sot-core/factory.h>
+
+namespace sot  {
 SOT_FACTORY_ENTITY_PLUGIN(sotVectorConstant,"VectorConstant");
+}
 
 using namespace std;
+using namespace sot;
 
 
 /* --------------------------------------------------------------------- */
diff --git a/src/matrix/vector-to-rotation.cpp b/src/matrix/vector-to-rotation.cpp
index 61bd872e01cecebffc37d10bf947a544fa37abe4..dd7b5db5d9df1ff78bc77e362a6104a039e01b7f 100644
--- a/src/matrix/vector-to-rotation.cpp
+++ b/src/matrix/vector-to-rotation.cpp
@@ -25,6 +25,8 @@
 SOT_FACTORY_ENTITY_PLUGIN(sotVectorToRotation,"VectorToRotation");
 
 using namespace std;
+using namespace sot;
+
 
 
 /* --------------------------------------------------------------------- */
diff --git a/src/signal/signal-cast.cpp b/src/signal/signal-cast.cpp
index 30016a87c1f9d88afcd78a75cf908c685de03ea8..c3e104d843a53396e98e10f1dbe849cac1ad3cf6 100644
--- a/src/signal/signal-cast.cpp
+++ b/src/signal/signal-cast.cpp
@@ -23,6 +23,8 @@
 #include <sot-core/feature-abstract.h>
 
 using namespace std;
+using namespace sot;
+
 
 #ifdef WIN32
 #include < Windows.h >
diff --git a/src/sot/flags.cpp b/src/sot/flags.cpp
index a196b2d3f8bbac060525c88349ea73c0a8e64204..0ba1216d73b13674b72df0447b34ea287eb0080f 100644
--- a/src/sot/flags.cpp
+++ b/src/sot/flags.cpp
@@ -25,12 +25,15 @@
 
 /*! System framework */
 #include <stdlib.h>
+#include <list>
 
 /*! Local Framework */
 #include <sot-core/flags.h>
 #include <sot-core/debug.h>
 
 using namespace std;
+using namespace sot;
+
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
 /* --------------------------------------------------------------------- */
@@ -87,6 +90,7 @@ operator[] (const unsigned int& i) const
   return res;
 }
 
+namespace sot {
 char operator>> (const sotFlags& f,const int& i)
 {
   const div_t q = div(i,8); 
@@ -96,6 +100,7 @@ char operator>> (const sotFlags& f,const int& i)
   
   return res;
 }
+} // namespace sot
 
 bool sotFlags::
 operator() (const int& i) const
@@ -234,6 +239,7 @@ unset( const unsigned int & idx )
 
 
 /* --------------------------------------------------------------------- */
+namespace sot {
 std::ostream& operator<< (std::ostream& os, const sotFlags& fl )
 {
   if( fl.reverse ) os << "...11111 ";
@@ -247,8 +253,6 @@ std::ostream& operator<< (std::ostream& os, const sotFlags& fl )
   return os;
 }
 
-#include <list>
-
 static char MASK [] = { 0,1,3,7,15,31,63,127,255 };
 
 std::istream& operator>> (std::istream& is, sotFlags& fl )
@@ -367,6 +371,7 @@ std::istream& operator>> (std::istream& is, sotFlags& fl )
   return is;
 }
 
+} // namespace sot
 
 /* --------------------------------------------------------------------- */
 const sotFlags FLAG_LINE_1( (char)0x1 );
diff --git a/src/sot/memory-task-sot.cpp b/src/sot/memory-task-sot.cpp
index 3d0c86b135a365ce66b65b83f2cae94baf0892b2..384727cae99ba5780574d5084bce0626c756b2ef 100644
--- a/src/sot/memory-task-sot.cpp
+++ b/src/sot/memory-task-sot.cpp
@@ -21,6 +21,8 @@
 #include <sot-core/memory-task-sot.h>
 #include <sot-core/debug.h>
 
+using namespace sot;
+
 
 const std::string sotMemoryTaskSOT::CLASS_NAME = "MemoryTaskSOT";
 
diff --git a/src/sot/solver-hierarchical-inequalities.cpp b/src/sot/solver-hierarchical-inequalities.cpp
index d50c9a2438010bd40dc27f8a90f1ef21a19c2c36..fc8fb7de34419efe3fc374b5e5c8e62f09d9abbd 100644
--- a/src/sot/solver-hierarchical-inequalities.cpp
+++ b/src/sot/solver-hierarchical-inequalities.cpp
@@ -24,6 +24,7 @@
 
 //#define WITH_CHRONO
 
+
 //#define VP_DEBUG
 #define VP_DEBUG_MODE 45
 #include <sot-core/debug.h>
@@ -34,6 +35,7 @@
 // sotIneq__INIT sotIneq_initiator;
 
 #include <sot-core/solver-hierarchical-inequalities.h>
+using namespace sot;
 
 #ifndef WIN32
 #  include <sys/time.h>
@@ -48,6 +50,9 @@
 #  include <Winsock2.h>
 #endif /*WIN32*/
 #define FORTRAN_ID( id ) id##_
+
+
+
 /* ---------------------------------------------------------- */
 /* --- BINDING FORTRAN -------------------------------------- */
 /* ---------------------------------------------------------- */
@@ -167,6 +172,7 @@ ConstraintMem( const ConstraintMem& clone )
   sotDEBUG(15) << "ConstraintMem cloning" << std::endl;
 }
 
+namespace sot {
 std::ostream& operator<<( std::ostream& os,const ConstraintMem::BoundSideType& bs )
 {
   switch( bs )
@@ -210,6 +216,8 @@ std::ostream & operator<< (std::ostream& os,const ConstraintMem &c )
   return os;
 }
 
+} // namespace sot
+
 /* ---------------------------------------------------------- */
 /* Specify the size of the constraint matrix, for pre-alocation. */
 void sotSolverHierarchicalInequalities::
diff --git a/src/sot/sot-h.cpp b/src/sot/sot-h.cpp
index 5340813d1b41a0a779404825e6e3adebdc0a4478..86759ffa351e824c78804e51c8cc56efe244f629 100644
--- a/src/sot/sot-h.cpp
+++ b/src/sot/sot-h.cpp
@@ -36,6 +36,8 @@
 
 
 using namespace std;
+using namespace sot;
+
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
diff --git a/src/sot/sot-qr.cpp b/src/sot/sot-qr.cpp
index 640da451f793885a7a73ba6744f059142d6c670f..34d36738e958ee9a0b84315835a2adb35c33785f 100644
--- a/src/sot/sot-qr.cpp
+++ b/src/sot/sot-qr.cpp
@@ -39,6 +39,8 @@
 
 #define FORTRAN_ID( id ) id##_
 using namespace std;
+using namespace sot;
+
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
diff --git a/src/sot/sot.cpp b/src/sot/sot.cpp
index 144b711a57538d080c81d8f5baa6e3c8fdcc97f7..1fb1149d30b4ac6fc6cc2c8180e8511c98bad4ae 100644
--- a/src/sot/sot.cpp
+++ b/src/sot/sot.cpp
@@ -40,6 +40,8 @@
 #include <sot-core/memory-task-sot.h>
 
 using namespace std;
+using namespace sot;
+
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
diff --git a/src/sot/weighted-sot.cpp b/src/sot/weighted-sot.cpp
index f6e0f597d347d20f2091458fbb0d16d6919c7d55..02a3de6a712612417a14cf356d4a345f850affc8 100644
--- a/src/sot/weighted-sot.cpp
+++ b/src/sot/weighted-sot.cpp
@@ -29,6 +29,8 @@
 #include <sot-core/task.h>
 #include <sot-core/debug.h>
 using namespace std;
+using namespace sot;
+
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
diff --git a/src/task/gain-adaptative.cpp b/src/task/gain-adaptative.cpp
index 3dc99908bac8ea2df9a1400f6ca32480e942918f..5f3bece094ee4e90ddc7e8710001bcb219041dfe 100644
--- a/src/task/gain-adaptative.cpp
+++ b/src/task/gain-adaptative.cpp
@@ -28,6 +28,9 @@
 #include <sot-core/debug.h>
 #include <sot-core/factory.h>
 #include <sot-core/exception-signal.h>
+
+using namespace sot;
+
 SOT_FACTORY_ENTITY_PLUGIN(sotGainAdaptative,"GainAdaptative");
 
 const double sotGainAdaptative::
diff --git a/src/task/gain-hyperbolic.cpp b/src/task/gain-hyperbolic.cpp
index 714235e653d39baae78a28aaf700c6368e1b02e5..7db40dace9a83602b8f89e4a6ae71afa6b726bbd 100644
--- a/src/task/gain-hyperbolic.cpp
+++ b/src/task/gain-hyperbolic.cpp
@@ -28,6 +28,9 @@
 #include <sot-core/factory.h>
 #include <sot-core/debug.h>
 #include <sot-core/exception-signal.h>
+
+using namespace sot;
+
 SOT_FACTORY_ENTITY_PLUGIN(sotGainHyperbolic,"GainHyperbolic");
 
 const double sotGainHyperbolic::
diff --git a/src/task/multi-bound.cpp b/src/task/multi-bound.cpp
index 0c722bb3947fa8073824cc562a66d9997e7b8ea3..ab0865feeb5cb769f7692f27380ef4757b5e9954 100644
--- a/src/task/multi-bound.cpp
+++ b/src/task/multi-bound.cpp
@@ -2,7 +2,7 @@
  * Copyright Projet Gepetto, Laas, CNRS, 2009
  *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  *
- * File:      task-multi-bound.h
+ * File:      multi-bound.cpp
  * Project:   SOT
  * Author:    Nicolas Mansard
  *
@@ -18,11 +18,14 @@
  * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
 
 
-#include <sot-core/task-multi-bound.h>
+#include <sot-core/multi-bound.h>
 #define VP_DEBUG
 #define VP_DEBUG_MODE 25
 #include <sot-core/debug.h>
 
+using namespace sot;
+
+
 sotMultiBound::
 sotMultiBound( const double x )
   : mode(MODE_SINGLE),boundSingle(x)
@@ -142,6 +145,24 @@ setSingleBound( double boundValue )
   boundSingle=boundValue;
 }
 
+inline static void SOT_MULTI_BOUND_CHECK_C(std::istream& is,
+                                           char check,
+                                           sotVectorMultiBound& v)
+{
+  char c;
+  is.get(c);
+  if(c!=check)
+    {
+      v.resize(0);
+      sotERROR << "Error while parsing vector multi-bound. Waiting for a '" << check
+               << "'. Get '" << c << "' instead. " << std::endl;
+      SOT_THROW sotExceptionTask(sotExceptionTask::PARSER_MULTI_BOUND,
+                                 "Error parsing vector multi-bound.");
+    }
+}
+
+namespace sot {
+
 std::ostream& operator<< ( std::ostream& os, const sotMultiBound & m  )
 {
   switch( m.mode )
@@ -227,22 +248,6 @@ std::ostream& operator<< (std::ostream& os, const sotVectorMultiBound& v )
   return os<<")";
 }
 
-inline static void SOT_MULTI_BOUND_CHECK_C(std::istream& is,
-                                           char check,
-                                           sotVectorMultiBound& v)
-{
-  char c;
-  is.get(c);
-  if(c!=check)
-    {
-      v.resize(0);
-      sotERROR << "Error while parsing vector multi-bound. Waiting for a '" << check
-               << "'. Get '" << c << "' instead. " << std::endl;
-      SOT_THROW sotExceptionTask(sotExceptionTask::PARSER_MULTI_BOUND,
-                                 "Error parsing vector multi-bound.");
-    }
-}
-
 std::istream& operator>> (std::istream& is, sotVectorMultiBound& v )
 {
   unsigned int vali;
@@ -264,3 +269,5 @@ std::istream& operator>> (std::istream& is, sotVectorMultiBound& v )
 
   return is;
 }
+
+} // namespace sot
diff --git a/src/task/task-abstract.cpp b/src/task/task-abstract.cpp
index a4a0dbdc641cc6cf39b3b145d68ed210f5b13998..4ce0dfa49ebe2efe84b0f7f85cd15fad5a9e036c 100644
--- a/src/task/task-abstract.cpp
+++ b/src/task/task-abstract.cpp
@@ -25,6 +25,8 @@
 #include <sot-core/task-abstract.h>
 #include <sot-core/pool.h>
 
+using namespace sot;
+
 
 /* --------------------------------------------------------------------- */
 /* --- CLASS ----------------------------------------------------------- */
diff --git a/src/task/task-conti.cpp b/src/task/task-conti.cpp
index f4b923ff92923712c5bef34a1c98e882954fb3ee..3b3c36298ac47d79c232dd4bc2bcf7fa491612be 100644
--- a/src/task/task-conti.cpp
+++ b/src/task/task-conti.cpp
@@ -26,11 +26,11 @@
 #include <sot-core/task-conti.h>
 #include <sot-core/debug.h>
 #include <MatrixAbstractLayer/boostVector.h>
-using namespace std;
-
+#include <sot-core/factory.h>
 
+using namespace std;
+using namespace sot;
 
-#include <sot-core/factory.h>
 SOT_FACTORY_TASK_PLUGIN(sotTaskConti,"TaskConti");
 
 
diff --git a/src/task/task-pd.cpp b/src/task/task-pd.cpp
index 4e8b8f21539e95ef65f3ca97617f62022ce9c07f..70bc9b85286b47f222f8eda4682cc94c2998abd8 100644
--- a/src/task/task-pd.cpp
+++ b/src/task/task-pd.cpp
@@ -25,7 +25,10 @@
 /* SOT */
 #include <sot-core/task-pd.h>
 #include <sot-core/debug.h>
+
 using namespace std;
+using namespace sot;
+
 
 
 
diff --git a/src/task/task-unilateral.cpp b/src/task/task-unilateral.cpp
index eca644df01c8b3c02ce045b79f24713d97967ee6..5d555884c7f4fc18d869ec68c292d11e0e349efd 100644
--- a/src/task/task-unilateral.cpp
+++ b/src/task/task-unilateral.cpp
@@ -28,7 +28,9 @@
 /* SOT */
 #include <sot-core/task-unilateral.h>
 #include <sot-core/debug.h>
+
 using namespace std;
+using namespace sot;
 
 
 
diff --git a/src/task/task.cpp b/src/task/task.cpp
index 227ece619cad678e84960445f587e5d8a6ec3ed2..3d43b1f167b5af1f49d3b460e534accfd59444f6 100644
--- a/src/task/task.cpp
+++ b/src/task/task.cpp
@@ -26,6 +26,8 @@
 #include <sot-core/task.h>
 #include <sot-core/debug.h>
 using namespace std;
+using namespace sot;
+