X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/ddc3964ed95d01e72229dc9af968a327cd84e56c..f9723e7fbf7669f063151eaf53bb1ee9f4189289:/lib/service/iservice.h diff --git a/lib/service/iservice.h b/lib/service/iservice.h index a6369574..766d850e 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -6,6 +6,14 @@ #include #include +#ifdef SWIG +#define TEMPLATE_TYPEDEF(x, y) \ +%template(y) x; \ +typedef x y +#else +#define TEMPLATE_TYPEDEF(x, y) typedef x y +#endif + class eServiceReference { public: @@ -167,7 +175,7 @@ public: virtual RESULT getIServiceInformation(ePtr &ptr)=0; }; -typedef ePtr iPlayableServicePtr; +TEMPLATE_TYPEDEF(ePtr, iPlayableServicePtr); class iRecordableService: public iObject { @@ -178,13 +186,16 @@ public: typedef ePtr iRecordableServicePtr; +// TEMPLATE_TYPEDEF(std::list, eServiceReferenceList); +typedef std::list eServiceReferenceList; + class iListableService: public iObject { public: virtual RESULT getContent(std::list &list)=0; }; -typedef ePtr iListableServicePtr; +TEMPLATE_TYPEDEF(ePtr, iListableServicePtr); class iServiceHandler: public iObject {