aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb/dvb.cpp
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2006-03-03 13:59:56 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2006-03-03 13:59:56 +0000
commitaf6a8a3a102ff0230fcc6d90ad213e2e7d706fa8 (patch)
tree1c2d6a115cacfe99292fb8599a03e2c9a20f0a4f /lib/dvb/dvb.cpp
parent88a6749020acfb921ae70f714e995af74e72c47c (diff)
downloadenigma2-af6a8a3a102ff0230fcc6d90ad213e2e7d706fa8.tar.gz
enigma2-af6a8a3a102ff0230fcc6d90ad213e2e7d706fa8.zip
implement readFrontendData method to get a python dictionary containing data
about current used transponder/frontend (frontend state, frontend type, lock state, sync state, frequency, symbolrate, fec_innter...) when it is called with True as param it returns the original transponder data (written to tuner) otherwise it reads the current data out of the frontend (corrected tuner data)
Diffstat (limited to 'lib/dvb/dvb.cpp')
-rw-r--r--lib/dvb/dvb.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/lib/dvb/dvb.cpp b/lib/dvb/dvb.cpp
index f8f95276..ad5dfa64 100644
--- a/lib/dvb/dvb.cpp
+++ b/lib/dvb/dvb.cpp
@@ -626,11 +626,11 @@ void eDVBChannel::frontendStateChanged(iDVBFrontend*fe)
} else if (state == iDVBFrontend::stateLostLock)
{
/* on managed channels, we try to retune in order to re-acquire lock. */
- if (m_feparm)
+ if (m_current_frontend_parameters)
{
eDebug("OURSTATE: lost lock, trying to retune");
ourstate = state_tuning;
- m_frontend->get().tune(*m_feparm);
+ m_frontend->get().tune(*m_current_frontend_parameters);
} else
/* on unmanaged channels, we don't do this. the client will do this. */
{
@@ -918,7 +918,7 @@ RESULT eDVBChannel::setChannel(const eDVBChannelID &channelid, ePtr<iDVBFrontend
/* if tuning fails, shutdown the channel immediately. */
int res;
res = m_frontend->get().tune(*feparm);
- m_feparm = feparm;
+ m_current_frontend_parameters = feparm;
if (res)
{
@@ -977,8 +977,13 @@ RESULT eDVBChannel::getFrontend(ePtr<iDVBFrontend> &frontend)
frontend = &m_frontend->get();
if (frontend)
return 0;
- else
- return -ENODEV;
+ return -ENODEV;
+}
+
+RESULT eDVBChannel::getCurrentFrontendParameters(ePtr<iDVBFrontendParameters> &param)
+{
+ param = m_current_frontend_parameters;
+ return 0;
}
RESULT eDVBChannel::playFile(const char *file)