Salome HOME
Some factorization before integration of ParaMEDMEM into medcoupling python module
[tools/medcoupling.git] / src / MEDCoupling / MEDCouplingTraits.hxx
index 262328e7173231b72e27a2c9f118e443f53d1039..a14232eec8114310127d62b50cd2ca85f21d485f 100644 (file)
@@ -22,6 +22,7 @@
 #define __MEDCOUPLINGTRAITS_HXX__
 
 #include "MEDCoupling.hxx"
+#include "MCType.hxx"
 
 namespace MEDCoupling
 {
@@ -31,13 +32,18 @@ namespace MEDCoupling
     typedef T EltType;
   };
 
-  class DataArrayInt;
+  class DataArrayInt32;
   class DataArrayFloat;
   class DataArrayDouble;
   class DataArrayChar;
   class DataArrayByte;
+  class DataArrayInt64;
   class MEDCouplingFieldDouble;
+  class MEDCouplingFieldFloat;
   class MEDCouplingFieldInt;
+  class DataArrayInt32Tuple;
+  class DataArrayFloatTuple;
+  class DataArrayDoubleTuple;
   
   template<>
   struct MEDCOUPLING_EXPORT Traits<double>
@@ -45,9 +51,11 @@ namespace MEDCoupling
     static const char ArrayTypeName[];
     static const char FieldTypeName[];
     static const char NPYStr[];
+    static const char ReprStr[];
     typedef DataArrayDouble ArrayType;
     typedef DataArrayDouble ArrayTypeCh;
     typedef MEDCouplingFieldDouble FieldType;
+    typedef DataArrayDoubleTuple ArrayTuple;
   };
 
   template<>
@@ -56,19 +64,37 @@ namespace MEDCoupling
     static const char ArrayTypeName[];
     static const char FieldTypeName[];
     static const char NPYStr[];
+    static const char ReprStr[];
     typedef DataArrayFloat ArrayType;
     typedef DataArrayFloat ArrayTypeCh;
-    //typedef MEDCouplingFieldFloat FieldType;
+    typedef MEDCouplingFieldFloat FieldType;
+    typedef DataArrayFloatTuple ArrayTuple;
   };
   
   template<>
-  struct MEDCOUPLING_EXPORT Traits<int>
+  struct MEDCOUPLING_EXPORT Traits<Int32>
   {
     static const char ArrayTypeName[];
     static const char FieldTypeName[];
-    typedef DataArrayInt ArrayType;
-    typedef DataArrayInt ArrayTypeCh;
+    static const char NPYStr[];
+    static const char ReprStr[];
+    typedef DataArrayInt32 ArrayType;
+    typedef DataArrayInt32 ArrayTypeCh;
     typedef MEDCouplingFieldInt FieldType;
+    typedef DataArrayInt32Tuple ArrayTuple;
+  };
+
+  template<>
+  struct MEDCOUPLING_EXPORT Traits<Int64>
+  {
+    static const char ArrayTypeName[];
+    static const char FieldTypeName[];
+    static const char NPYStr[];
+    static const char ReprStr[];
+    typedef DataArrayInt64 ArrayType;
+    typedef DataArrayInt64 ArrayTypeCh;
+    //typedef MEDCouplingFieldInt64 FieldType;
+    //typedef DataArrayInt64Tuple ArrayTuple;
   };
 
   template<>