diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/xine.h.tmpl.in | 40 |
1 files changed, 39 insertions, 1 deletions
diff --git a/include/xine.h.tmpl.in b/include/xine.h.tmpl.in index cac664dfd..797845354 100644 --- a/include/xine.h.tmpl.in +++ b/include/xine.h.tmpl.in @@ -29,7 +29,7 @@ \endverbatim */ /* - * $Id: xine.h.tmpl.in,v 1.28 2001/07/10 21:07:55 f1rmb Exp $ + * $Id: xine.h.tmpl.in,v 1.29 2001/07/14 23:17:37 richwareham Exp $ * */ @@ -40,6 +40,8 @@ #include <unistd.h> #include <sys/types.h> +#include <xine/events.h> + /** * \defgroup versgroup Version constants @@ -654,4 +656,40 @@ ao_functions_t *xine_load_audio_output_plugin(config_values_t *config, char *id) /** @} end of xine_api */ +/** + * @defgroup eventgroup Sending events + * Event dispatcher mechanism + * @{ + */ + +/** + * Event listener callback. + */ +typedef void (*event_listener_t) (xine_t *xine, event_t *event, void *data); + +/** + * \fn xine_register_event_listener(event_listener_t *listener) + * \brief registers an event listener callback. + * \return 0 if the listener was registerd, non-zero if it could not. + */ + +int xine_register_event_listener(xine_t *this, event_listener_t *listener); + +/** + * \fn xine_remove_event_listener(event_listener_t *listener) + * \brief Attempts to remove a registered event listener. + * \return 0 if the listener was removes, non-zero if it wasn't (e.g. not found). + */ + +int xine_remove_event_listener(xine_t *this, event_listener_t *listener); + +/** + * \fn xine_send_event(event_t *event) + * \brief sends an event to all listeners. + */ + +void xine_send_event(xine_t *this, event_t *event, void *data); + +/** @} end of eventgroup */ + #endif |