X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/1ca34b76da924ef9743ce07316d18e69ba45374f..67fe7b9d6c00b390a8598bc1e72d42d8343cb218:/src/surf/PropertyHolder.hpp diff --git a/src/surf/PropertyHolder.hpp b/src/surf/PropertyHolder.hpp index e7da433266..37a30efa9a 100644 --- a/src/surf/PropertyHolder.hpp +++ b/src/surf/PropertyHolder.hpp @@ -1,11 +1,12 @@ -/* Copyright (c) 2015. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2015-2018. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ #ifndef SRC_SURF_PROPERTYHOLDER_HPP_ #define SRC_SURF_PROPERTYHOLDER_HPP_ -#include +#include +#include namespace simgrid { namespace surf { @@ -17,18 +18,19 @@ namespace surf { class PropertyHolder { // DO NOT DERIVE THIS CLASS, or the diamond inheritance mayhem will get you public: - explicit PropertyHolder(xbt_dict_t props); + PropertyHolder() = default; ~PropertyHolder(); - const char *getProperty(const char*id); - void setProperty(const char*id, const char*value); + const char* get_property(std::string key); + void set_property(std::string id, std::string value); - /* FIXME: This should not be exposed, as users may do bad things with the dict they got (it's not a copy). + /* FIXME: This should not be exposed, as users may do bad things with the map they got (it's not a copy). * But some user API expose this call so removing it is not so easy. */ - xbt_dict_t getProperties(); + std::unordered_map* get_properties(); + private: - xbt_dict_t properties_ = nullptr; + std::unordered_map* properties_ = nullptr; }; } /* namespace surf */