X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDLoader%2FSauvReader.hxx;h=533ae0ba451f801456050f6054fd36b1689a63f2;hb=659f8c67d0348350e12fde38fe8c4de1ff95dffe;hp=eaf49c7a1493b8c9aee46e60a846988128a406d4;hpb=10f37bf6f33a762626d7f1093b2f5450c1688667;p=tools%2Fmedcoupling.git diff --git a/src/MEDLoader/SauvReader.hxx b/src/MEDLoader/SauvReader.hxx index eaf49c7a1..533ae0ba4 100644 --- a/src/MEDLoader/SauvReader.hxx +++ b/src/MEDLoader/SauvReader.hxx @@ -1,9 +1,9 @@ -// Copyright (C) 2007-2012 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 @@ -35,23 +35,24 @@ namespace SauvUtilities { class FileReader; - class IntermediateMED; - class Group; - class DoubleField; + struct IntermediateMED; + struct Group; + struct DoubleField; } namespace ParaMEDMEM { class MEDFileData; -class MEDLOADER_EXPORT SauvReader : public ParaMEDMEM::RefCountObject +class SauvReader : public ParaMEDMEM::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 ParaMEDMEM::MEDFileData * loadInMEDFileDS(); + MEDLOADER_EXPORT ~SauvReader(); private: - + std::size_t getHeapMemorySizeWithoutChildren() const; + std::vector getDirectChildren() const; void readRecord2(); void readRecord4(); void readRecord7(); @@ -71,7 +72,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);