update unicable stuff (by adenin)
[enigma2.git] / lib / dvb / sec.h
index c50aee4d381c28dcb9712cb064efda508790e97b..b38671d221c46c417a4038e6afd2dd1f4986d0d3 100644 (file)
@@ -25,7 +25,8 @@ public:
                IF_TONE_GOTO, IF_NOT_TONE_GOTO,
                START_TUNE_TIMEOUT,
                SET_ROTOR_MOVING,
-               SET_ROTOR_STOPPED
+               SET_ROTOR_STOPPED,
+               DELAYED_CLOSE_FRONTEND
        };
        int cmd;
        struct rotor
@@ -103,6 +104,11 @@ public:
        {
                secSequence.push_back(cmd);
        }
+       void push_back(eSecCommandList &list)
+       {
+               ASSERT(*this != list);
+               secSequence.splice(end(), list.secSequence);
+       }
        void clear()
        {
                secSequence.clear();
@@ -252,6 +258,7 @@ public:
 #define MAX_SATCR 8
 #define MAX_LNBNUM 32
 
+       int SatCR_positions;
        int SatCR_idx;
        unsigned int SatCRvco;
        unsigned int UnicableTuningWord;
@@ -311,6 +318,7 @@ public:
 #ifndef SWIG
        eDVBSatelliteEquipmentControl(eSmartPtrList<eDVBRegisteredFrontend> &avail_frontends, eSmartPtrList<eDVBRegisteredFrontend> &avail_simulate_frontends);
        RESULT prepare(iDVBFrontend &frontend, FRONTENDPARAMETERS &parm, const eDVBFrontendParametersSatellite &sat, int frontend_id, unsigned int tunetimeout);
+       void prepareTurnOffSatCR(iDVBFrontend &frontend, int satcr); // used for unicable
        int canTune(const eDVBFrontendParametersSatellite &feparm, iDVBFrontend *, int frontend_id, int *highest_score_lnb=0);
        bool currentLNBValid() { return m_lnbidx > -1 && m_lnbidx < (int)(sizeof(m_lnbs) / sizeof(eDVBSatelliteLNBParameters)); }
 #endif
@@ -346,9 +354,10 @@ public:
 /* Unicable Specific Parameters */
        RESULT setLNBSatCR(int SatCR_idx);
        RESULT setLNBSatCRvco(int SatCRvco);
-//     RESULT checkGuardOffset(const eDVBFrontendParametersSatellite &sat);
+       RESULT setLNBSatCRpositions(int SatCR_positions);
        RESULT getLNBSatCR();
        RESULT getLNBSatCRvco();
+       RESULT getLNBSatCRpositions();
 /* Satellite Specific Parameters */
        RESULT addSatellite(int orbital_position);
        RESULT setVoltageMode(int mode);