aboutsummaryrefslogtreecommitdiff
path: root/lib/dvb/sec.cpp
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-01-12 21:11:59 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2005-01-12 21:11:59 +0000
commit967664233fc4ce992405a0e86e0c6cd594dfba57 (patch)
tree4443d9fe6737d81eb78298ee8be9b2d2a4118759 /lib/dvb/sec.cpp
parent50d3596b1c5351f07a7d77bd7d0fcab561884806 (diff)
downloadenigma2-967664233fc4ce992405a0e86e0c6cd594dfba57.tar.gz
enigma2-967664233fc4ce992405a0e86e0c6cd594dfba57.zip
fixes for old api.. not all tested..
Diffstat (limited to 'lib/dvb/sec.cpp')
-rw-r--r--lib/dvb/sec.cpp32
1 files changed, 30 insertions, 2 deletions
diff --git a/lib/dvb/sec.cpp b/lib/dvb/sec.cpp
index c033266a..1ec1d5a2 100644
--- a/lib/dvb/sec.cpp
+++ b/lib/dvb/sec.cpp
@@ -1,5 +1,10 @@
+#include <config.h>
#include <lib/dvb/sec.h>
+#if HAVE_DVB_API_VERSION < 3
+#include <ost/frontend.h>
+#else
#include <linux/dvb/frontend.h>
+#endif
#include <lib/base/eerror.h>
DEFINE_REF(eDVBSatelliteEquipmentControl);
@@ -8,7 +13,11 @@ eDVBSatelliteEquipmentControl::eDVBSatelliteEquipmentControl()
{
}
+#if HAVE_DVB_API_VERSION < 3
+RESULT eDVBSatelliteEquipmentControl::prepare(iDVBFrontend &frontend, FrontendParameters &parm, eDVBFrontendParametersSatellite &sat)
+#else
RESULT eDVBSatelliteEquipmentControl::prepare(iDVBFrontend &frontend, struct dvb_frontend_parameters &parm, eDVBFrontendParametersSatellite &sat)
+#endif
{
int hi;
eDebug("(very) ugly and hardcoded eDVBSatelliteEquipmentControl");
@@ -19,24 +28,43 @@ RESULT eDVBSatelliteEquipmentControl::prepare(iDVBFrontend &frontend, struct dvb
hi = 0;
if (hi)
+#if HAVE_DVB_API_VERSION < 3
+ parm.Frequency = sat.frequency - 10600000;
+#else
parm.frequency = sat.frequency - 10600000;
+#endif
else
+#if HAVE_DVB_API_VERSION < 3
+ parm.Frequency = sat.frequency - 9750000;
+#else
parm.frequency = sat.frequency - 9750000;
+#endif
// frontend.sentDiseqc(...);
+#if HAVE_DVB_API_VERSION < 3
+ parm.Inversion = (!sat.inversion) ? INVERSION_ON : INVERSION_OFF;
+#else
parm.inversion = (!sat.inversion) ? INVERSION_ON : INVERSION_OFF;
+#endif
switch (sat.fec)
{
// case 1:
// case ...:
default:
+#if HAVE_DVB_API_VERSION < 3
+ parm.u.qpsk.FEC_inner = FEC_AUTO;
+#else
parm.u.qpsk.fec_inner = FEC_AUTO;
+#endif
break;
}
+#if HAVE_DVB_API_VERSION < 3
+ parm.u.qpsk.SymbolRate = sat.symbol_rate;
+#else
parm.u.qpsk.symbol_rate = sat.symbol_rate;
-
+#endif
frontend.setVoltage((sat.polarisation == eDVBFrontendParametersSatellite::Polarisation::Vertical) ? iDVBFrontend::voltage13 : iDVBFrontend::voltage18);
@@ -56,7 +84,7 @@ RESULT eDVBSatelliteEquipmentControl::prepare(iDVBFrontend &frontend, struct dvb
frontend.sendDiseqc(diseqc);
frontend.setTone(hi ? iDVBFrontend::toneOn : iDVBFrontend::toneOff);
-
+
return 0;
}