X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2Fmlt_events.h;h=55bb18f495b0a24e0f7c5a6f90467a84d0250866;hb=4fc3fa1bf4116848c423837437d75f103cdd0154;hp=e1582084e2f3f81eb7c27c6043bf7471c33aa177;hpb=b50585d9682a132848c9f6d040c3bd1c9d6fcafc;p=melted diff --git a/src/framework/mlt_events.h b/src/framework/mlt_events.h index e158208..55bb18f 100644 --- a/src/framework/mlt_events.h +++ b/src/framework/mlt_events.h @@ -1,21 +1,24 @@ -/* - * mlt_events.h -- event handling - * Copyright (C) 2004-2005 Ushodaya Enterprises Limited - * Author: Charles Yates +/** + * \file mlt_events.h + * \brief event handling + * \see mlt_events_struct * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. + * Copyright (C) 2004-2009 Ushodaya Enterprises Limited + * \author Charles Yates * - * This program is distributed in the hope that it will be useful, + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef _MLT_EVENTS_H_ @@ -27,19 +30,27 @@ 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 );