git.cweiske.de
/
enigma2.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
291c22b
)
invent proper signalPowerdB enums and use them
author
Felix Domke
<tmbinc@elitedvb.net>
Sun, 20 May 2007 23:47:19 +0000
(23:47 +0000)
committer
Felix Domke
<tmbinc@elitedvb.net>
Sun, 20 May 2007 23:47:19 +0000
(23:47 +0000)
lib/dvb/frontend.cpp
patch
|
blob
|
history
lib/dvb/frontend.h
patch
|
blob
|
history
lib/dvb/idvb.h
patch
|
blob
|
history
lib/python/Components/Converter/FrontendInfo.py
patch
|
blob
|
history
lib/python/Components/Sources/FrontendStatus.py
patch
|
blob
|
history
lib/service/iservice.h
patch
|
blob
|
history
diff --git
a/lib/dvb/frontend.cpp
b/lib/dvb/frontend.cpp
index f9ca6c70a787cb50c3d0b2e9e15c38753e1cecf7..d2730a260a618df604245d9c9f1cf6ff07bb5254 100644
(file)
--- 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)");
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] = {
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);
snr_in_db = fval1;
return (int)(snr_in_db * 100.0);
-#endif
- return snr;
}
case signalQuality:
{
}
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_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));
}
}
PutToDict(dest, "tuner_signal_quality", readFrontendData(signalQuality));
}
}
diff --git
a/lib/dvb/frontend.h
b/lib/dvb/frontend.h
index cfe25d1a80e37c6f9a388f7e9c0460b4d85bd707..eb91eb72d2ca9bceb4b1dfa7d364bbb668550204 100644
(file)
--- 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);
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, signal
PowerdB, signal
Quality, locked, synced
void getFrontendStatus(ePyObject dest);
void getTransponderData(ePyObject dest, bool original);
void getFrontendData(ePyObject dest);
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 0fa10bc8f911c8596f8e385b8520577877d57b23..9c210502c2007d774a02767b44eb16631fe7a984 100644
(file)
--- 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 { 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);
};
SWIG_IGNORE(iDVBFrontend);
diff --git
a/lib/python/Components/Converter/FrontendInfo.py
b/lib/python/Components/Converter/FrontendInfo.py
index bcef9311fc7a750dca5a201efe1f29136777d7f4..34d55be468c6ec4be3787ff781508c53f8dff4bd 100644
(file)
--- a/
lib/python/Components/Converter/FrontendInfo.py
+++ b/
lib/python/Components/Converter/FrontendInfo.py
@@
-35,9
+35,9
@@
class FrontendInfo(Converter, object):
elif self.type == self.SNR:
percent = self.source.snr
elif self.type == self.SNRdB:
elif self.type == self.SNR:
percent = self.source.snr
elif self.type == self.SNRdB:
- if self.source.snr is None:
+ if self.source.snr
_db
is None:
return "N/A"
return "N/A"
- return "%3.02f dB" % (self.source.snr / 100.0)
+ return "%3.02f dB" % (self.source.snr
_db
/ 100.0)
if percent is None:
return "N/A"
if percent is None:
return "N/A"
diff --git
a/lib/python/Components/Sources/FrontendStatus.py
b/lib/python/Components/Sources/FrontendStatus.py
index 60b701026549cb7e18bbd9aa3d5de5904eef6a81..1af03f95574da03fb3290a9f3ab247a557bf4734 100644
(file)
--- a/
lib/python/Components/Sources/FrontendStatus.py
+++ b/
lib/python/Components/Sources/FrontendStatus.py
@@
-13,7
+13,7
@@
class FrontendStatus(Source):
self.poll_timer.start(1000)
def invalidate(self):
self.poll_timer.start(1000)
def invalidate(self):
- self.snr = self.agc = self.ber = self.lock = None
+ self.snr = self.agc = self.ber = self.lock =
self.snr_db =
None
def updateFrontendStatus(self):
status = self.getFrontendStatus()
def updateFrontendStatus(self):
status = self.getFrontendStatus()
@@
-21,6
+21,7
@@
class FrontendStatus(Source):
self.invalidate()
else:
self.snr = status.get("tuner_signal_power")
self.invalidate()
else:
self.snr = status.get("tuner_signal_power")
+ self.snr_db = status.get("tuner_signal_power_db")
self.agc = status.get("tuner_signal_quality")
self.ber = status.get("tuner_bit_error_rate")
self.lock = status.get("tuner_locked")
self.agc = status.get("tuner_signal_quality")
self.ber = status.get("tuner_bit_error_rate")
self.lock = status.get("tuner_locked")
diff --git
a/lib/service/iservice.h
b/lib/service/iservice.h
index b0042735d4e427c031ce6996f14538921aded56a..2e88f23535941630882f610e651bbf16aba66c72 100644
(file)
--- a/
lib/service/iservice.h
+++ b/
lib/service/iservice.h
@@
-354,7
+354,8
@@
public:
signalQuality,
lockState,
syncState,
signalQuality,
lockState,
syncState,
- frontendNumber
+ frontendNumber,
+ signalPowerdB,
};
};
};
};