X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/ed40f6f85c9c07c3c1224ae20601082c0309a631..c31218a50b890d768c6b276a702cb9c22f89fb70:/lib/dvb/idvb.h diff --git a/lib/dvb/idvb.h b/lib/dvb/idvb.h index a34be984..a951fdc4 100644 --- a/lib/dvb/idvb.h +++ b/lib/dvb/idvb.h @@ -27,6 +27,47 @@ #define CAID_LIST std::slist #endif +#ifndef DMX_FILTER_SIZE +#define DMX_FILTER_SIZE 16 +#endif + +struct eDVBSectionFilterMask +{ + int pid; + /* mode is 0 for positive, 1 for negative filtering */ + __u8 data[DMX_FILTER_SIZE], mask[DMX_FILTER_SIZE], mode[DMX_FILTER_SIZE]; + enum { + rfCRC=1, + rfNoAbort=2 + }; + int flags; +}; + +struct eDVBTableSpec +{ + int pid, tid, tidext, tid_mask, tidext_mask; + int version; + int timeout; /* timeout in ms */ + enum + { + tfInOrder=1, + /* + tfAnyVersion filter ANY version + 0 filter all EXCEPT given version (negative filtering) + tfThisVersion filter only THIS version + */ + tfAnyVersion=2, + tfThisVersion=4, + tfHaveTID=8, + tfHaveTIDExt=16, + tfCheckCRC=32, + tfHaveTimeout=64, + tfHaveTIDMask=128, + tfHaveTIDExtMask=256 + }; + int flags; +}; + struct eBouquet { std::string m_bouquet_name; @@ -424,7 +465,9 @@ public: virtual RESULT setSecSequence(const eSecCommandList &list)=0; #endif virtual int readFrontendData(int type)=0; - virtual PyObject *readTransponderData(bool original)=0; + virtual void getFrontendStatus(SWIG_PYOBJECT(ePyObject) dest)=0; + virtual void getTransponderData(SWIG_PYOBJECT(ePyObject) dest, bool original)=0; + virtual void getFrontendData(SWIG_PYOBJECT(ePyObject) dest)=0; #ifndef SWIG virtual RESULT getData(int num, int &data)=0; virtual RESULT setData(int num, int val)=0; @@ -578,6 +621,10 @@ public: virtual RESULT flush()=0; }; +#if HAVE_DVB_API_VERSION < 3 && !defined(VIDEO_EVENT_SIZE_CHANGED) +#define VIDEO_EVENT_SIZE_CHANGED 1 +#endif + class iTSMPEGDecoder: public iObject { public: