Salome HOME
Some factorization before integration of ParaMEDMEM into medcoupling python module
[tools/medcoupling.git] / src / MEDLoader / MEDFileUtilities.hxx
index 8116d7e5ce72c80d3ef2f080087f0ce23cac6af8..27c93158dae4129ca9eaecba8a904d2d13c73453 100644 (file)
@@ -24,6 +24,9 @@
 #include "InterpKernelException.hxx"
 #include "MEDLoaderDefines.hxx"
 
+#include "MCAuto.hxx"
+#include "MEDCouplingMemArray.hxx"
+
 #include "med.h"
 
 namespace MEDFileUtilities
@@ -50,6 +53,7 @@ namespace MEDCoupling
   {
   public:
     MEDFileWritable();
+    virtual ~MEDFileWritable() {}
     void copyOptionsFrom(const MEDFileWritable& other) const;
     int getTooLongStrPolicy() const;
     void setTooLongStrPolicy(int newVal);
@@ -66,6 +70,13 @@ namespace MEDCoupling
   public:
     MEDLOADER_EXPORT virtual void writeLL(med_idt fid) const = 0;
     MEDLOADER_EXPORT virtual void write(const std::string& fileName, int mode) const;
+    MEDLOADER_EXPORT virtual void write30(const std::string& fileName, int mode) const;
+    MEDLOADER_EXPORT MCAuto<DataArrayByte> serialize() const;
+    MEDLOADER_EXPORT static std::string GenerateUniqueDftFileNameInMem();
+  public:
+    MEDLOADER_EXPORT static const char DFT_FILENAME_IN_MEM[];
+    template<class T>
+    static T *BuildFromMemoryChunk(DataArrayByte *db);
   };
   
   MEDFileUtilities::AutoFid OpenMEDFileForRead(const std::string& fileName);