X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/65b45f75e4c14174a580a5345b85408fad826895..20f69c200ec5703e958a6b95abfcfd5a108e5939:/lib/dvb/sec.h diff --git a/lib/dvb/sec.h b/lib/dvb/sec.h index 7b5e5b2b..2e279900 100644 --- a/lib/dvb/sec.h +++ b/lib/dvb/sec.h @@ -9,23 +9,44 @@ class eSecCommand { public: enum { - NONE, SLEEP, SET_VOLTAGE, SET_TONE, SEND_DISEQC, SEND_TONEBURST, IF_LOCK_GOTO, IF_NOT_LOCK_GOTO, SET_FRONTEND + NONE, SLEEP, SET_VOLTAGE, SET_TONE, GOTO, + SEND_DISEQC, SEND_TONEBURST, SET_FRONTEND, + MEASURE_IDLE_INPUTPOWER, MEASURE_RUNNING_INPUTPOWER, + IF_TIMEOUT_GOTO, IF_INPUTPOWER_DELTA_GOTO, + UPDATE_CURRENT_ROTORPARAMS, SET_TIMEOUT }; int cmd; + struct rotor + { + int deltaA; // difference in mA between running and stopped rotor + int okcount; // counter + int steps; // goto steps + int direction; + }; union { + int val; + int steps; + int timeout; int voltage; int tone; int toneburst; int msec; + rotor measure; eDVBDiseqcCommand diseqc; }; + eSecCommand( int cmd ) + :cmd(cmd) + {} eSecCommand( int cmd, int val ) - :cmd(cmd), voltage(val) + :cmd(cmd), val(val) {} eSecCommand( int cmd, eDVBDiseqcCommand diseqc ) :cmd(cmd), diseqc(diseqc) {} + eSecCommand( int cmd, rotor measure ) + :cmd(cmd), measure(measure) + {} eSecCommand() :cmd(NONE) {} @@ -135,7 +156,16 @@ public: std::map< int, int, Orbital_Position_Compare > m_rotor_position_table; /* mapping orbitalposition <-> number stored in rotor */ - void setDefaultOptions(); // set default rotor options + void setDefaultOptions() // set default rotor options + { + m_inputpower_parameters.m_use = true; + m_inputpower_parameters.m_threshold = 60; + m_gotoxx_parameters.m_can_use = true; + m_gotoxx_parameters.m_lo_direction = EAST; + m_gotoxx_parameters.m_la_direction = NORTH; + m_gotoxx_parameters.m_longitude = 0.0; + m_gotoxx_parameters.m_latitude = 0.0; + } }; class eDVBSatelliteParameters