Add a .gitignore file
[melted] / mlt++ / src / MltFactory.h
index fe70c81..aeec588 100644 (file)
@@ -1,6 +1,7 @@
 /**
  * MltFactory.h - MLT Wrapper
  * Copyright (C) 2004-2005 Charles Yates
+ * Copyright (C) 2008 Dan Dennedy <dan@dennedy.org>
  * Author: Charles Yates <charles.yates@pandora.be>
  *
  * This program is free software; you can redistribute it and/or modify
 #ifndef _MLTPP_FACTORY_H_
 #define _MLTPP_FACTORY_H_
 
+#include "config.h"
+
+#ifdef SWIG
+#define MLTPP_DECLSPEC
+#endif
+
 #include <framework/mlt.h>
 
 namespace Mlt
 {
+       class Properties;
        class Producer;
        class Filter;
        class Transition;
        class Consumer;
+       class Profile;
+       class Repository;
 
-       class Factory
+       class MLTPP_DECLSPEC Factory
        {
                public:
-                       static int init( char *arg = NULL );
-                       static Producer *producer( char *id, char *arg = NULL );
-                       static Filter *filter( char *id, char *arg = NULL );
-                       static Transition *transition( char *id, char *arg = NULL );
-                       static Consumer *consumer( char *id, char *arg = NULL );
+                       static Repository *init( const char *directory = NULL );
+                       static Properties *event_object( );
+                       static Producer *producer( Profile& profile, char *id, char *arg = NULL );
+                       static Filter *filter( Profile& profile, char *id, char *arg = NULL );
+                       static Transition *transition( Profile& profile, char *id, char *arg = NULL );
+                       static Consumer *consumer( Profile& profile, char *id, char *arg = NULL );
+#ifdef WIN32
+                       static char *getenv( const char * );
+                       static int setenv( const char *, const char * );
+#endif
                        static void close( );
        };
 }