aboutsummaryrefslogtreecommitdiff
path: root/lib/service/iservice.h
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2005-11-13 15:30:08 +0000
committerFelix Domke <tmbinc@elitedvb.net>2005-11-13 15:30:08 +0000
commit2e2cf81de863a180f7d27dca89e5122e1eb0acaa (patch)
treefd265abbe20eb76d434682a95df9e0f4aea52285 /lib/service/iservice.h
parentab92ba5e6b439cb9a0aabc8c9330ec7d4ad9b301 (diff)
downloadenigma2-2e2cf81de863a180f7d27dca89e5122e1eb0acaa.tar.gz
enigma2-2e2cf81de863a180f7d27dca89e5122e1eb0acaa.zip
add iMutableServiceList
Diffstat (limited to 'lib/service/iservice.h')
-rw-r--r--lib/service/iservice.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/service/iservice.h b/lib/service/iservice.h
index 15631fda..5f861899 100644
--- a/lib/service/iservice.h
+++ b/lib/service/iservice.h
@@ -249,6 +249,20 @@ TEMPLATE_TYPEDEF(ePtr<iRecordableService>, iRecordableServicePtr);
// TEMPLATE_TYPEDEF(std::list<eServiceReference>, eServiceReferenceList);
+class iMutableServiceList: public iObject
+{
+public:
+ /* adds a service to a list */
+ virtual RESULT addService(eServiceReference &ref)=0;
+ /* removes a service from a list */
+ virtual RESULT removeService(eServiceReference &ref)=0;
+ /* moves a service in a list, only if list suppports a specific sort method. */
+ /* pos is the new, absolute position from 0..size-1 */
+ virtual RESULT moveService(eServiceReference &ref, int pos)=0;
+};
+
+TEMPLATE_TYPEDEF(ePtr<iMutableServiceList>, iMutableServiceListPtr);
+
class iListableService: public iObject
{
public:
@@ -264,6 +278,8 @@ public:
(as well as a future "active" extension) won't be possible.
*/
virtual int compareLessEqual(const eServiceReference &, const eServiceReference &)=0;
+
+ virtual SWIG_VOID(RESULT) startEdit(ePtr<iMutableServiceList> &SWIG_OUTPUT)=0;
};
TEMPLATE_TYPEDEF(ePtr<iListableService>, iListableServicePtr);