X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/946fb003e4be2e1485308d7fc5bb7274732751a3..83a674f998012f616a3ed7e7b7043e498fd93e09:/lib/service/iservice.h diff --git a/lib/service/iservice.h b/lib/service/iservice.h index 22ffde6f..c35313f0 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -286,6 +286,7 @@ public: sDescription, sServiceref, sTimeCreate, /* unix time or string */ + sFileSize, sCAIDs, sVideoType, /* MPEG2 MPEG4 */ @@ -592,7 +593,7 @@ class iTimeshiftService: public iObject #endif public: virtual RESULT startTimeshift()=0; - virtual RESULT stopTimeshift()=0; + virtual RESULT stopTimeshift(bool swToLive=true)=0; virtual int isTimeshiftActive()=0; /* this essentially seeks to the relative end of the timeshift buffer */ @@ -718,6 +719,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 +746,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 +829,8 @@ public: evVideoFramerateChanged, evVideoProgressiveChanged, + evBuffering, + evStopped, evUser = 0x100 @@ -847,6 +866,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);