X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/1aeefd997cc362c3b37c1587c5f08891b35c3a75..c9fe752d20d7ee28b56b863b6469b3490c17f4a2:/lib/service/service.h diff --git a/lib/service/service.h b/lib/service/service.h index bd40fb08..77173c53 100644 --- a/lib/service/service.h +++ b/lib/service/service.h @@ -5,13 +5,24 @@ #include #include +class eServiceCenter; + +#ifndef SWIG +typedef ePtr eServiceCenterPtr; +#endif + class eServiceCenter: public iServiceHandler { -DECLARE_REF; +DECLARE_REF(eServiceCenter); private: std::map > handler; static eServiceCenter *instance; +#ifdef SWIG + eServiceCenter(); + ~eServiceCenter(); +#endif public: +#ifndef SWIG eServiceCenter(); virtual ~eServiceCenter(); @@ -19,11 +30,15 @@ public: RESULT play(const eServiceReference &, ePtr &ptr); RESULT record(const eServiceReference &, ePtr &ptr); RESULT list(const eServiceReference &, ePtr &ptr); + RESULT info(const eServiceReference &, ePtr &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr &ptr); // eServiceCenter - static RESULT getInstance(ePtr &ptr) { ptr = instance; return 0; } + static RESULT getPrivInstance(ePtr &ptr) { ptr = instance; return 0; } RESULT addServiceFactory(int id, iServiceHandler *hnd); RESULT removeServiceFactory(int id); +#endif + static SWIG_VOID(RESULT) getInstance(ePtr &SWIG_NAMED_OUTPUT(ptr)) { ptr = instance; return 0; } }; #endif