+class iSubserviceList: public iObject
+{
+#ifdef SWIG
+ iSubserviceList();
+ ~iSubserviceList();
+#endif
+public:
+ virtual int getNumberOfSubservices()=0;
+ virtual SWIG_VOID(RESULT) getSubservice(eServiceReference &SWIG_OUTPUT, unsigned int n)=0;
+};
+
+TEMPLATE_TYPEDEF(ePtr<iSubserviceList>, iSubserviceListPtr);
+
+class iTimeshiftService: public iObject
+{
+#ifdef SWIG
+ iTimeshiftService();
+ ~iTimeshiftService();
+#endif
+public:
+ virtual RESULT startTimeshift()=0;
+ virtual RESULT stopTimeshift()=0;
+};
+
+TEMPLATE_TYPEDEF(ePtr<iTimeshiftService>, iTimeshiftServicePtr);