X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/4c1d83d373b4a0737da668945d1ddb3278b6c3b7..20f69c200ec5703e958a6b95abfcfd5a108e5939:/lib/dvb/sec.h diff --git a/lib/dvb/sec.h b/lib/dvb/sec.h index 645f8b15..2e279900 100644 --- a/lib/dvb/sec.h +++ b/lib/dvb/sec.h @@ -9,28 +9,44 @@ class eSecCommand { public: enum { - NONE, SLEEP, SET_VOLTAGE, SET_TONE, - SEND_DISEQC, SEND_TONEBURST, IF_LOCK_GOTO, IF_NOT_LOCK_GOTO, - MEASURE_IDLE_INPUTPOWER, 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) {} @@ -140,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