42 #define MLT_CHAIN_PRODUCER(chain) (&(chain)->parent)
43 #define MLT_CHAIN_SERVICE(chain) MLT_PRODUCER_SERVICE(MLT_CHAIN_PRODUCER(chain))
44 #define MLT_CHAIN_PROPERTIES(chain) MLT_SERVICE_PROPERTIES(MLT_CHAIN_SERVICE(chain))
abstraction for all producer services
Chain class.
Definition: mlt_chain.h:37
mlt_producer mlt_chain_get_source(mlt_chain self)
Get the source producer.
Definition: mlt_chain.c:225
int mlt_chain_attach(mlt_chain self, mlt_link link)
Attach a link.
Definition: mlt_chain.c:243
int mlt_chain_detach(mlt_chain self, mlt_link link)
Detach a link.
Definition: mlt_chain.c:282
void * local
instance object
Definition: mlt_chain.h:39
mlt_link mlt_chain_link(mlt_chain self, int index)
Retrieve an attached link.
Definition: mlt_chain.c:372
int mlt_chain_move_link(mlt_chain self, int from, int to)
Reorder the attached links.
Definition: mlt_chain.c:332
void mlt_chain_set_source(mlt_chain self, mlt_producer source)
Set the source producer.
Definition: mlt_chain.c:110
int mlt_chain_link_count(mlt_chain self)
Get the number of links attached.
Definition: mlt_chain.c:313
struct mlt_producer_s parent
Definition: mlt_chain.h:38
void mlt_chain_close(mlt_chain self)
Close the chain and free its resources.
Definition: mlt_chain.c:389
mlt_chain mlt_chain_init(mlt_profile profile)
Construct a chain.
Definition: mlt_chain.c:62
void mlt_chain_attach_normalizers(mlt_chain self)
Attach normalizer links.
Definition: mlt_chain.c:414
Link class.
Definition: mlt_link.h:37
Producer abstract service class.
Definition: mlt_producer.h:70
Profile class.
Definition: mlt_profile.h:35