X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDCoupling%2FMEDCouplingRefCountObject.hxx;h=b0fb54ce1c639821b524782b87efafed864760f6;hb=e7835cba1eb17f50ef4e130c2cb8d0f54bc25083;hp=e04bcbaa37f2191893b7fdb7f3c10ab691ee90b8;hpb=bd238ae917aa20ba3fe2f7569883d619b7e4f7a9;p=tools%2Fmedcoupling.git diff --git a/src/MEDCoupling/MEDCouplingRefCountObject.hxx b/src/MEDCoupling/MEDCouplingRefCountObject.hxx index e04bcbaa3..b0fb54ce1 100644 --- a/src/MEDCoupling/MEDCouplingRefCountObject.hxx +++ b/src/MEDCoupling/MEDCouplingRefCountObject.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D +// Copyright (C) 2007-2016 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 @@ -24,6 +24,7 @@ #include "MEDCoupling.hxx" #include +#include #include #include #include @@ -63,7 +64,8 @@ namespace MEDCoupling MEDCOUPLING_EXPORT int MEDCouplingSizeOfVoidStar(); MEDCOUPLING_EXPORT bool MEDCouplingByteOrder(); MEDCOUPLING_EXPORT const char *MEDCouplingByteOrderStr(); - + MEDCOUPLING_EXPORT bool IsCXX11Compiled(); + class BigMemoryObject { public: @@ -103,6 +105,26 @@ namespace MEDCoupling MEDCOUPLING_EXPORT RefCountObject(const RefCountObject& other); MEDCOUPLING_EXPORT virtual ~RefCountObject(); }; + + class GlobalDict + { + public: + MEDCOUPLING_EXPORT static GlobalDict *GetInstance(); + MEDCOUPLING_EXPORT bool hasKey(const std::string& key) const; + MEDCOUPLING_EXPORT std::string value(const std::string& key) const; + MEDCOUPLING_EXPORT std::vector keys() const; + MEDCOUPLING_EXPORT void erase(const std::string& key); + MEDCOUPLING_EXPORT void clear(); + MEDCOUPLING_EXPORT void setKeyValue(const std::string& key, const std::string& val); + MEDCOUPLING_EXPORT void setKeyValueForce(const std::string& key, const std::string& val); + MEDCOUPLING_EXPORT std::string printSelf() const; + private: + GlobalDict() { } + private: + static GlobalDict *UNIQUE_INSTANCE; + private: + std::map _my_map; + }; } #endif