Salome HOME
Add test for .mesh file format
[tools/medcoupling.git] / src / MEDLoader / MEDFileEntities.hxx
index 3371273d9282d7439dbf0035add8e8e071018af0..b9ac6350fdc053e49abeef201315f154fa32abf2 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2017  CEA/DEN, EDF R&D
+// Copyright (C) 2007-2024  CEA, EDF
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 
 namespace MEDCoupling
 {
-  class MEDFileEntities
+  class MEDLOADER_EXPORT MEDFileEntities
   {
   public:
     static MEDFileEntities *BuildFrom(const std::vector< std::pair<TypeOfField,INTERP_KERNEL::NormalizedCellType> > *entities);
     static MEDFileEntities *BuildFrom(const MEDFileStructureElements& se);
     virtual std::vector<int> getDynGTAvail() const = 0;
     virtual bool areAllStaticTypesPresent() const = 0;
+    virtual bool areAllStaticPresentAndNoDyn() const = 0;
+    virtual ~MEDFileEntities();
   };
 
-  class MEDFileStaticEntities : public MEDFileEntities
+  class MEDLOADER_EXPORT MEDFileStaticEntities : public MEDFileEntities
   {
   public:
     MEDFileStaticEntities(const std::vector< std::pair<TypeOfField,INTERP_KERNEL::NormalizedCellType> >& entities):_entities(entities) { }
     const std::vector< std::pair<TypeOfField,INTERP_KERNEL::NormalizedCellType> >& getEntries() const { return _entities; }
     std::vector<int> getDynGTAvail() const;
     bool areAllStaticTypesPresent() const;
+    bool areAllStaticPresentAndNoDyn() const override;
   private:
     std::vector< std::pair<TypeOfField,INTERP_KERNEL::NormalizedCellType> > _entities;
   };
 
-  class MEDFileAllStaticEntites : public MEDFileEntities
+  class MEDLOADER_EXPORT MEDFileAllStaticEntites : public MEDFileEntities
   {
   public:
     MEDFileAllStaticEntites() { }
     std::vector<int> getDynGTAvail() const;
     bool areAllStaticTypesPresent() const;
+    bool areAllStaticPresentAndNoDyn() const override;
   };
 
-  class MEDFileAllStaticEntitiesPlusDyn : public MEDFileEntities
+  class MEDLOADER_EXPORT MEDFileAllStaticEntitiesPlusDyn : public MEDFileEntities
   {
   public:
     MEDFileAllStaticEntitiesPlusDyn(const MEDFileStructureElements *se);
     std::vector<int> getDynGTAvail() const;
     bool areAllStaticTypesPresent() const;
+    bool areAllStaticPresentAndNoDyn() const override;
+    const MEDFileStructureElement *getWithGT(int idGT) const;
+    const MEDFileUMesh *getSupMeshWithName(const std::string& name) const;
   private:
     MCConstAuto<MEDFileStructureElements> _se;
   };