Merge ../mlt
[melted] / src / modules / westley / factory.c
index aedda30..87853f8 100644 (file)
  */
 
 #include <string.h>
+#include <framework/mlt.h>
 
-#include "consumer_westley.h"
-#include "producer_westley.h"
+extern mlt_consumer consumer_westley_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg );
+extern mlt_producer producer_westley_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg );
 
-void *mlt_create_producer( char *id, void *arg )
+MLT_REPOSITORY
 {
-       if ( !strcmp( id, "westley" ) )
-               return producer_westley_init( 0, arg );
-       if ( !strcmp( id, "westley-xml" ) )
-               return producer_westley_init( 1, arg );
-       return NULL;
+       MLT_REGISTER( consumer_type, "westley", consumer_westley_init );
+       MLT_REGISTER( producer_type, "westley", producer_westley_init );
+       MLT_REGISTER( producer_type, "westley-xml", producer_westley_init );
 }
-
-void *mlt_create_filter( char *id, void *arg )
-{
-       return NULL;
-}
-
-void *mlt_create_transition( char *id, void *arg )
-{
-       return NULL;
-}
-
-void *mlt_create_consumer( char *id, void *arg )
-{
-       if ( !strcmp( id, "westley" ) )
-               return consumer_westley_init( arg );
-       return NULL;
-}
-