X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/ddc3964ed95d01e72229dc9af968a327cd84e56c..d1de2263e4fff409a8fa16fc0069a923b4eff14d:/lib/service/service.h diff --git a/lib/service/service.h b/lib/service/service.h index fbe34278..813da24c 100644 --- a/lib/service/service.h +++ b/lib/service/service.h @@ -11,21 +11,29 @@ typedef ePtr eServiceCenterPtr; 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(); - +#endif // iServiceHandler RESULT play(const eServiceReference &, iPlayableServicePtr &ptr); RESULT record(const eServiceReference &, iRecordableServicePtr &ptr); RESULT list(const eServiceReference &, iListableServicePtr &ptr); + RESULT info(const eServiceReference &, ePtr &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr &ptr); // eServiceCenter - static RESULT getInstance(eServiceCenterPtr &ptr) { ptr = instance; return 0; } + static RESULT getPrivInstance(eServiceCenterPtr &ptr) { ptr = instance; return 0; } + static SWIG_VOID(RESULT) getInstance(iServiceHandlerPtr &SWIG_NAMED_OUTPUT(ptr)) { ptr = instance; return 0; } RESULT addServiceFactory(int id, iServiceHandler *hnd); RESULT removeServiceFactory(int id); };