aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb/frontend.cpp
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-11-16 16:50:27 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-11-16 16:50:27 +0000
commite768f7667ec5da0e331725de8a582365358cf7e3 (patch)
treeb884b58e3ede7547306f141c45786b154d7313b5 /lib/dvb/frontend.cpp
parent82aa264d3b1732f8c5883a13401a45cb32e00bc1 (diff)
downloadenigma2-e768f7667ec5da0e331725de8a582365358cf7e3.tar.gz
enigma2-e768f7667ec5da0e331725de8a582365358cf7e3.zip
auto tuner selection is now working (this breaks allocateRawChannel..)
TODO: handling for linked tuners (loop through)
Diffstat (limited to 'lib/dvb/frontend.cpp')
-rw-r--r--lib/dvb/frontend.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/dvb/frontend.cpp b/lib/dvb/frontend.cpp
index 79b56e1e..2cb1c7d9 100644
--- a/lib/dvb/frontend.cpp
+++ b/lib/dvb/frontend.cpp
@@ -908,7 +908,16 @@ RESULT eDVBFrontend::setData(int num, int val)
return -EINVAL;
}
-int eDVBFrontend::isCompatibleWith(const eDVBChannelID &chid)
+int eDVBFrontend::isCompatibleWith(ePtr<iDVBFrontendParameters> &feparm)
{
- return 1;
+ if (m_type != eDVBFrontend::feSatellite)
+ return 1;
+
+ ASSERT(m_sec);
+
+ eDVBFrontendParametersSatellite sat_parm;
+
+ ASSERT(!feparm->getDVBS(sat_parm));
+
+ return m_sec->canTune(sat_parm, this, m_fe ? m_fe << 1 : 1);
}