factor out genSortName, cleanup comment
[enigma2.git] / lib / dvb / frontend.cpp
index 37ce13a6e09b83c43566bde1395f3ad2ae55fe2d..79b56e1e6b8ca588c08e700d22c4f0a3d0b6b284 100644 (file)
@@ -131,21 +131,21 @@ RESULT eDVBFrontendParameters::getDVBT(eDVBFrontendParametersTerrestrial &p) con
        return 0;
 }
 
-RESULT eDVBFrontendParameters::setDVBS(eDVBFrontendParametersSatellite &p)
+RESULT eDVBFrontendParameters::setDVBS(const eDVBFrontendParametersSatellite &p)
 {
        sat = p;
        m_type = iDVBFrontend::feSatellite;
        return 0;
 }
 
-RESULT eDVBFrontendParameters::setDVBC(eDVBFrontendParametersCable &p)
+RESULT eDVBFrontendParameters::setDVBC(const eDVBFrontendParametersCable &p)
 {
        cable = p;
        m_type = iDVBFrontend::feCable;
        return 0;
 }
 
-RESULT eDVBFrontendParameters::setDVBT(eDVBFrontendParametersTerrestrial &p)
+RESULT eDVBFrontendParameters::setDVBT(const eDVBFrontendParametersTerrestrial &p)
 {
        terrestrial = p;
        m_type = iDVBFrontend::feTerrestrial;
@@ -208,7 +208,7 @@ RESULT eDVBFrontendParameters::getHash(unsigned long &hash) const
 
 DEFINE_REF(eDVBFrontend);
 
-eDVBFrontend::eDVBFrontend(int adap, int fe, int &ok): m_type(-1), m_curVoltage(-1)
+eDVBFrontend::eDVBFrontend(int adap, int fe, int &ok): m_type(-1), m_fe(fe), m_curVoltage(-1)
 {
 #if HAVE_DVB_API_VERSION < 3
        char sec_filename[128];
@@ -341,7 +341,12 @@ void eDVBFrontend::feEvent(int w)
                        if (m_tuning)
                                state = stateTuning;
                        else
-                               state = stateFailed;
+                       {
+                               state = stateLostLock;
+
+                               if (m_state != stateLostLock)
+                                       eDebug("FIXME: we lost lock, so we might have to retune.");
+                       }
                }
                if (m_state != state)
                {
@@ -363,6 +368,7 @@ void eDVBFrontend::timeout()
                        m_state = state;
                        m_stateChanged(this);
                }
+               m_tuning = 0;
        } else
                m_tuning = 0;
 }
@@ -610,8 +616,6 @@ RESULT eDVBFrontend::tune(const iDVBFrontendParameters &where)
 
        m_sec_sequence.clear();
 
-       eDebug("eDVBFrontend::tune. type: %d", m_type);
-
        switch (m_type)
        {
        case feSatellite:
@@ -904,3 +908,7 @@ RESULT eDVBFrontend::setData(int num, int val)
        return -EINVAL;
 }
 
+int eDVBFrontend::isCompatibleWith(const eDVBChannelID &chid)
+{
+       return 1;
+}