X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/cb22e9b244a2f9e54dba44b818395216585190bc..225c99450eab2aba7aa0e8ea3d2ff73da2910d46:/lib/dvb/sec.h diff --git a/lib/dvb/sec.h b/lib/dvb/sec.h index ab6ab395..e5273f8e 100644 --- a/lib/dvb/sec.h +++ b/lib/dvb/sec.h @@ -21,6 +21,7 @@ public: UPDATE_CURRENT_ROTORPARAMS, INVALIDATE_CURRENT_ROTORPARMS, IF_ROTORPOS_VALID_GOTO, IF_TUNER_LOCKED_GOTO, + IF_TONE_GOTO, IF_NOT_TONE_GOTO, START_TUNE_TIMEOUT }; int cmd; @@ -33,7 +34,12 @@ public: }; struct pair { - int voltage; + union + { + int voltage; + int tone; + int val; + }; int steps; }; union @@ -234,6 +240,24 @@ class eDVBRegisteredFrontend; class eDVBSatelliteEquipmentControl: public iDVBSatelliteEquipmentControl { +public: + enum { + DELAY_AFTER_CONT_TONE=0, // delay after continuous tone change + DELAY_AFTER_FINAL_VOLTAGE_CHANGE, // delay after voltage change at end of complete sequence + DELAY_BETWEEN_DISEQC_REPEATS, // delay between repeated diseqc commands + DELAY_AFTER_LAST_DISEQC_CMD, // delay after last diseqc command + DELAY_AFTER_TONEBURST, // delay after toneburst + DELAY_AFTER_ENABLE_VOLTAGE_BEFORE_SWITCH_CMDS, // delay after enable voltage before transmit toneburst/diseqc + DELAY_BETWEEN_SWITCH_AND_MOTOR_CMD, // delay after transmit toneburst / diseqc and before transmit motor command + DELAY_AFTER_VOLTAGE_CHANGE_BEFORE_MEASURE_IDLE_INPUTPOWER, // delay after voltage change before measure idle input power + DELAY_AFTER_ENABLE_VOLTAGE_BEFORE_MOTOR_CMD, // delay after enable voltage before transmit motor command + DELAY_AFTER_MOTOR_STOP_CMD, // delay after transmit motor stop + DELAY_AFTER_VOLTAGE_CHANGE_BEFORE_MOTOR_CMD, // delay after voltage change before transmit motor command + MOTOR_COMMAND_RETRIES, // max transmit tries of rotor command when the rotor dont start turning (with power measurement) + MOTOR_RUNNING_TIMEOUT, // max motor running time before timeout + MAX_PARAMS + }; +private: #ifndef SWIG static eDVBSatelliteEquipmentControl *instance; eDVBSatelliteLNBParameters m_lnbs[128]; // i think its enough @@ -246,8 +270,7 @@ class eDVBSatelliteEquipmentControl: public iDVBSatelliteEquipmentControl eDVBSatelliteEquipmentControl(); ~eDVBSatelliteEquipmentControl(); #endif - // helper function for setTunerLinked and setTunerDepends - RESULT setDependencyPointers( int no1, int no2, int dest_data_byte ); + static int m_params[MAX_PARAMS]; public: #ifndef SWIG eDVBSatelliteEquipmentControl(eSmartPtrList &avail_frontends); @@ -257,6 +280,7 @@ public: bool currentLNBValid() { return m_lnbidx > -1 && m_lnbidx < (int)(sizeof(m_lnbs) / sizeof(eDVBSatelliteLNBParameters)); } #endif static eDVBSatelliteEquipmentControl *getInstance() { return instance; } + static void setParam(int param, int value); RESULT clear(); /* LNB Specific Parameters */ RESULT addLNB();