X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2db7ca916c24c9f6da047de60550dda47690e572..bace8e5a6ff160e200f799250796c5303dc487ba:/include/xbt/config.h diff --git a/include/xbt/config.h b/include/xbt/config.h index ed4c4ef1ce..4061014295 100644 --- a/include/xbt/config.h +++ b/include/xbt/config.h @@ -131,10 +131,11 @@ struct xbt_boolean_couple { }; /** \brief Callback types. They get the name of the modified entry, and the position of the changed value */ -typedef void (*xbt_cfg_cb_t) (const char *, int); +typedef void (*xbt_cfg_cb_t) (const char * name); +typedef void (*xbt_cfg_cb_ext_t)(const char * name, void* cb_data); +typedef void (*xbt_cfg_cb_free_t)(void* cb_data); XBT_PUBLIC(xbt_cfg_t) xbt_cfg_new(void); -XBT_PUBLIC(void) xbt_cfg_cpy(xbt_cfg_t tocopy, /* OUT */xbt_cfg_t * whereto); XBT_PUBLIC(void) xbt_cfg_free(xbt_cfg_t * cfg); XBT_PUBLIC(void) xbt_cfg_dump(const char *name, const char *indent, xbt_cfg_t cfg); @@ -147,18 +148,19 @@ XBT_PUBLIC(void) xbt_cfg_dump(const char *name, const char *indent, xbt_cfg_t cf * * @{ */ -XBT_PUBLIC(void) xbt_cfg_register(xbt_cfg_t * cfg, const char *name, const char *description, - e_xbt_cfgelm_type_t type, int min, int max, xbt_cfg_cb_t cb_set); -XBT_PUBLIC(void) xbt_cfg_register_double (const char *name, const char *desc, double default_val, xbt_cfg_cb_t cb_set); -XBT_PUBLIC(void) xbt_cfg_register_int (const char *name, const char *desc, int default_val, xbt_cfg_cb_t cb_set); -XBT_PUBLIC(void) xbt_cfg_register_string (const char *name, const char *desc, const char*default_val,xbt_cfg_cb_t cb_set); -XBT_PUBLIC(void) xbt_cfg_register_boolean(const char *name, const char *desc, const char*default_val,xbt_cfg_cb_t cb_set); +XBT_PUBLIC(void) xbt_cfg_register_double (const char *name, double default_val, xbt_cfg_cb_t cb_set, const char *desc); +XBT_PUBLIC(void) xbt_cfg_register_int (const char *name, int default_val, xbt_cfg_cb_t cb_set, const char *desc); +XBT_PUBLIC(void) xbt_cfg_register_string (const char *name, const char*default_val,xbt_cfg_cb_t cb_set, const char *desc); +XBT_PUBLIC(void) xbt_cfg_register_boolean(const char *name, const char*default_val,xbt_cfg_cb_t cb_set, const char *desc); XBT_PUBLIC(void) xbt_cfg_register_alias(const char *newname, const char *oldname); XBT_PUBLIC(void) xbt_cfg_register_str(xbt_cfg_t * cfg, const char *entry); -XBT_PUBLIC(void) xbt_cfg_aliases(xbt_cfg_t cfg); -XBT_PUBLIC(void) xbt_cfg_help(xbt_cfg_t cfg); -XBT_PUBLIC(void) xbt_cfg_check(void); +XBT_PUBLIC(void) xbt_cfg_register_ext( + const char *name, const char *desc, e_xbt_cfgelm_type_t type, + xbt_cfg_cb_ext_t cb, void* data, xbt_cfg_cb_free_t data_free); + +XBT_PUBLIC(void) xbt_cfg_aliases(void); +XBT_PUBLIC(void) xbt_cfg_help(void); XBT_PUBLIC(e_xbt_cfgelm_type_t) xbt_cfg_get_type(xbt_cfg_t cfg, const char *name); /* @} */ /** @defgroup XBT_cfg_get Getting the stored values @@ -178,12 +180,6 @@ XBT_PUBLIC(int) xbt_cfg_get_int(const char *name); XBT_PUBLIC(double) xbt_cfg_get_double(const char *name); XBT_PUBLIC(char *) xbt_cfg_get_string(const char *name); XBT_PUBLIC(int) xbt_cfg_get_boolean(const char *name); -XBT_PUBLIC(xbt_dynar_t) xbt_cfg_get_dynar(const char *name); - -XBT_PUBLIC(int) xbt_cfg_get_int_at(xbt_cfg_t cfg, const char *name, int pos); -XBT_PUBLIC(double) xbt_cfg_get_double_at(xbt_cfg_t cfg, const char *name, int pos); -XBT_PUBLIC(char *) xbt_cfg_get_string_at(xbt_cfg_t cfg, const char *name, int pos); -XBT_PUBLIC(int) xbt_cfg_get_boolean_at(xbt_cfg_t cfg, const char *name, int pos); /** @} */