X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDCoupling%2FMEDCouplingFieldTemplate.hxx;h=118e1dab1200d75706dbcb902cd8e240d9dbf975;hb=8f2a28585bcf231a8f976f36b7fb1d2eed8801c2;hp=a00ba79ff2406b484c6dec0df29db11e921e5c03;hpb=2516e3ae71a095b1fdbffbddd253af62f8c9fc7c;p=tools%2Fmedcoupling.git diff --git a/src/MEDCoupling/MEDCouplingFieldTemplate.hxx b/src/MEDCoupling/MEDCouplingFieldTemplate.hxx index a00ba79ff..118e1dab1 100644 --- a/src/MEDCoupling/MEDCouplingFieldTemplate.hxx +++ b/src/MEDCoupling/MEDCouplingFieldTemplate.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D +// Copyright (C) 2007-2020 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 @@ -16,7 +16,7 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// Author : Anthony Geay (CEA/DEN) +// Author : Anthony Geay (EDF R&D) #ifndef __PARAMEDMEM_MEDCOUPLINGFIELDTEMPLATE_HXX__ #define __PARAMEDMEM_MEDCOUPLINGFIELDTEMPLATE_HXX__ @@ -26,6 +26,7 @@ namespace MEDCoupling { class MEDCouplingFieldInt; + class MEDCouplingFieldFloat; class MEDCouplingFieldDouble; /*! * \brief A field template can be seen as a field without the array of values. @@ -41,24 +42,35 @@ namespace MEDCoupling { public: MEDCOUPLING_EXPORT static MEDCouplingFieldTemplate *New(const MEDCouplingFieldDouble& f); + MEDCOUPLING_EXPORT static MEDCouplingFieldTemplate *New(const MEDCouplingFieldFloat& f); MEDCOUPLING_EXPORT static MEDCouplingFieldTemplate *New(const MEDCouplingFieldInt& f); MEDCOUPLING_EXPORT static MEDCouplingFieldTemplate *New(TypeOfField type); + MEDCOUPLING_EXPORT static MEDCouplingFieldTemplate *NewWithoutCheck(const MEDCouplingFieldDouble& f); + MEDCOUPLING_EXPORT static MEDCouplingFieldTemplate *NewWithoutCheck(const MEDCouplingFieldFloat& f); + MEDCOUPLING_EXPORT static MEDCouplingFieldTemplate *NewWithoutCheck(const MEDCouplingFieldInt& f); + MEDCOUPLING_EXPORT std::string getClassName() const override { return std::string("MEDCouplingFieldTemplate"); } + MEDCOUPLING_EXPORT bool isEqualIfNotWhy(const MEDCouplingFieldTemplate *other, double meshPrec, std::string& reason) const; + MEDCOUPLING_EXPORT bool isEqual(const MEDCouplingFieldTemplate *other, double meshPrec) const; + MEDCOUPLING_EXPORT bool isEqualWithoutConsideringStr(const MEDCouplingFieldTemplate *other, double meshPrec) const; MEDCOUPLING_EXPORT std::string simpleRepr() const; MEDCOUPLING_EXPORT std::string advancedRepr() const; MEDCOUPLING_EXPORT void checkConsistencyLight() const; + MEDCOUPLING_EXPORT MCAuto clone(bool recDeepCpy) const; // - MEDCOUPLING_EXPORT void getTinySerializationIntInformation(std::vector& tinyInfo) const; + MEDCOUPLING_EXPORT void getTinySerializationIntInformation(std::vector& tinyInfo) const; MEDCOUPLING_EXPORT void getTinySerializationDbleInformation(std::vector& tinyInfo) const; MEDCOUPLING_EXPORT void getTinySerializationStrInformation(std::vector& tinyInfo) const; - MEDCOUPLING_EXPORT void resizeForUnserialization(const std::vector& tinyInfoI, DataArrayInt *&dataInt); - MEDCOUPLING_EXPORT void finishUnserialization(const std::vector& tinyInfoI, const std::vector& tinyInfoD, const std::vector& tinyInfoS); - MEDCOUPLING_EXPORT void serialize(DataArrayInt *&dataInt) const; + MEDCOUPLING_EXPORT void resizeForUnserialization(const std::vector& tinyInfoI, DataArrayIdType *&dataInt); + MEDCOUPLING_EXPORT void finishUnserialization(const std::vector& tinyInfoI, const std::vector& tinyInfoD, const std::vector& tinyInfoS); + MEDCOUPLING_EXPORT void serialize(DataArrayIdType *&dataInt) const; // MEDCOUPLING_EXPORT void reprQuickOverview(std::ostream& stream) const; private: - MEDCouplingFieldTemplate(const MEDCouplingFieldDouble& f); - MEDCouplingFieldTemplate(const MEDCouplingFieldInt& f); + MEDCouplingFieldTemplate(const MEDCouplingFieldDouble& f, bool isChecked=true); + MEDCouplingFieldTemplate(const MEDCouplingFieldFloat& f, bool isChecked=true); + MEDCouplingFieldTemplate(const MEDCouplingFieldInt& f, bool isChecked=true); MEDCouplingFieldTemplate(TypeOfField type); + MEDCouplingFieldTemplate(const MEDCouplingFieldTemplate& other, bool deepCopy); }; }