MLT 6.26.0
mlt_service.h
Go to the documentation of this file.
1
23#ifndef MLT_SERVICE_H
24#define MLT_SERVICE_H
25
26#include "mlt_properties.h"
27#include "mlt_types.h"
28
58{
68 int ( *get_frame )( mlt_service self, mlt_frame_ptr frame, int index );
69
74 void *local;
75 void *child;
76};
77
78#define MLT_SERVICE_PROPERTIES( service ) ( &( service )->parent )
79
80extern int mlt_service_init( mlt_service self, void *child );
81extern void mlt_service_lock( mlt_service self );
82extern void mlt_service_unlock( mlt_service self );
84extern int mlt_service_connect_producer( mlt_service self, mlt_service producer, int index );
85extern int mlt_service_insert_producer( mlt_service self, mlt_service producer, int index );
86extern int mlt_service_disconnect_producer( mlt_service self, int index );
89extern int mlt_service_get_frame( mlt_service self, mlt_frame_ptr frame, int index );
93extern int mlt_service_attach( mlt_service self, mlt_filter filter );
94extern int mlt_service_detach( mlt_service self, mlt_filter filter );
95extern void mlt_service_apply_filters( mlt_service self, mlt_frame frame, int index );
97extern int mlt_service_move_filter( mlt_service self, int from, int to );
98extern mlt_filter mlt_service_filter( mlt_service self, int index );
101extern void mlt_service_close( mlt_service self );
102
103extern void mlt_service_cache_put( mlt_service self, const char *name, void* data, int size, mlt_destructor destructor );
104extern mlt_cache_item mlt_service_cache_get( mlt_service self, const char *name );
105extern void mlt_service_cache_set_size( mlt_service self, const char *name, int size );
106extern int mlt_service_cache_get_size( mlt_service self, const char *name );
108
109#endif
110
Properties class declaration.
mlt_filter mlt_service_filter(mlt_service self, int index)
int mlt_service_get_frame(mlt_service self, mlt_frame_ptr frame, int index)
int mlt_service_cache_get_size(mlt_service self, const char *name)
int mlt_service_insert_producer(mlt_service self, mlt_service producer, int index)
void mlt_service_unlock(mlt_service self)
mlt_service mlt_service_get_producer(mlt_service self)
mlt_properties mlt_service_properties(mlt_service self)
int mlt_service_attach(mlt_service self, mlt_filter filter)
void mlt_service_cache_purge(mlt_service self)
void mlt_service_set_profile(mlt_service self, mlt_profile profile)
mlt_service mlt_service_consumer(mlt_service self)
int mlt_service_detach(mlt_service self, mlt_filter filter)
void mlt_service_cache_put(mlt_service self, const char *name, void *data, int size, mlt_destructor destructor)
void mlt_service_cache_set_size(mlt_service self, const char *name, int size)
void mlt_service_close(mlt_service self)
int mlt_service_move_filter(mlt_service self, int from, int to)
mlt_service mlt_service_producer(mlt_service self)
int mlt_service_filter_count(mlt_service self)
int mlt_service_disconnect_producer(mlt_service self, int index)
mlt_cache_item mlt_service_cache_get(mlt_service self, const char *name)
int mlt_service_connect_producer(mlt_service self, mlt_service producer, int index)
mlt_service_type mlt_service_identify(mlt_service self)
mlt_profile mlt_service_profile(mlt_service self)
void mlt_service_lock(mlt_service self)
void mlt_service_apply_filters(mlt_service self, mlt_frame frame, int index)
int mlt_service_disconnect_all_producers(mlt_service self)
int mlt_service_init(mlt_service self, void *child)
Provides forward definitions of all public types.
void(* mlt_destructor)(void *)
pointer to destructor function
Definition mlt_types.h:212
mlt_service_type
The recognized subclasses of mlt_service.
Definition mlt_types.h:141
Cache item class.
Definition mlt_cache.c:50
Filter abstract service class.
Definition mlt_filter.h:40
Frame class.
Definition mlt_frame.h:74
Profile class.
Definition mlt_profile.h:35
Properties class.
Definition mlt_properties.h:37
void * child
the object of a subclass
Definition mlt_properties.h:38
Service abstract base class.
Definition mlt_service.h:58
int(* get_frame)(mlt_service self, mlt_frame_ptr frame, int index)
Get a frame of data (virtual function).
Definition mlt_service.h:68
void * child
the object of a subclass
Definition mlt_service.h:75
void * local
instance object
Definition mlt_service.h:74
mlt_destructor close
the destructor virtual function
Definition mlt_service.h:71
void * close_object
the object supplied to the close virtual function
Definition mlt_service.h:72
struct mlt_properties_s parent
A service extends properties.
Definition mlt_service.h:59