Class rework and simplification
[melted] / mlt++ / src / MltConsumer.h
index 37af2eb..0bd2ea1 100644 (file)
 
 namespace Mlt
 {
+       class Service;
+
        class Consumer : public Service
        {
+               private:
+                       bool destroy;
+                       mlt_consumer instance;
                public:
-                       virtual mlt_consumer get_consumer( ) = 0;
+                       Consumer( char *id, char *service = NULL );
+                       Consumer( Consumer &consumer );
+                       Consumer( mlt_consumer consumer );
+                       virtual ~Consumer( );
+                       virtual mlt_consumer get_consumer( );
                        mlt_service get_service( );
                        int connect( Service &service );
                        int start( );
                        int stop( );
                        int is_stopped( );
        };
-
-       class ConsumerInstance : public Consumer
-       {
-               private:
-                       bool destroy;
-                       mlt_consumer instance;
-               public:
-                       mlt_consumer get_consumer( );
-                       ConsumerInstance( char *id, char *service = NULL );
-                       ConsumerInstance( Consumer &consumer );
-                       ConsumerInstance( mlt_consumer consumer );
-                       virtual ~ConsumerInstance( );
-       };
 }
 
 #endif