Salome HOME
a test.
[tools/medcoupling.git] / src / MEDLoader / MEDFileMeshLL.hxx
index 5c09e91a47cdd9da0211006f6c3881a7bb90fff0..f353a7b7525cf469a16dc745d95dbedaee3338b2 100644 (file)
@@ -1,9 +1,9 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D
+// Copyright (C) 2007-2014  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -37,7 +37,7 @@
 namespace ParaMEDMEM
 {
   class MEDFileMeshReadSelector;
-  
+
   class MEDFileMeshL2 : public RefCountObject
   {
   public:
@@ -109,7 +109,7 @@ namespace ParaMEDMEM
   private:
     MEDCouplingAutoRefCountObjectPtr<MEDCouplingCMesh> _cmesh;
   };
-  
+
   class MEDFileCLMeshL2 : public MEDFileStrMeshL2
   {
   public:
@@ -123,13 +123,15 @@ namespace ParaMEDMEM
   class MEDFileMesh;
   class MEDFileUMeshSplitL1;
 
-  class MEDFileUMeshPermCompute
+  class MEDFileUMeshPermCompute : public BigMemoryObject
   {
   public:
     MEDFileUMeshPermCompute(const MEDFileUMeshSplitL1* st);
     operator MEDCouplingUMesh *() const;
     void operator=(MEDCouplingUMesh *m);
     void updateTime() const;
+    std::vector<const BigMemoryObject *> getDirectChildren() const;
+    std::size_t getHeapMemorySizeWithoutChildren() const;
   private:
     const MEDFileUMeshSplitL1 *_st;
     mutable std::size_t _mpt_time;
@@ -141,6 +143,7 @@ namespace ParaMEDMEM
   {
   public:
     MEDFileUMeshAggregateCompute();
+    void setName(const std::string& name);
     void assignParts(const std::vector< const MEDCoupling1GTUMesh * >& mParts);
     void assignUMesh(MEDCouplingUMesh *m);
     MEDCouplingUMesh *getUmesh() const;
@@ -171,7 +174,7 @@ namespace ParaMEDMEM
     mutable std::size_t _m_time;
     mutable MEDCouplingAutoRefCountObjectPtr<MEDCouplingUMesh> _m;
   };
-  
+
   class MEDFileUMeshSplitL1 : public RefCountObject
   {
     friend class MEDFileUMeshPermCompute;
@@ -181,6 +184,7 @@ namespace ParaMEDMEM
     MEDFileUMeshSplitL1(MEDCoupling1GTUMesh *m);
     MEDFileUMeshSplitL1(MEDCouplingUMesh *m);
     MEDFileUMeshSplitL1(MEDCouplingUMesh *m, bool newOrOld);
+    void setName(const std::string& name);
     std::size_t getHeapMemorySizeWithoutChildren() const;
     std::vector<const BigMemoryObject *> getDirectChildren() const;
     MEDFileUMeshSplitL1 *deepCpy(DataArrayDouble *coords) const;
@@ -212,7 +216,7 @@ namespace ParaMEDMEM
     const DataArrayInt *getRevNumberField() const;
     void eraseFamilyField();
     void setGroupsFromScratch(const std::vector<const MEDCouplingUMesh *>& ms, std::map<std::string,int>& familyIds,
-                              std::map<std::string, std::vector<std::string> >& groups) throw(INTERP_KERNEL::Exception);
+                              std::map<std::string, std::vector<std::string> >& groups);
     void write(med_idt fid, const std::string& mName, int mdim) const;
     //
     void setFamilyArr(DataArrayInt *famArr);