X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2Fmlt_service.h;h=ea451bff06b3f23da99b439d11c3b9bef35da9a1;hb=4112170ce8053261b9c67f58df87c2a3573b6602;hp=86cbb9692ed82389ef2ca5f3be935fba85a3ebf3;hpb=43b8637d43111412e4de944a4eeb3668ab838f9b;p=melted diff --git a/src/framework/mlt_service.h b/src/framework/mlt_service.h index 86cbb96..ea451bf 100644 --- a/src/framework/mlt_service.h +++ b/src/framework/mlt_service.h @@ -1,8 +1,9 @@ /** * \file mlt_service.h * \brief interface declaration for all service classes + * \see mlt_service_s * - * Copyright (C) 2003-2008 Ushodaya Enterprises Limited + * Copyright (C) 2003-2009 Ushodaya Enterprises Limited * \author Charles Yates * * This library is free software; you can redistribute it and/or @@ -24,7 +25,7 @@ #define _MLT_SERVICE_H_ #include "mlt_properties.h" -#include "mlt_profile.h" +#include "mlt_types.h" /** \brief Service abstract base class * @@ -41,6 +42,8 @@ * \event \em service-changed * \event \em property-changed * \properties \em mlt_type identifies the subclass + * \properties \em _mlt_service_hidden a flag that indicates whether to hide the mlt_service + * \properties \em mlt_service is the name of the implementation of the service * \properties \em resource is either the stream identifier or grandchild-class * \properties \em in when to start, what is started is service-specific * \properties \em out when to stop @@ -48,6 +51,7 @@ * See modules/core/filter_region.c and modules/core/filter_watermark.c for examples. * \properties \em disable Set this on a filter to disable it while keeping it in the object model. * \properties \em _profile stores the mlt_profile for a service + * \properties \em _unique_id is a unique identifier */ struct mlt_service_s @@ -89,6 +93,8 @@ extern void mlt_service_apply_filters( mlt_service self, mlt_frame frame, int in extern mlt_filter mlt_service_filter( mlt_service self, int index ); extern mlt_profile mlt_service_profile( mlt_service self ); extern void mlt_service_close( mlt_service self ); +extern void mlt_service_cache_put( mlt_service self, const char *name, void* data, int size, mlt_destructor destructor ); +extern mlt_cache_item mlt_service_cache_get( mlt_service self, const char *name ); #endif