Merge branch 'bug_124_m2ts_support' into experimental
[vuplus_dvbapp] / lib / dvb / pmt.h
index d03267b..1888e05 100644 (file)
@@ -102,6 +102,7 @@ class eDVBServicePMTHandler: public Object
        
        int m_use_decode_demux;
        uint8_t m_decode_demux_num;
+       ePtr<eTimer> m_no_pat_entry_delay;
 public:
        eDVBServicePMTHandler();
        ~eDVBServicePMTHandler();
@@ -144,7 +145,7 @@ public:
        {
                int pid,
                    rdsPid; // hack for some radio services which transmit radiotext on different pid (i.e. harmony fm, HIT RADIO FFH, ...)
-               enum { atMPEG, atAC3, atDTS, atAAC, atAACHE, atLPCM };
+               enum { atMPEG, atAC3, atDTS, atAAC, atAACHE, atLPCM, atDTSHD };
                int type; // mpeg2, ac3, dts, ...
                
                int component_tag;
@@ -185,13 +186,13 @@ public:
                {
                        uint16_t caid;
                        int capid;
-                       bool operator< (const struct capid_pair &t) { return t.caid < caid; }
+                       bool operator< (const struct capid_pair &t) const { return t.caid < caid; }
                };
                std::vector<videoStream> videoStreams;
                std::vector<audioStream> audioStreams;
                int defaultAudioStream;
                std::vector<subtitleStream> subtitleStreams;
-               std::set<capid_pair> caids;
+               std::list<capid_pair> caids;
                int pcrPid;
                int pmtPid;
                int textPid;
@@ -210,6 +211,7 @@ public:
        int getPMT(ePtr<eTable<ProgramMapSection> > &ptr) { return m_PMT.getCurrent(ptr); }
        int getChannel(eUsePtr<iDVBChannel> &channel);
        void resetCachedProgram() { m_have_cached_program = false; }
+       void sendEventNoPatEntry();
 
        /* deprecated interface */
        int tune(eServiceReferenceDVB &ref, int use_decode_demux, eCueSheet *sg=0, bool simulate=false, eDVBService *service = 0);