X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/bbedbd76e313e3115580d819efc608d3ad9dfc9d..b32851030de5d3706883afa87598cba8a8226f5d:/lib/service/iservice.h diff --git a/lib/service/iservice.h b/lib/service/iservice.h index ca2348ca..2c395a9c 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -38,7 +38,8 @@ public: flagDirectory=isDirectory|mustDescent|canDescent, shouldSort=8, // should be ASCII-sorted according to service_name. great for directories. hasSortKey=16, // has a sort key in data[3]. not having a sort key implies 0. - sort1=32 // sort key is 1 instead of 0 + sort1=32, // sort key is 1 instead of 0 + isMarker=64 // Marker }; int flags; // flags will NOT be compared. @@ -205,6 +206,8 @@ typedef long long pts_t; Hide the result only if there is another way to check for failure! */ +TEMPLATE_TYPEDEF(ePtr, eServiceEventPtr); + class iStaticServiceInformation: public iObject { #ifdef SWIG @@ -226,8 +229,6 @@ public: TEMPLATE_TYPEDEF(ePtr, iStaticServiceInformationPtr); -TEMPLATE_TYPEDEF(ePtr, eServiceEventPtr); - class iServiceInformation: public iObject { #ifdef SWIG @@ -389,6 +390,21 @@ public: TEMPLATE_TYPEDEF(ePtr, iAudioChannelSelectionPtr); +class iAudioDelay: public iObject +{ +#ifdef SWIG + iAudioDelay(); + ~iAudioDelay(); +#endif +public: + virtual int getAC3Delay()=0; + virtual int getPCMDelay()=0; + virtual void setAC3Delay(int)=0; + virtual void setPCMDelay(int)=0; +}; + +TEMPLATE_TYPEDEF(ePtr, iAudioDelayPtr); + class iSubserviceList: public iObject { #ifdef SWIG @@ -436,6 +452,19 @@ public: TEMPLATE_TYPEDEF(ePtr, iCueSheetPtr); +class eWidget; +class PyList; + +class iSubtitleOutput: public iObject +{ +public: + virtual RESULT enableSubtitles(eWidget *parent, PyObject *entry)=0; + virtual RESULT disableSubtitles(eWidget *parent)=0; + virtual PyObject *getSubtitleList()=0; +}; + +TEMPLATE_TYPEDEF(ePtr, iSubtitleOutputPtr); + class iPlayableService: public iObject { #ifdef SWIG @@ -479,6 +508,8 @@ public: virtual SWIG_VOID(RESULT) frontendInfo(ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) timeshift(ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) cueSheet(ePtr &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) subtitle(ePtr &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) audioDelay(ePtr &SWIG_OUTPUT)=0; }; TEMPLATE_TYPEDEF(ePtr, iPlayableServicePtr); @@ -510,7 +541,7 @@ public: /* flush changes */ virtual RESULT flushChanges()=0; /* adds a service to a list */ - virtual RESULT addService(eServiceReference &ref)=0; + virtual RESULT addService(eServiceReference &ref, eServiceReference before=eServiceReference())=0; /* removes a service from a list */ virtual RESULT removeService(eServiceReference &ref)=0; /* moves a service in a list, only if list suppports a specific sort method. */