- add eUsePtr for eDVBChannels
[enigma2.git] / lib / dvb / idvb.h
index 638aef91a42e47c39df4cc8b2cedfd3cfe8cba92..882e9b15912a94add6e88d7c55cb302cfb8b3431 100644 (file)
@@ -380,7 +380,7 @@ public:
        };
        virtual RESULT getState(int &state)=0;
        enum {
-               toneOn, toneOff
+               toneOff, toneOn
        };
        virtual RESULT setTone(int tone)=0;
        enum {
@@ -391,6 +391,8 @@ public:
        virtual RESULT sendToneburst(int burst)=0;
        virtual RESULT setSEC(iDVBSatelliteEquipmentControl *sec)=0;
        virtual RESULT setSecSequence(const eSecCommandList &list)=0;
+       virtual RESULT getData(int num, int &data)=0;
+       virtual RESULT setData(int num, int val)=0;
 };
 
 class iDVBSatelliteEquipmentControl: public iObject
@@ -412,7 +414,8 @@ public:
                state_idle,        /* not yet tuned */
                state_tuning,      /* currently tuning (first time) */
                state_unavailable, /* currently unavailable, will be back without further interaction */
-               state_ok           /* ok */
+               state_ok,          /* ok */
+               state_release      /* channel is being shut down. */
        };
        virtual RESULT connectStateChange(const Slot1<void,iDVBChannel*> &stateChange, ePtr<eConnection> &connection)=0;
        virtual RESULT getState(int &state)=0;
@@ -426,6 +429,10 @@ public:
        
                /* direct frontend access for raw channels and/or status inquiries. */
        virtual RESULT getFrontend(ePtr<iDVBFrontend> &frontend)=0;
+       
+               /* use count handling */
+       virtual void AddUse() = 0;
+       virtual void ReleaseUse() = 0;
 };
 
 class iDVBSectionReader;