X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2Fmlt_factory.h;h=29dc62a9fef1b3e41bbc49c57a0c326090a67069;hb=f4963a6aa07644399b273b5d2b1f9299c9047414;hp=749a2011bb9da9445f7c5078060ebefc6bfe3fe0;hpb=d57832919959e117a68d856b172c090746fc3399;p=melted diff --git a/src/framework/mlt_factory.h b/src/framework/mlt_factory.h index 749a201..29dc62a 100644 --- a/src/framework/mlt_factory.h +++ b/src/framework/mlt_factory.h @@ -1,7 +1,9 @@ -/* - * mlt_factory.h -- the factory method interfaces - * Copyright (C) 2003-2004 Ushodaya Enterprises Limited - * Author: Charles Yates +/** + * \file mlt_factory.h + * \brief the factory method interfaces + * + * Copyright (C) 2003-2009 Ushodaya Enterprises Limited + * \author Charles Yates * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -22,17 +24,31 @@ #define _MLT_FACTORY_H #include "mlt_types.h" +#include "mlt_profile.h" +#include "mlt_repository.h" + +/** + * \event \em producer-create-request fired when mlt_factory_producer is called + * \event \em producer-create-done fired when a producer registers itself + * \event \em filter-create-request fired when mlt_factory_filter is called + * \event \em filter-create-done fired when a filter registers itself + * \event \em transition-create-request fired when mlt_factory_transition is called + * \event \em transition-create-done fired when a transition registers itself + * \event \em consumer-create-request fired when mlt_factory_consumer is called + * \event \em consumer-create-done fired when a consumer registers itself + */ -extern int mlt_factory_init( const char *prefix ); -extern const char *mlt_factory_prefix( ); +extern mlt_repository mlt_factory_init( const char *directory ); +extern const char *mlt_factory_directory( ); extern char *mlt_environment( const char *name ); extern int mlt_environment_set( const char *name, const char *value ); extern mlt_properties mlt_factory_event_object( ); -extern mlt_producer mlt_factory_producer( const char *name, void *input ); -extern mlt_filter mlt_factory_filter( const char *name, void *input ); -extern mlt_transition mlt_factory_transition( const char *name, void *input ); -extern mlt_consumer mlt_factory_consumer( const char *name, void *input ); +extern mlt_producer mlt_factory_producer( mlt_profile profile, const char *name, const void *input ); +extern mlt_filter mlt_factory_filter( mlt_profile profile, const char *name, const void *input ); +extern mlt_transition mlt_factory_transition( mlt_profile profile, const char *name, const void *input ); +extern mlt_consumer mlt_factory_consumer( mlt_profile profile, const char *name, const void *input ); extern void mlt_factory_register_for_clean_up( void *ptr, mlt_destructor destructor ); extern void mlt_factory_close( ); +extern mlt_properties mlt_global_properties( ); #endif