Merge ../mlt
[melted] / mlt++ / src / MltService.h
index 10ec563..2079614 100644 (file)
@@ -21,6 +21,8 @@
 #ifndef _MLTPP_SERVICE_H_
 #define _MLTPP_SERVICE_H_
 
+#include "config.h"
+
 #include <framework/mlt.h>
 
 #include "MltProperties.h"
 namespace Mlt
 {
        class Properties;
+       class Filter;
        class Frame;
+       class Profile;
 
-       class Service : public Properties
+       class MLTPP_DECLSPEC Service : public Properties
        {
                private:
                        mlt_service instance;
@@ -41,12 +45,18 @@ namespace Mlt
                        Service( mlt_service service );
                        virtual ~Service( );
                        virtual mlt_service get_service( );
-                       virtual mlt_service get_connection( );
-                       mlt_properties get_properties( );
+                       void lock( );
+                       void unlock( );
+                       virtual mlt_properties get_properties( );
                        int connect_producer( Service &producer, int index = 0 );
                        Service *consumer( );
                        Service *producer( );
+                       Profile *profile( );
                        Frame *get_frame( int index = 0 );
+                       mlt_service_type type( );
+                       int attach( Filter &filter );
+                       int detach( Filter &filter );
+                       Filter *filter( int index );
        };
 }