X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDLoader%2FSauvReader.hxx;h=a9d28915ed063b80f2b1d3534886d508100b1db8;hb=88916ccf9c681624b682d10a62c1ee376324c946;hp=d2d52cc624dd6c672fa807b5caa6b0ed10c7028f;hpb=f1a947b32a36d8dc8e3079b25305bb50e8cb59a0;p=tools%2Fmedcoupling.git diff --git a/src/MEDLoader/SauvReader.hxx b/src/MEDLoader/SauvReader.hxx index d2d52cc62..a9d28915e 100644 --- a/src/MEDLoader/SauvReader.hxx +++ b/src/MEDLoader/SauvReader.hxx @@ -1,9 +1,9 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D +// Copyright (C) 2007-2019 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 @@ -35,27 +35,28 @@ namespace SauvUtilities { class FileReader; - class IntermediateMED; - class Group; - class DoubleField; + struct IntermediateMED; + struct Group; + struct DoubleField; } -namespace ParaMEDMEM +namespace MEDCoupling { class MEDFileData; -class MEDLOADER_EXPORT SauvReader : public ParaMEDMEM::RefCountObject +class SauvReader : public MEDCoupling::RefCountObject { public: - static SauvReader* New(const char *fileName) throw(INTERP_KERNEL::Exception); - ParaMEDMEM::MEDFileData * loadInMEDFileDS() throw(INTERP_KERNEL::Exception); - ~SauvReader(); + MEDLOADER_EXPORT static SauvReader* New(const std::string& fileName); + MEDLOADER_EXPORT MEDCoupling::MEDFileData * loadInMEDFileDS(); + MEDLOADER_EXPORT ~SauvReader(); private: - std::size_t getHeapMemorySize() const { return 0; } - + std::size_t getHeapMemorySizeWithoutChildren() const; + std::vector getDirectChildrenWithNull() const; void readRecord2(); void readRecord4(); void readRecord7(); + void readRecord8(); int readPileNumber(int& nbNamedObjects, int& nbObjects); void read_PILE_SOUS_MAILLAGE(const int nbObjects, std::vector& objectNames, std::vector& nameIndices); @@ -72,7 +73,8 @@ class MEDLOADER_EXPORT SauvReader : public ParaMEDMEM::RefCountObject void read_PILE_MODL (const int nbObjects, std::vector& objectNames, std::vector& nameIndices); void read_PILE_FIELD (const int nbObjects, std::vector& objectNames, std::vector& nameIndices); - SauvUtilities::Group* getFieldSupport(const std::vector& fieldSupports); + void setFieldSupport(const std::vector& supports, + SauvUtilities::DoubleField* field); void setFieldNames(const std::vector& fields, const std::vector& objectNames, const std::vector& nameIndices);