diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2008-03-27 19:15:11 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2008-03-27 19:15:11 +0000 |
| commit | 912690ec8896bf6dfda931a6846516cc3b4ca979 (patch) | |
| tree | 61a45287822cd67849a60de2a25f8589d818e0ae /lib | |
| parent | 69c8d11f9824e421cd0a1231723c4b7f246e75c0 (diff) | |
| download | enigma2-912690ec8896bf6dfda931a6846516cc3b4ca979.tar.gz enigma2-912690ec8896bf6dfda931a6846516cc3b4ca979.zip | |
add iServiceKeys interface (No not what you think ;) it simply means its
now possible to deliver normal button presses into services)
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/service/iservice.h | 68 | ||||
| -rw-r--r-- | lib/service/servicedvb.h | 1 | ||||
| -rw-r--r-- | lib/service/servicemp3.h | 1 | ||||
| -rw-r--r-- | lib/service/servicexine.h | 1 |
4 files changed, 52 insertions, 19 deletions
diff --git a/lib/service/iservice.h b/lib/service/iservice.h index 462f3dc5..9f8afd26 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -665,6 +665,54 @@ public: }; SWIG_TEMPLATE_TYPEDEF(ePtr<iServiceOfflineOperations>, iServiceOfflineOperationsPtr); +SWIG_IGNORE(iStreamableService); +class iStreamableService: public iObject +{ +#ifdef SWIG + iStreamableService(); + ~iStreamableService(); +#endif +public: + /* returns a dict: + { "demux": <n>, + "pids": [(x,type),(y,type),(z,type),..], + ... + } + with type being "video", "audio", "pmt", "pat"... + */ + virtual PyObject *getStreamingData()=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iStreamableService>, iStreamableServicePtr); + +class iServiceKeys_ENUMS +{ +#ifdef SWIG + iServiceKeys_ENUMS(); + ~iServiceKeys_ENUMS(); +#endif +public: + enum { + keyLeft, + keyRight, + keyUp, + keyDown, + keyOk, + keyUser = 0x100 + }; +}; + +SWIG_IGNORE(iServiceKeys); +class iServiceKeys: public iServiceKeys_ENUMS, public iObject +{ +#ifdef SWIG + iServiceKeys(); + ~iServiceKeys(); +#endif +public: + virtual SWIG_VOID(RESULT) keyPressed(int key)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iServiceKeys>, iServiceKeysPtr); + class iPlayableService_ENUMS { #ifdef SWIG @@ -707,25 +755,6 @@ public: }; }; -SWIG_IGNORE(iStreamableService); -class iStreamableService: public iObject -{ -#ifdef SWIG - iStreamableService(); - ~iStreamableService(); -#endif -public: - /* returns a dict: - { "demux": <n>, - "pids": [(x,type),(y,type),(z,type),..], - ... - } - with type being "video", "audio", "pmt", "pat"... - */ - virtual PyObject *getStreamingData()=0; -}; -SWIG_TEMPLATE_TYPEDEF(ePtr<iStreamableService>, iStreamableServicePtr); - SWIG_IGNORE(iPlayableService); class iPlayableService: public iPlayableService_ENUMS, public iObject { @@ -755,6 +784,7 @@ public: virtual SWIG_VOID(RESULT) audioDelay(ePtr<iAudioDelay> &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) rdsDecoder(ePtr<iRdsDecoder> &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) stream(ePtr<iStreamableService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) keys(ePtr<iServiceKeys> &SWIG_OUTPUT)=0; }; SWIG_TEMPLATE_TYPEDEF(ePtr<iPlayableService>, iPlayableServicePtr); diff --git a/lib/service/servicedvb.h b/lib/service/servicedvb.h index 789edbea..0c5710d8 100644 --- a/lib/service/servicedvb.h +++ b/lib/service/servicedvb.h @@ -113,6 +113,7 @@ public: RESULT subtitle(ePtr<iSubtitleOutput> &ptr); RESULT audioDelay(ePtr<iAudioDelay> &ptr); RESULT rdsDecoder(ePtr<iRdsDecoder> &ptr); + RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; } // iPauseableService RESULT pause(); diff --git a/lib/service/servicemp3.h b/lib/service/servicemp3.h index 6606ca5d..20892898 100644 --- a/lib/service/servicemp3.h +++ b/lib/service/servicemp3.h @@ -68,6 +68,7 @@ public: RESULT audioDelay(ePtr<iAudioDelay> &ptr) { ptr = 0; return -1; } RESULT rdsDecoder(ePtr<iRdsDecoder> &ptr) { ptr = 0; return -1; } RESULT stream(ePtr<iStreamableService> &ptr) { ptr = 0; return -1; } + RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; } // iPausableService RESULT pause(); diff --git a/lib/service/servicexine.h b/lib/service/servicexine.h index b56a4858..4bf7e3eb 100644 --- a/lib/service/servicexine.h +++ b/lib/service/servicexine.h @@ -70,6 +70,7 @@ public: RESULT subtitle(ePtr<iSubtitleOutput> &ptr) { ptr = 0; return -1; } RESULT audioDelay(ePtr<iAudioDelay> &ptr) { ptr = 0; return -1; } RESULT rdsDecoder(ePtr<iRdsDecoder> &ptr) { ptr = 0; return -1; } + RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; } // iPausableService RESULT pause(); |
