X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2Fmlt_service.h;h=afdbc623e7afc86d95e665c6a209fe775fa02928;hb=8de8411c3af4b5746e9040a67e928364be9ac058;hp=88b91b5019b1c5d95d685322498f2dfe2127c35f;hpb=661165812e3410fe2f6f49d7af882b36a0efcf82;p=melted diff --git a/src/framework/mlt_service.h b/src/framework/mlt_service.h index 88b91b5..afdbc62 100644 --- a/src/framework/mlt_service.h +++ b/src/framework/mlt_service.h @@ -23,22 +23,6 @@ #include "mlt_properties.h" -/** State of a service. - - Note that a service may be dormant even though it's fully connected, - providing or consuming. -*/ - -typedef enum -{ - mlt_state_unknown = 0, - mlt_state_dormant = 1, - mlt_state_connected = 2, - mlt_state_providing = 4, - mlt_state_consuming = 8 -} -mlt_service_state; - /** The interface definition for all services. */ @@ -48,10 +32,6 @@ struct mlt_service_s struct mlt_properties_s parent; // Protected virtual - int ( *accepts_input )( mlt_service this ); - int ( *accepts_output )( mlt_service this ); - int ( *has_input )( mlt_service this ); - int ( *has_output )( mlt_service this ); int ( *get_frame )( mlt_service this, mlt_frame_ptr frame, int index ); // Private data @@ -63,17 +43,20 @@ struct mlt_service_s */ extern int mlt_service_init( mlt_service this, void *child ); -extern mlt_properties mlt_service_properties( mlt_service this ); extern int mlt_service_connect_producer( mlt_service this, mlt_service producer, int index ); -extern mlt_service_state mlt_service_get_state( mlt_service this ); +extern int mlt_service_get_frame( mlt_service this, mlt_frame_ptr frame, int index ); extern void mlt_service_close( mlt_service this ); -extern int mlt_service_accepts_input( mlt_service this ); -extern int mlt_service_accepts_output( mlt_service this ); -extern int mlt_service_has_input( mlt_service this ); -extern int mlt_service_has_output( mlt_service this ); -extern int mlt_service_get_frame( mlt_service this, mlt_frame_ptr frame, int index ); -extern int mlt_service_is_active( mlt_service this ); +// I'm not sure about this one - leaving it out of docs for now (only used in consumer_westley) +extern mlt_service mlt_service_get_producer( mlt_service this ); + +/** Return the properties object. +*/ + +static inline mlt_properties mlt_service_properties( mlt_service this ) +{ + return &this->parent; +} #endif