remove lib/content
[enigma2.git] / lib / dvb / sec.cpp
index e8c6b479a0f7732eb8aa3b2e948ba4e48ce7433d..1ec1d5a22aa961070fe551ca3e6a6d23a8e469d2 100644 (file)
@@ -1,14 +1,23 @@
+#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);
 
-eDVBSatelliteEquipmentControl::eDVBSatelliteEquipmentControl(): ref(0)
+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;
 }