X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fdvb%2Fsec.h;h=b38671d221c46c417a4038e6afd2dd1f4986d0d3;hp=5d96932870e7b7a0fca3a64bd4a2c7b16a5988cc;hb=c95ebd0688c39d4fa6e22e85d84fe7d80e3da013;hpb=bce53d4a67d1655a496eebe5912c8573e880114e diff --git a/lib/dvb/sec.h b/lib/dvb/sec.h index 5d96932..b38671d 100644 --- a/lib/dvb/sec.h +++ b/lib/dvb/sec.h @@ -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; @@ -298,7 +305,7 @@ private: int m_lnbidx; // current index for set parameters std::map::iterator m_curSat; eSmartPtrList &m_avail_frontends, &m_avail_simulate_frontends; - bool m_rotorMoving; + int m_rotorMoving; int m_not_linked_slot_mask; bool m_canMeasureInputPower; #endif @@ -311,6 +318,7 @@ public: #ifndef SWIG eDVBSatelliteEquipmentControl(eSmartPtrList &avail_frontends, eSmartPtrList &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); @@ -359,7 +368,7 @@ public: RESULT setTunerDepends(int from, int to); void setSlotNotLinked(int tuner_no); - void setRotorMoving(bool); // called from the frontend's + void setRotorMoving(int, bool); // called from the frontend's bool isRotorMoving(); bool canMeasureInputPower() { return m_canMeasureInputPower; } };