diff options
author | Thibaut Mattern <thibaut.mattern@gmail.com> | 2007-04-05 18:23:21 +0200 |
---|---|---|
committer | Thibaut Mattern <thibaut.mattern@gmail.com> | 2007-04-05 18:23:21 +0200 |
commit | b69a5d17e266401901adf5e62ca7d4f4e94d82e0 (patch) | |
tree | d6ee4125b12ea3b8e2d4a3d5d912d33c306737b7 /src/xine-engine/configfile.h | |
parent | 66f1aca41a4ff7668e5c21f59c3b2170d3d265e7 (diff) | |
download | xine-lib-b69a5d17e266401901adf5e62ca7d4f4e94d82e0.tar.gz xine-lib-b69a5d17e266401901adf5e62ca7d4f4e94d82e0.tar.bz2 |
Added a new callback.
This callback is called when a new entry is registered.
The plan is register and call back a plugin loader function.
Diffstat (limited to 'src/xine-engine/configfile.h')
-rw-r--r-- | src/xine-engine/configfile.h | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/xine-engine/configfile.h b/src/xine-engine/configfile.h index 859214d1c..e98138fa3 100644 --- a/src/xine-engine/configfile.h +++ b/src/xine-engine/configfile.h @@ -50,6 +50,7 @@ extern "C" { typedef struct cfg_entry_s cfg_entry_t; typedef struct config_values_s config_values_t; + struct cfg_entry_s { cfg_entry_t *next; config_values_t *config; @@ -175,7 +176,7 @@ struct config_values_s { cfg_entry_t* (*lookup_entry) (config_values_t *self, const char *key); /* - * unregister callback function + * unregister entry callback function */ void (*unregister_callback) (config_values_t *self, const char *key); @@ -185,11 +186,27 @@ struct config_values_s { void (*dispose) (config_values_t *self); /* + * callback called when a new config entry is registered + */ + void (*set_new_entry_callback) (config_values_t *self, xine_config_cb_t new_entry_cb, void *cb_data); + + /* + * unregister the callback + */ + void (*unset_new_entry_callback) (config_values_t *self); + + /* * config values are stored here: */ cfg_entry_t *first, *last, *cur; /* + * new entry callback + */ + xine_config_cb_t new_entry_cb; + void *new_entry_cbdata; + + /* * mutex for modification to the config */ pthread_mutex_t config_lock; |