#include "MltFilter.h"
using namespace Mlt;
-mlt_service Filter::get_service( )
+Filter::Filter( char *id, char *service ) :
+ destroy( true ),
+ instance( NULL )
{
- return mlt_filter_service( get_filter( ) );
+ instance = mlt_factory_filter( id, service );
}
-int Filter::connect( Service &service, int index )
+Filter::Filter( Filter &filter ) :
+ destroy( false ),
+ instance( filter.get_filter( ) )
{
- return mlt_filter_connect( get_filter( ), service.get_service( ), index );
}
-void Filter::set_in_and_out( mlt_position in, mlt_position out )
+Filter::Filter( mlt_filter filter ) :
+ destroy( false ),
+ instance( filter )
{
- mlt_filter_set_in_and_out( get_filter( ), in, out );
}
-mlt_position Filter::get_in( )
+Filter::~Filter( )
{
- return mlt_filter_get_in( get_filter( ) );
+ if ( destroy )
+ mlt_filter_close( instance );
}
-mlt_position Filter::get_out( )
+mlt_filter Filter::get_filter( )
{
- return mlt_filter_get_out( get_filter( ) );
+ return instance;
}
-int Filter::get_track( )
+mlt_service Filter::get_service( )
{
- return mlt_filter_get_track( get_filter( ) );
+ return mlt_filter_service( get_filter( ) );
}
-mlt_filter FilterInstance::get_filter( )
+int Filter::connect( Service &service, int index )
{
- return instance;
+ return mlt_filter_connect( get_filter( ), service.get_service( ), index );
}
-FilterInstance::FilterInstance( char *id, char *service ) :
- destroy( true ),
- instance( NULL )
+void Filter::set_in_and_out( mlt_position in, mlt_position out )
{
- instance = mlt_factory_filter( id, service );
+ mlt_filter_set_in_and_out( get_filter( ), in, out );
}
-FilterInstance::FilterInstance( Filter &filter ) :
- destroy( false ),
- instance( filter.get_filter( ) )
+mlt_position Filter::get_in( )
{
+ return mlt_filter_get_in( get_filter( ) );
}
-FilterInstance::FilterInstance( mlt_filter filter ) :
- destroy( false ),
- instance( filter )
+mlt_position Filter::get_out( )
{
+ return mlt_filter_get_out( get_filter( ) );
}
-FilterInstance::~FilterInstance( )
+int Filter::get_track( )
{
- if ( destroy )
- mlt_filter_close( instance );
+ return mlt_filter_get_track( get_filter( ) );
}
+