X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/53308f5235c4c6cc0eb263709ff0336a86207882..46d6cb52745b2e8f624fa1ba955c50f846a2be12:/lib/service/iservice.h diff --git a/lib/service/iservice.h b/lib/service/iservice.h index 22ffde6f..7f582495 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -286,8 +286,10 @@ public: sDescription, sServiceref, sTimeCreate, /* unix time or string */ + sFileSize, sCAIDs, + sCAIDPIDs, sVideoType, /* MPEG2 MPEG4 */ sTags, /* space seperated list of tags */ @@ -355,6 +357,8 @@ public: sTagCRC, sTagChannelMode, + sTransferBPS, + sUser = 0x100 }; enum { @@ -592,7 +596,8 @@ class iTimeshiftService: public iObject #endif public: virtual RESULT startTimeshift()=0; - virtual RESULT stopTimeshift()=0; + virtual RESULT stopTimeshift(bool swToLive=true)=0; + virtual RESULT setNextPlaybackFile(const char *fn)=0; // not needed by our internal timeshift.. but external plugin... virtual int isTimeshiftActive()=0; /* this essentially seeks to the relative end of the timeshift buffer */ @@ -718,6 +723,9 @@ public: /* for transferring a service... */ virtual SWIG_VOID(RESULT) getListOfFilenames(std::list &SWIG_OUTPUT)=0; + + /* a blocking call to reindex a file */ + virtual int reindex() = 0; // TODO: additional stuff, like a conversion interface? }; @@ -742,6 +750,19 @@ public: }; SWIG_TEMPLATE_TYPEDEF(ePtr, iStreamableServicePtr); +SWIG_IGNORE(iStreamedService); +class iStreamedService: public iObject +{ +#ifdef SWIG + iStreamedService(); + ~iStreamedService(); +#endif +public: + virtual PyObject *getBufferCharge()=0; + virtual int setBufferSize(int size)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr, iStreamedServicePtr); + class iServiceKeys_ENUMS { #ifdef SWIG @@ -812,6 +833,8 @@ public: evVideoFramerateChanged, evVideoProgressiveChanged, + evBuffering, + evStopped, evUser = 0x100 @@ -847,6 +870,7 @@ public: virtual SWIG_VOID(RESULT) audioDelay(ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) rdsDecoder(ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) stream(ePtr &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) streamed(ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) keys(ePtr &SWIG_OUTPUT)=0; }; SWIG_TEMPLATE_TYPEDEF(ePtr, iPlayableServicePtr);