From: Andreas Monzner Date: Fri, 3 Mar 2006 01:47:19 +0000 (+0000) Subject: add lockState and syncState to getFrontendInfo call X-Git-Tag: 2.6.0~3929 X-Git-Url: https://git.cweiske.de/enigma2.git/commitdiff_plain/4cdb4528bbff583dc193f24508157e96a0d95c59 add lockState and syncState to getFrontendInfo call add skeleton for getTransponderInfo call --- diff --git a/lib/dvb/frontend.cpp b/lib/dvb/frontend.cpp index 464ef789..5bb6aeb4 100644 --- a/lib/dvb/frontend.cpp +++ b/lib/dvb/frontend.cpp @@ -504,6 +504,12 @@ int eDVBFrontend::readFrontendData(int type) return 0; } +PyObject *eDVBFrontend::readTransponderData() +{ + Py_INCREF(Py_None); + return Py_None; +} + #ifndef FP_IOCTL_GET_ID #define FP_IOCTL_GET_ID 0 #endif diff --git a/lib/dvb/frontend.h b/lib/dvb/frontend.h index c28399b4..8c5b757a 100644 --- a/lib/dvb/frontend.h +++ b/lib/dvb/frontend.h @@ -101,6 +101,8 @@ public: RESULT setData(int num, int val); int readFrontendData(int type); // bitErrorRate, signalPower, signalQuality, Locked, Synced + PyObject *readTransponderData(); + int isCompatibleWith(ePtr &feparm); int getID() { return m_fe; } diff --git a/lib/dvb/idvb.h b/lib/dvb/idvb.h index ada337c8..a8f361a4 100644 --- a/lib/dvb/idvb.h +++ b/lib/dvb/idvb.h @@ -361,6 +361,7 @@ public: bitErrorRate, signalPower, signalQuality, Locked, Synced }; virtual int readFrontendData(int type)=0; + virtual PyObject *readTransponderData()=0; virtual RESULT getData(int num, int &data)=0; virtual RESULT setData(int num, int val)=0; diff --git a/lib/service/iservice.h b/lib/service/iservice.h index 86f2a294..f3183187 100644 --- a/lib/service/iservice.h +++ b/lib/service/iservice.h @@ -271,9 +271,12 @@ public: enum { bitErrorRate, signalPower, - signalQuality + signalQuality, + LockState, + SyncState }; virtual int getFrontendInfo(int w)=0; + virtual PyObject *getFrontendTransponderData()=0; }; TEMPLATE_TYPEDEF(ePtr, iFrontendStatusInformationPtr); diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp index 8ff07250..c3bd1e69 100644 --- a/lib/service/servicedvb.cpp +++ b/lib/service/servicedvb.cpp @@ -1152,6 +1152,26 @@ int eDVBServicePlay::getFrontendInfo(int w) return fe->readFrontendData(w); } +PyObject *eDVBServicePlay::getFrontendTransponderData() +{ + PyObject *ret=0; + + eUsePtr channel; + if(!m_service_handler.getChannel(channel)) + { + ePtr fe; + if(!channel->getFrontend(fe)) + ret = fe->readTransponderData(); + } + + if (!ret) + { + ret = Py_None; + Py_INCREF(ret); + } + return ret; +} + int eDVBServicePlay::getNumberOfSubservices() { ePtr evt; diff --git a/lib/service/servicedvb.h b/lib/service/servicedvb.h index b243ee07..437a454b 100644 --- a/lib/service/servicedvb.h +++ b/lib/service/servicedvb.h @@ -105,6 +105,7 @@ public: // iFrontendStatusInformation int getFrontendInfo(int w); + PyObject *getFrontendTransponderData(); // iSubserviceList int getNumberOfSubservices();