X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/266b7db4f7e4a369206551e62df43e9a29edbeff..7911822c34874eac5c64bef3fddca0147f53d26b:/lib/dvb/pmt.h diff --git a/lib/dvb/pmt.h b/lib/dvb/pmt.h index e9816b49..0c44f35a 100644 --- a/lib/dvb/pmt.h +++ b/lib/dvb/pmt.h @@ -86,8 +86,8 @@ class eDVBServicePMTHandler: public Object eUsePtr m_channel; eUsePtr m_pvr_channel; ePtr m_resourceManager; - ePtr m_demux; - + ePtr m_demux, m_pvr_demux_tmp; + void channelStateChanged(iDVBChannel *); ePtr m_channelStateChanged_connection; void channelEvent(iDVBChannel *, int event); @@ -182,11 +182,17 @@ public: struct program { + struct capid_pair + { + uint16_t caid; + int capid; + bool operator< (const struct capid_pair &t) const { return t.caid < caid; } + }; std::vector videoStreams; std::vector audioStreams; int defaultAudioStream; std::vector subtitleStreams; - std::set caids; + std::list caids; int pcrPid; int pmtPid; int textPid; @@ -194,10 +200,10 @@ public: PyObject *createPythonObject(); }; - int getProgramInfo(struct program &program); + int getProgramInfo(program &program); int getDataDemux(ePtr &demux); int getDecodeDemux(ePtr &demux); - PyObject *getCaIds(); + PyObject *getCaIds(bool pair=false); // caid / ecmpid pair int getPVRChannel(ePtr &pvr_channel); int getServiceReference(eServiceReferenceDVB &service) { service = m_reference; return 0; }