+void xbt_cfg_register_double(const char *name, const char *desc, double default_value,xbt_cfg_cb_t cb_set){
+ xbt_cfg_register(simgrid_config,name,desc,xbt_cfgelm_double,1,1,cb_set);
+ xbt_cfg_setdefault_double(name, default_value);
+}
+void xbt_cfg_register_int(const char *name, const char *desc, int default_value,xbt_cfg_cb_t cb_set){
+ xbt_cfg_register(simgrid_config,name,desc,xbt_cfgelm_int,1,1,cb_set);
+ xbt_cfg_setdefault_int(name, default_value);
+}
+void xbt_cfg_register_string(const char *name, const char *desc, const char *default_value, xbt_cfg_cb_t cb_set){
+ xbt_cfg_register(simgrid_config,name,desc,xbt_cfgelm_string,1,1,cb_set);
+ xbt_cfg_setdefault_string(name, default_value);
+}
+void xbt_cfg_register_boolean(const char *name, const char *desc, const char*default_value,xbt_cfg_cb_t cb_set){
+ xbt_cfg_register(simgrid_config,name,desc,xbt_cfgelm_boolean,1,1,cb_set);
+ xbt_cfg_setdefault_boolean(name, default_value);
+}
+
+void xbt_cfg_register_alias(const char *newname, const char *oldname)
+{
+ if (simgrid_config == NULL)
+ simgrid_config = xbt_cfg_new();
+
+ xbt_cfgelm_t res = xbt_dict_get_or_null(simgrid_config, oldname);
+ xbt_assert(NULL == res, "Refusing to register the option '%s' twice.", oldname);
+
+ res = xbt_dict_get_or_null(simgrid_config, newname);
+ xbt_assert(res, "Cannot define an alias to the non-existing option '%s'.", newname);
+
+ res = xbt_new0(s_xbt_cfgelm_t, 1);
+ XBT_DEBUG("Register cfg alias %s -> %s)",oldname,newname);
+
+ res->desc = bprintf("Deprecated alias for %s",newname);
+ res->type = xbt_cfgelm_alias;
+ res->min = 1;
+ res->max = 1;
+ res->isdefault = 1;
+ res->content = (xbt_dynar_t)newname;
+
+ xbt_dict_set(simgrid_config, oldname, res, NULL);