-/*
- * mlt_events.h -- event handling
- * Copyright (C) 2004-2005 Ushodaya Enterprises Limited
- * Author: Charles Yates <charles.yates@pandora.be>
+/**
+ * \file mlt_events.h
+ * \brief event handling
+ * \see mlt_events_struct
+ *
+ * Copyright (C) 2004-2009 Ushodaya Enterprises Limited
+ * \author Charles Yates <charles.yates@pandora.be>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
typedef void ( *mlt_transmitter )( void *, ... );
typedef void ( *mlt_listener )( void *, ... );
#else
+/** callback function to send an event message
+ *
+ */
typedef void ( *mlt_transmitter )( );
+/** event handler when receiving an event message
+ * \param the properties object on which the event was registered
+ * \param an opaque pointer to a service or really an object
+ * \param variable args supplied by the transmitter
+ */
typedef void ( *mlt_listener )( );
#endif
extern void mlt_events_init( mlt_properties self );
-extern int mlt_events_register( mlt_properties self, char *id, mlt_transmitter transmitter );
-extern void mlt_events_fire( mlt_properties self, char *id, ... );
-extern mlt_event mlt_events_listen( mlt_properties self, void *service, char *id, mlt_listener listener );
+extern int mlt_events_register( mlt_properties self, const char *id, mlt_transmitter transmitter );
+extern void mlt_events_fire( mlt_properties self, const char *id, ... );
+extern mlt_event mlt_events_listen( mlt_properties self, void *service, const char *id, mlt_listener listener );
extern void mlt_events_block( mlt_properties self, void *service );
extern void mlt_events_unblock( mlt_properties self, void *service );
extern void mlt_events_disconnect( mlt_properties self, void *service );
-extern mlt_event mlt_events_setup_wait_for( mlt_properties self, char *id );
+extern mlt_event mlt_events_setup_wait_for( mlt_properties self, const char *id );
extern void mlt_events_wait_for( mlt_properties self, mlt_event event );
extern void mlt_events_close_wait_for( mlt_properties self, mlt_event event );