MLT 7.30.0
mlt_events.h
Go to the documentation of this file.
1
23#ifndef MLT_EVENTS_H
24#define MLT_EVENTS_H
25
26#include "mlt_types.h"
27
29typedef struct
30{
31 union {
32 int i;
33 void *p;
34 } u;
36
45
51typedef void (*mlt_listener)(mlt_properties, void *, mlt_event_data);
52
54extern int mlt_events_register(mlt_properties self, const char *id);
55extern int mlt_events_fire(mlt_properties self, const char *id, mlt_event_data);
57 void *listener_data,
58 const char *id,
59 mlt_listener listener);
60extern void mlt_events_block(mlt_properties self, void *listener_data);
61extern void mlt_events_unblock(mlt_properties self, void *listener_data);
62extern void mlt_events_disconnect(mlt_properties self, void *listener_data);
63
67
68extern void mlt_event_inc_ref(mlt_event self);
69extern void mlt_event_block(mlt_event self);
70extern void mlt_event_unblock(mlt_event self);
71extern void mlt_event_close(mlt_event self);
72
82
83#endif
void mlt_events_init(mlt_properties self)
int mlt_event_data_to_int(mlt_event_data)
void mlt_event_unblock(mlt_event self)
mlt_event mlt_events_listen(mlt_properties self, void *listener_data, const char *id, mlt_listener listener)
void * mlt_event_data_to_object(mlt_event_data)
void mlt_event_inc_ref(mlt_event self)
void mlt_event_block(mlt_event self)
void mlt_event_close(mlt_event self)
mlt_event_data mlt_event_data_from_string(const char *value)
int mlt_events_fire(mlt_properties self, const char *id, mlt_event_data)
void(* mlt_listener)(mlt_properties, void *, mlt_event_data)
event handler when receiving an event message
Definition mlt_events.h:51
void mlt_events_wait_for(mlt_properties self, mlt_event event)
int mlt_events_register(mlt_properties self, const char *id)
const char * mlt_event_data_to_string(mlt_event_data)
mlt_event_data mlt_event_data_from_frame(mlt_frame)
mlt_event_data mlt_event_data_from_int(int value)
mlt_event mlt_events_setup_wait_for(mlt_properties self, const char *id)
void mlt_events_disconnect(mlt_properties self, void *listener_data)
mlt_event_data mlt_event_data_from_object(void *)
void mlt_events_close_wait_for(mlt_properties self, mlt_event event)
mlt_frame mlt_event_data_to_frame(mlt_event_data)
void mlt_events_block(mlt_properties self, void *listener_data)
void mlt_events_unblock(mlt_properties self, void *listener_data)
mlt_event_data mlt_event_data_none()
Provides forward definitions of all public types.
void *(* mlt_thread_function_t)(void *)
generic thread function pointer
Definition mlt_types.h:271
struct mlt_properties_s * mlt_properties
pointer to Properties object
Definition mlt_types.h:245
An event data structure to convey thread parameters.
Definition mlt_events.h:39
int * priority
a priority level for the thread
Definition mlt_events.h:41
void ** thread
a pointer to a thread object or handle as determined by you
Definition mlt_events.h:40
mlt_thread_function_t function
a pointer to the function that thread will run
Definition mlt_events.h:42
void * data
an opaque data pointer to pass along
Definition mlt_events.h:43
A container for data that may be supplied with an event.
Definition mlt_events.h:30
int i
Definition mlt_events.h:32
void * p
Definition mlt_events.h:33
Event class.
Definition mlt_events.c:62
Frame class.
Definition mlt_frame.h:90
Properties class.
Definition mlt_properties.h:40