X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/2e0270746af934180499931f95ed91c444c8233e..a1595050bc43d70aa8df213c0c7ac8217d61b778:/lib/dvb/sec.h diff --git a/lib/dvb/sec.h b/lib/dvb/sec.h index 18935b97..e630df91 100644 --- a/lib/dvb/sec.h +++ b/lib/dvb/sec.h @@ -19,15 +19,21 @@ public: MEASURE_IDLE_INPUTPOWER, MEASURE_RUNNING_INPUTPOWER, IF_MEASURE_IDLE_WAS_NOT_OK_GOTO, IF_INPUTPOWER_DELTA_GOTO, UPDATE_CURRENT_ROTORPARAMS, INVALIDATE_CURRENT_ROTORPARMS, + UPDATE_CURRENT_SWITCHPARMS, INVALIDATE_CURRENT_SWITCHPARMS, IF_ROTORPOS_VALID_GOTO, IF_TUNER_LOCKED_GOTO, IF_TONE_GOTO, IF_NOT_TONE_GOTO, - START_TUNE_TIMEOUT + START_TUNE_TIMEOUT, + SET_ROTOR_MOVING, + SET_ROTOR_STOPPED }; int cmd; struct rotor { - int deltaA; // difference in mA between running and stopped rotor + union { + int deltaA; // difference in mA between running and stopped rotor + int lastSignal; + }; int okcount; // counter int steps; // goto steps int direction; @@ -265,7 +271,7 @@ public: private: #ifndef SWIG static eDVBSatelliteEquipmentControl *instance; - eDVBSatelliteLNBParameters m_lnbs[128]; // i think its enough + eDVBSatelliteLNBParameters m_lnbs[144]; // i think its enough int m_lnbidx; // current index for set parameters std::map::iterator m_curSat; eSmartPtrList &m_avail_frontends; @@ -282,7 +288,7 @@ public: #ifndef SWIG eDVBSatelliteEquipmentControl(eSmartPtrList &avail_frontends); RESULT prepare(iDVBFrontend &frontend, FRONTENDPARAMETERS &parm, const eDVBFrontendParametersSatellite &sat, int frontend_id, unsigned int tunetimeout); - int canTune(const eDVBFrontendParametersSatellite &feparm, iDVBFrontend *, int frontend_id); + 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 static eDVBSatelliteEquipmentControl *getInstance() { return instance; } @@ -322,7 +328,6 @@ public: RESULT setTunerDepends(int from, int to); void setSlotNotLinked(int tuner_no); - PyObject *get_exclusive_satellites(int tu1, int tu2); void setRotorMoving(bool); // called from the frontend's bool isRotorMoving(); bool canMeasureInputPower() { return m_canMeasureInputPower; }