X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/bf6e09ad4a0ea12c2a007bb19670bbb0710a7c6c..7973bd18cc5c47be83e6032a4018838fd99ffc65:/src/xbt/config.cpp diff --git a/src/xbt/config.cpp b/src/xbt/config.cpp index b4d7e54236..c50e8057a1 100644 --- a/src/xbt/config.cpp +++ b/src/xbt/config.cpp @@ -275,7 +275,7 @@ public: TypedConfigurationElement* variable = new TypedConfigurationElement(name, std::forward(a)...); XBT_DEBUG("Register cfg elm %s (%s) of type %s @%p in set %p)", name.c_str(), variable->get_description().c_str(), variable->get_type_name(), variable, this); - options.emplace(name, std::unique_ptr(variable)); + options[name].reset(variable); variable->update(); return variable; } @@ -307,7 +307,7 @@ inline ConfigurationElement* Config::get_dict_element(const std::string& name) XBT_INFO("Option %s has been renamed to %s. Consider switching.", name.c_str(), res->get_key().c_str()); return res; } else { - THROWF(not_found_error, 0, "Bad config key: %s", name.c_str()); + throw std::out_of_range("Bad config key: " + name); } } } @@ -495,6 +495,11 @@ void help() * @param value the value of the variable */ void xbt_cfg_set_int(const char *key, int value) +{ + sg_cfg_set_int(key, value); +} + +void sg_cfg_set_int(const char* key, int value) { (*simgrid_config)[key].set_value(value); } @@ -505,6 +510,11 @@ void xbt_cfg_set_int(const char *key, int value) * @param value the double to set */ void xbt_cfg_set_double(const char *key, double value) +{ + sg_cfg_set_double(key, value); +} + +void sg_cfg_set_double(const char* key, double value) { (*simgrid_config)[key].set_value(value); } @@ -516,6 +526,11 @@ void xbt_cfg_set_double(const char *key, double value) * */ void xbt_cfg_set_string(const char* key, const char* value) +{ + sg_cfg_set_string(key, value); +} + +void sg_cfg_set_string(const char* key, const char* value) { (*simgrid_config)[key].set_value(value); } @@ -526,6 +541,11 @@ void xbt_cfg_set_string(const char* key, const char* value) * @param value the value of the variable */ void xbt_cfg_set_boolean(const char *key, const char *value) +{ + sg_cfg_set_boolean(key, value); +} + +void sg_cfg_set_boolean(const char* key, const char* value) { (*simgrid_config)[key].set_value(simgrid::config::parse_bool(value)); } @@ -538,6 +558,11 @@ void xbt_cfg_set_boolean(const char *key, const char *value) * Returns the first value from the config set under the given name. */ int xbt_cfg_get_int(const char *key) +{ + return sg_cfg_get_int(key); +} + +int sg_cfg_get_int(const char* key) { return (*simgrid_config)[key].get_value(); } @@ -549,6 +574,11 @@ int xbt_cfg_get_int(const char *key) * Returns the first value from the config set under the given name. */ double xbt_cfg_get_double(const char *key) +{ + return sg_cfg_get_double(key); +} + +double sg_cfg_get_double(const char* key) { return (*simgrid_config)[key].get_value(); } @@ -561,6 +591,11 @@ double xbt_cfg_get_double(const char *key) * If there is more than one value, it will issue a warning. */ int xbt_cfg_get_boolean(const char *key) +{ + return sg_cfg_get_boolean(key); +} + +int sg_cfg_get_boolean(const char* key) { return (*simgrid_config)[key].get_value() ? 1 : 0; }