- added lowlevel/eit.h
[enigma2.git] / lib / dvb / idvb.h
index ef052d42eddfc9145e4d9750a4b7a768451aa3f6..882e9b15912a94add6e88d7c55cb302cfb8b3431 100644 (file)
@@ -361,6 +361,7 @@ public:
 };
 
 class iDVBSatelliteEquipmentControl;
+class eSecCommandList;
 
 class iDVBFrontend: public iObject
 {
@@ -379,7 +380,7 @@ public:
        };
        virtual RESULT getState(int &state)=0;
        enum {
-               toneOn, toneOff
+               toneOff, toneOn
        };
        virtual RESULT setTone(int tone)=0;
        enum {
@@ -387,7 +388,11 @@ public:
        };
        virtual RESULT setVoltage(int voltage)=0;
        virtual RESULT sendDiseqc(const eDVBDiseqcCommand &diseqc)=0;
+       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
@@ -409,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;
@@ -423,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;