diff --git a/src/eigenpy.cpp b/src/eigenpy.cpp
index a7e46423bc2139c65ffbb260638f39ed62c7d34c..dae15e9d21fc932f12b4e867b16006cfe06dd9c9 100644
--- a/src/eigenpy.cpp
+++ b/src/eigenpy.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2015 LAAS-CNRS
+ * Copyright (c) 2015-2018 LAAS-CNRS
  *
  * This file is part of eigenpy.
  * eigenpy is free software: you can redistribute it and/or
@@ -22,17 +22,18 @@ namespace eigenpy
   /* Enable Eigen-Numpy serialization for a set of standard MatrixBase instance. */
   void enableEigenPy()
   {
+    using namespace Eigen;
     Exception::registerException();
 
-    enableEigenPySpecific<Eigen::MatrixXd>();
-    enableEigenPySpecific<Eigen::Matrix2d>();
-    enableEigenPySpecific<Eigen::Matrix3d>();
-    enableEigenPySpecific<Eigen::Matrix4d>();
-
-    enableEigenPySpecific<Eigen::VectorXd>();
-    enableEigenPySpecific<Eigen::Vector2d>();
-    enableEigenPySpecific<Eigen::Vector3d>();
-    enableEigenPySpecific<Eigen::Vector4d>();
+    ENABLE_SPECIFIC_MATRIX_TYPE(MatrixXd);
+    ENABLE_SPECIFIC_MATRIX_TYPE(Matrix2d);
+    ENABLE_SPECIFIC_MATRIX_TYPE(Matrix3d);
+    ENABLE_SPECIFIC_MATRIX_TYPE(Matrix4d);
+    
+    ENABLE_SPECIFIC_MATRIX_TYPE(VectorXd);
+    ENABLE_SPECIFIC_MATRIX_TYPE(Vector2d);
+    ENABLE_SPECIFIC_MATRIX_TYPE(Vector3d);
+    ENABLE_SPECIFIC_MATRIX_TYPE(Vector4d);
   }
 
 } // namespace eigenpy
diff --git a/src/eigenpy.hpp b/src/eigenpy.hpp
index 40cf58782ced5cc86506d39c61a1cd2ca25732dc..9fcecc7ce29815f09f02791c2228e889ee26e886 100644
--- a/src/eigenpy.hpp
+++ b/src/eigenpy.hpp
@@ -18,15 +18,18 @@
 #define __eigenpy_eigenpy_hpp__
 
 #include "eigenpy/fwd.hpp"
-#include "eigenpy/memory.hpp"
 #include "eigenpy/deprecated.hh"
+#include "eigenpy/ref.hpp"
+
+#define ENABLE_SPECIFIC_MATRIX_TYPE(TYPE) \
+  enableEigenPySpecific<TYPE>(); \
+  enableEigenPySpecific< eigenpy::Ref<TYPE> >();
 
 namespace eigenpy
 {
   /* Enable Eigen-Numpy serialization for a set of standard MatrixBase instance. */
   void enableEigenPy();
 
-  
   template<typename MatType>
   void enableEigenPySpecific();