X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/807bd388d45f157e3d45cc3cabda56dccff633d6..eb591b04924f23f6615a0f76b0b69359715be644:/include/xbt/config.hpp diff --git a/include/xbt/config.hpp b/include/xbt/config.hpp index 704c60fbe4..10cdc39aa4 100644 --- a/include/xbt/config.hpp +++ b/include/xbt/config.hpp @@ -19,12 +19,13 @@ #include #include -#include #include namespace simgrid { namespace config { +class Config; + template inline std::string to_string(T&& value) { @@ -43,6 +44,17 @@ inline std::string to_string(std::string&& value) return std::move(value); } +// Set default + +template XBT_PUBLIC void set_default(const char* name, T value); + +extern template XBT_PUBLIC void set_default(const char* name, int value); +extern template XBT_PUBLIC void set_default(const char* name, double value); +extern template XBT_PUBLIC void set_default(const char* name, bool value); +extern template XBT_PUBLIC void set_default(const char* name, std::string value); + +XBT_PUBLIC bool is_default(const char* name); + // Set config template XBT_PUBLIC void set_value(const char* name, T value); @@ -52,6 +64,9 @@ extern template XBT_PUBLIC void set_value(const char* name, double value extern template XBT_PUBLIC void set_value(const char* name, bool value); extern template XBT_PUBLIC void set_value(const char* name, std::string value); +XBT_PUBLIC void set_as_string(const char* name, const std::string& value); +XBT_PUBLIC void set_parse(std::string options); + // Get config template XBT_PUBLIC T const& get_value(const char* name); @@ -265,6 +280,9 @@ public: bool operator>=(U const& that) const { return value_ >= that; } }; +XBT_PUBLIC void finalize(); +XBT_PUBLIC void show_aliases(); +XBT_PUBLIC void help(); } } XBT_ATTRIB_DEPRECATED_v323("Please use simgrid::config::get_value") XBT_PUBLIC std::string