MLT 7.30.0
mlt_factory.h
Go to the documentation of this file.
1
22#ifndef MLT_FACTORY_H
23#define MLT_FACTORY_H
24
25#include "mlt_profile.h"
26#include "mlt_repository.h"
27#include "mlt_types.h"
28
62extern mlt_repository mlt_factory_init(const char *directory);
64extern const char *mlt_factory_directory();
65extern char *mlt_environment(const char *name);
66extern int mlt_environment_set(const char *name, const char *value);
69 const char *service,
70 const void *resource);
71extern mlt_filter mlt_factory_filter(mlt_profile profile, const char *service, const void *input);
72extern mlt_link mlt_factory_link(const char *service, const void *input);
74 const char *service,
75 const void *input);
77 const char *service,
78 const void *input);
79extern void mlt_factory_register_for_clean_up(void *ptr, mlt_destructor destructor);
80extern void mlt_factory_close();
82
85typedef struct
86{
87 const char *name;
88 const void *input;
89 void *service;
91
92#endif
mlt_producer mlt_factory_producer(mlt_profile profile, const char *service, const void *resource)
Fetch a producer from the repository.
Definition mlt_factory.c:329
mlt_link mlt_factory_link(const char *service, const void *input)
Fetch a link from the repository.
Definition mlt_factory.c:397
mlt_properties mlt_global_properties()
Definition mlt_factory.c:533
mlt_repository mlt_factory_repository()
Fetch the repository.
Definition mlt_factory.c:240
mlt_transition mlt_factory_transition(mlt_profile profile, const char *service, const void *input)
Fetch a transition from the repository.
Definition mlt_factory.c:425
int mlt_environment_set(const char *name, const char *value)
Set a value in the environment.
Definition mlt_factory.c:286
mlt_repository mlt_factory_init(const char *directory)
Construct the repository and factories.
Definition mlt_factory.c:110
const char * mlt_factory_directory()
Fetch the module directory used in this instance.
Definition mlt_factory.c:260
mlt_filter mlt_factory_filter(mlt_profile profile, const char *service, const void *input)
Fetch a filter from the repository.
Definition mlt_factory.c:370
char * mlt_environment(const char *name)
Get a value from the environment.
Definition mlt_factory.c:271
mlt_consumer mlt_factory_consumer(mlt_profile profile, const char *service, const void *input)
Fetch a consumer from the repository.
Definition mlt_factory.c:453
mlt_properties mlt_factory_event_object()
Fetch the events object.
Definition mlt_factory.c:250
void mlt_factory_close()
Close the factory.
Definition mlt_factory.c:512
void mlt_factory_register_for_clean_up(void *ptr, mlt_destructor destructor)
Register an object for clean up.
Definition mlt_factory.c:500
video output definition
provides a map between service and shared objects
Provides forward definitions of all public types.
void(* mlt_destructor)(void *)
pointer to destructor function
Definition mlt_types.h:269
Consumer abstract service class.
Definition mlt_consumer.h:94
The event data for all factory-related events.
Definition mlt_factory.h:86
const void * input
an argument supplied to initialize the service, typically a string
Definition mlt_factory.h:88
void * service
the service being created
Definition mlt_factory.h:89
const char * name
the name of the service requested
Definition mlt_factory.h:87
Filter abstract service class.
Definition mlt_filter.h:40
Producer abstract service class.
Definition mlt_producer.h:70
Profile class.
Definition mlt_profile.h:35
Properties class.
Definition mlt_properties.h:40
Repository class.
Definition mlt_repository.c:46
Transition abstract service class.
Definition mlt_transition.h:43