From 2a6cdce89409dc0275e23523c3807972a82f2cf7 Mon Sep 17 00:00:00 2001 From: Felix Domke Date: Thu, 29 Sep 2005 22:07:36 +0000 Subject: swig: some more simplifying magic --- lib/service/iservice.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'lib/service') diff --git a/lib/service/iservice.h b/lib/service/iservice.h index 62be26c0..54d7b11f 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -130,11 +130,18 @@ public: return path < c.path; } operator bool() const + { + return valid(); + } + + int valid() const { return type != idInvalid; } }; +SWIG_ALLOW_OUTPUT_SIMPLE(eServiceReference); + typedef unsigned long long pts_t; /* the reason we have the servicereference as additional argument is @@ -171,6 +178,8 @@ TEMPLATE_TYPEDEF(ePtr, iStaticServiceInformationPtr); class eServiceEvent; +TEMPLATE_TYPEDEF(ePtr, eServiceEventPtr); + class iServiceInformation: public iObject { public: @@ -245,6 +254,18 @@ public: TEMPLATE_TYPEDEF(ePtr, iListableServicePtr); +class iServiceOfflineOperations: public iObject +{ +public: + /* to delete a service, forever. */ + virtual RESULT deleteFromDisk(int simulate=1)=0; + + /* for transferring a service... */ + virtual SWIG_VOID(RESULT) getListOfFilenames(std::list &SWIG_OUTPUT)=0; + + // TODO: additional stuff, like a conversion interface? +}; + class iServiceHandler: public iObject { public: @@ -252,6 +273,7 @@ public: virtual SWIG_VOID(RESULT) record(const eServiceReference &, ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) list(const eServiceReference &, ePtr &SWIG_OUTPUT)=0; virtual SWIG_VOID(RESULT) info(const eServiceReference &, ePtr &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) offlineOperations(const eServiceReference &, ePtr &SWIG_OUTPUT)=0; }; TEMPLATE_TYPEDEF(ePtr, iServiceHandlerPtr); -- cgit v1.2.3