[Mlt-devel] SF.net SVN: mlt: [1073] trunk/mlt++
Brought to you by:
ddennedy,
lilo_booter
From: <dde...@us...> - 2008-02-16 05:50:09
|
Revision: 1073 http://mlt.svn.sourceforge.net/mlt/?rev=1073&view=rev Author: ddennedy Date: 2008-02-15 21:50:06 -0800 (Fri, 15 Feb 2008) Log Message: ----------- MltRepository.{h,cpp}, swig/mltpp.i: added consumers, filters, producers, transitions, register_metadata, and metadata methods to Repository class Modified Paths: -------------- trunk/mlt++/src/MltRepository.cpp trunk/mlt++/src/MltRepository.h trunk/mlt++/swig/mltpp.i Modified: trunk/mlt++/src/MltRepository.cpp =================================================================== --- trunk/mlt++/src/MltRepository.cpp 2008-02-16 05:08:46 UTC (rev 1072) +++ trunk/mlt++/src/MltRepository.cpp 2008-02-16 05:50:06 UTC (rev 1073) @@ -19,6 +19,7 @@ #include "MltRepository.h" #include "MltProfile.h" +#include "MltProperties.h" using namespace Mlt; Repository::Repository( const char* directory ) : @@ -48,3 +49,33 @@ { return mlt_repository_create( instance, profile.get_profile(), type, service, arg ); } + +Properties *Repository::consumers( ) const +{ + return new Properties( mlt_repository_consumers( instance ) ); +} + +Properties *Repository::filters( ) const +{ + return new Properties( mlt_repository_filters( instance ) ); +} + +Properties *Repository::producers( ) const +{ + return new Properties( mlt_repository_producers( instance ) ); +} + +Properties *Repository::transitions( ) const +{ + return new Properties( mlt_repository_transitions( instance ) ); +} + +void Repository::register_metadata( mlt_service_type type, const char *service, Properties& metadata ) +{ + mlt_repository_register_metadata( instance, type, service, metadata.get_properties() ); +} + +Properties *Repository::metadata( mlt_service_type type, const char *service ) const +{ + return new Properties( mlt_repository_metadata( instance, type, service ) ); +} Modified: trunk/mlt++/src/MltRepository.h =================================================================== --- trunk/mlt++/src/MltRepository.h 2008-02-16 05:08:46 UTC (rev 1072) +++ trunk/mlt++/src/MltRepository.h 2008-02-16 05:50:06 UTC (rev 1073) @@ -31,6 +31,7 @@ namespace Mlt { class Profile; + class Properties; class MLTPP_DECLSPEC Repository { @@ -44,6 +45,12 @@ void register_service( mlt_service_type service_type, const char *service, void *symbol ); void *create( Profile& profile, mlt_service_type type, const char *service, void *arg ); + Properties *consumers( ) const; + Properties *filters( ) const; + Properties *producers( ) const; + Properties *transitions( ) const; + void register_metadata( mlt_service_type type, const char *service, Properties& metadata ); + Properties *metadata( mlt_service_type type, const char *service ) const; }; } Modified: trunk/mlt++/swig/mltpp.i =================================================================== --- trunk/mlt++/swig/mltpp.i 2008-02-16 05:08:46 UTC (rev 1072) +++ trunk/mlt++/swig/mltpp.i 2008-02-16 05:50:06 UTC (rev 1073) @@ -53,6 +53,11 @@ %newobject Miracle::execute( char * ); %newobject Miracle::push( char *, Service & ); %newobject Miracle::unit( int ); +%newobject Repository::consumers( ); +%newobject Repository::filters( ); +%newobject Repository::producers( ); +%newobject Repository::transitions( ); +%newobject Repository::metadata( mlt_service_type, const char * ); } /** Classes to wrap. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |