aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb/sec.cpp
diff options
context:
space:
mode:
authorghost <andreas.monzner@multimedia-labs.de>2009-07-06 12:03:06 +0200
committerghost <andreas.monzner@multimedia-labs.de>2009-07-06 12:03:06 +0200
commit0f69ce9a29482ed9e03067e83de4509346f90d7d (patch)
tree0a1d12fb3d9b3004f773b008d253ba9b844baa65 /lib/dvb/sec.cpp
parentdbe0c802ce377fe052622522be8e3971e579ba9b (diff)
downloadenigma2-0f69ce9a29482ed9e03067e83de4509346f90d7d.tar.gz
enigma2-0f69ce9a29482ed9e03067e83de4509346f90d7d.zip
more prio for linked and satpos dependent tuners when the base tuner is in use
Diffstat (limited to 'lib/dvb/sec.cpp')
-rw-r--r--lib/dvb/sec.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/dvb/sec.cpp b/lib/dvb/sec.cpp
index 25567ce8..83092d8e 100644
--- a/lib/dvb/sec.cpp
+++ b/lib/dvb/sec.cpp
@@ -148,7 +148,7 @@ int eDVBSatelliteEquipmentControl::canTune(const eDVBFrontendParametersSatellite
if ( di_param.m_diseqc_mode == eDVBSatelliteDiseqcParameters::V1_2 ) // ROTOR
rotor = true;
- ret=10000;
+ ret = 10000;
}
else
{
@@ -165,8 +165,10 @@ int eDVBSatelliteEquipmentControl::canTune(const eDVBFrontendParametersSatellite
( diseqc && (ucsw != linked_ucsw || toneburst != linked_toneburst) ) ||
( rotor && rotor_pos != sat.orbital_position ) )
{
- ret=0;
+ ret = 0;
}
+ else
+ ret += 15;
eSecDebugNoSimulate("ret2 %d", ret);
if (ret) // special case when this tuner is linked to a satpos dependent tuner
{
@@ -193,7 +195,9 @@ int eDVBSatelliteEquipmentControl::canTune(const eDVBFrontendParametersSatellite
if (satpos_depends_to_fe->m_inuse) // if the dependent frontend is in use?
{
if (!rotor || rotor_pos != sat.orbital_position) // new orbital position not equal to current orbital pos?
- ret=0;
+ ret = 0;
+ else
+ ret += 10;
}
}
else // current fe is dependent of another tuner ... (so this fe can't turn the rotor!)
@@ -220,7 +224,7 @@ int eDVBSatelliteEquipmentControl::canTune(const eDVBFrontendParametersSatellite
lnb_param.m_lof_hi : lnb_param.m_lof_lo;
int tuner_freq = abs(sat.frequency - lof);
if (tuner_freq < 900000 || tuner_freq > 2200000)
- ret=0;
+ ret = 0;
}
if (ret && lnb_param.m_prio != -1)