diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2007-05-20 23:47:19 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2007-05-20 23:47:19 +0000 |
| commit | 1995abf236d34dd3264435a35f2c9c128cf3afaa (patch) | |
| tree | d2ea40e72028a56303f93c686f1294691c75fd91 /lib/dvb | |
| parent | 291c22bb4b7824dd9e4d9528b53172f913a8084a (diff) | |
| download | enigma2-1995abf236d34dd3264435a35f2c9c128cf3afaa.tar.gz enigma2-1995abf236d34dd3264435a35f2c9c128cf3afaa.zip | |
invent proper signalPowerdB enums and use them
Diffstat (limited to 'lib/dvb')
| -rw-r--r-- | lib/dvb/frontend.cpp | 12 | ||||
| -rw-r--r-- | lib/dvb/frontend.h | 2 | ||||
| -rw-r--r-- | lib/dvb/idvb.h | 2 |
3 files changed, 10 insertions, 6 deletions
diff --git a/lib/dvb/frontend.cpp b/lib/dvb/frontend.cpp index f9ca6c70..d2730a26 100644 --- a/lib/dvb/frontend.cpp +++ b/lib/dvb/frontend.cpp @@ -623,8 +623,13 @@ int eDVBFrontend::readFrontendData(int type) uint16_t snr=0; if (ioctl(m_fd, FE_READ_SNR, &snr) < 0 && errno != ERANGE) eDebug("FE_READ_SNR failed (%m)"); - -#if defined(DM8000) + return snr; + } + case signalPowerdB: /* this will move into the driver */ + { + uint16_t snr=0; + if (ioctl(m_fd, FE_READ_SNR, &snr) < 0 && errno != ERANGE) + eDebug("FE_READ_SNR failed (%m)"); unsigned int SDS_SNRE = snr << 16; static float SNR_COEFF[6] = { @@ -655,8 +660,6 @@ int eDVBFrontend::readFrontendData(int type) snr_in_db = fval1; return (int)(snr_in_db * 100.0); -#endif - return snr; } case signalQuality: { @@ -1034,6 +1037,7 @@ void eDVBFrontend::getFrontendStatus(ePyObject dest) PutToDict(dest, "tuner_synced", readFrontendData(synced)); PutToDict(dest, "tuner_bit_error_rate", readFrontendData(bitErrorRate)); PutToDict(dest, "tuner_signal_power", readFrontendData(signalPower)); + PutToDict(dest, "tuner_signal_power_db", readFrontendData(signalPowerdB)); PutToDict(dest, "tuner_signal_quality", readFrontendData(signalQuality)); } } diff --git a/lib/dvb/frontend.h b/lib/dvb/frontend.h index cfe25d1a..eb91eb72 100644 --- a/lib/dvb/frontend.h +++ b/lib/dvb/frontend.h @@ -109,7 +109,7 @@ public: RESULT getData(int num, int &data); RESULT setData(int num, int val); - int readFrontendData(int type); // bitErrorRate, signalPower, signalQuality, locked, synced + int readFrontendData(int type); // bitErrorRate, signalPower, signalPowerdB, signalQuality, locked, synced void getFrontendStatus(ePyObject dest); void getTransponderData(ePyObject dest, bool original); void getFrontendData(ePyObject dest); diff --git a/lib/dvb/idvb.h b/lib/dvb/idvb.h index 0fa10bc8..9c210502 100644 --- a/lib/dvb/idvb.h +++ b/lib/dvb/idvb.h @@ -443,7 +443,7 @@ public: enum { stateIdle, stateTuning, stateFailed, stateLock, stateLostLock }; enum { toneOff, toneOn }; enum { voltageOff, voltage13, voltage18, voltage13_5, voltage18_5 }; - enum { bitErrorRate, signalPower, signalQuality, locked, synced, frontendNumber }; + enum { bitErrorRate, signalPower, signalQuality, locked, synced, frontendNumber, signalPowerdB }; }; SWIG_IGNORE(iDVBFrontend); |
