]> SALOME platform Git repositories - tools/medcoupling.git/commitdiff
Salome HOME
Connect by default read of struct elements in MEDFileData constructor
authorAnthony Geay <anthony.geay@edf.fr>
Fri, 20 Jan 2017 12:07:32 +0000 (13:07 +0100)
committerAnthony Geay <anthony.geay@edf.fr>
Fri, 20 Jan 2017 12:07:32 +0000 (13:07 +0100)
src/MEDLoader/MEDFileData.cxx
src/MEDLoader/MEDFileField.cxx
src/MEDLoader/MEDFileField.hxx

index 2a722d0d6700f16fc7d5e3627ba3e42e2c2d2df9..945708556b6bdf1ccbf573b5352956e373f68017 100644 (file)
@@ -309,7 +309,7 @@ try
   readHeader(fid);
   _mesh_supports=MEDFileMeshSupports::New(fid);
   _struct_elems=MEDFileStructureElements::New(fid,_mesh_supports);
-  _fields=MEDFileFields::New(fid);
+  _fields=MEDFileFields::NewWithDynGT(fid,_struct_elems,true);
   _meshes=MEDFileMeshes::New(fid);
   _params=MEDFileParameters::New(fid);
 }
index 240cab8e99550b4bc5fdcda3f1f68034b3300da6..9c6b5d7315cce8514ee36d9a31ff96d9bf4fb077 100644 (file)
@@ -2674,8 +2674,7 @@ MFFPMIter *MFFPMIter::NewCell(const MEDFileEntities *entities)
             }
           return new MFFPMIter2(tmp);
         }
-      else
-        throw INTERP_KERNEL::Exception("MFFPMIter::NewCell : not recognized type !");
+      return new MFFPMIterSimple;// for MEDFileAllStaticEntites and MEDFileAllStaticEntitiesPlusDyn cells are in
     }
 }
 
@@ -2694,8 +2693,7 @@ bool MFFPMIter::IsPresenceOfNode(const MEDFileEntities *entities)
               return true;
           return false;
         }
-      else
-        throw INTERP_KERNEL::Exception("MFFPMIter::IsPresenceOfNode : not recognized type !");
+      return true;// for MEDFileAllStaticEntites and MEDFileAllStaticEntitiesPlusDyn nodes are in
     }
 }
 
@@ -10146,6 +10144,11 @@ MEDFileFields *MEDFileFields::New(const std::string& fileName, bool loadAll)
 MEDFileFields *MEDFileFields::NewWithDynGT(const std::string& fileName, const MEDFileStructureElements *se, bool loadAll)
 {
   MEDFileUtilities::AutoFid fid(OpenMEDFileForRead(fileName));
+  return NewWithDynGT(fid,se,loadAll);
+}
+
+MEDFileFields *MEDFileFields::NewWithDynGT(med_idt fid, const MEDFileStructureElements *se, bool loadAll)
+{
   if(!se)
     throw INTERP_KERNEL::Exception("MEDFileFields::NewWithDynGT : null struct element pointer !");
   INTERP_KERNEL::AutoCppPtr<MEDFileEntities> entities(MEDFileEntities::BuildFrom(*se));
index 81cecdb8cfccf69dd91c0040f700982e4bacf242..754a97778701dfbbe03d7d4c632c5438a39191de 100644 (file)
@@ -1179,8 +1179,9 @@ namespace MEDCoupling
   public:
     MEDLOADER_EXPORT static MEDFileFields *New();
     MEDLOADER_EXPORT static MEDFileFields *New(const std::string& fileName, bool loadAll=true);
-    MEDLOADER_EXPORT static MEDFileFields *NewWithDynGT(const std::string& fileName, const MEDFileStructureElements *se, bool loadAll=true);
     MEDLOADER_EXPORT static MEDFileFields *New(med_idt fid, bool loadAll=true);
+    MEDLOADER_EXPORT static MEDFileFields *NewWithDynGT(const std::string& fileName, const MEDFileStructureElements *se, bool loadAll=true);
+    MEDLOADER_EXPORT static MEDFileFields *NewWithDynGT(med_idt fid, const MEDFileStructureElements *se, bool loadAll=true);
     MEDLOADER_EXPORT static MEDFileFields *New(DataArrayByte *db) { return BuildFromMemoryChunk<MEDFileFields>(db); }
     MEDLOADER_EXPORT static MEDFileFields *LoadPartOf(const std::string& fileName, bool loadAll=true, const MEDFileMeshes *ms=0);
     MEDLOADER_EXPORT static MEDFileFields *LoadSpecificEntities(const std::string& fileName, const std::vector< std::pair<TypeOfField,INTERP_KERNEL::NormalizedCellType> >& entities, bool loadAll=true);