remove unneeded workaround
[enigma2.git] / lib / dvb / epgcache.h
index 69eec7d750785ba633a2f161f35c75f0b3bbd486..81815ed58a9643b960eb53902c4b972ff59b04e4 100644 (file)
@@ -2,7 +2,7 @@
 #define __epgcache_h_
 
 #define ENABLE_PRIVATE_EPG 1
-#define NEED_DEMUX_WORKAROUND 1
+#define ENABLE_MHW_EPG 1
 
 #ifndef SWIG
 
@@ -159,16 +159,15 @@ class eEPGCache: public eMainloop, private eThread, public Object
                ePtr<iDVBSectionReader> m_NowNextReader, m_ScheduleReader, m_ScheduleOtherReader;
                tidMap seenSections[3], calcedSections[3];
 #ifdef ENABLE_PRIVATE_EPG
-#ifdef NEED_DEMUX_WORKAROUND
+               eTimer startPrivateTimer;
                int m_PrevVersion;
-#endif
                int m_PrivatePid;
                uniqueEPGKey m_PrivateService;
                ePtr<eConnection> m_PrivateConn;
                ePtr<iDVBSectionReader> m_PrivateReader;
                std::set<__u8> seenPrivateSections;
                void readPrivateData(const __u8 *data);
-               void startPrivateReader(int pid, int version);
+               void startPrivateReader();
 #endif
                void readData(const __u8 *data);
                void startChannel();
@@ -177,8 +176,9 @@ class eEPGCache: public eMainloop, private eThread, public Object
                void abortEPG();
                void abortNonAvail();
        };
+       void FixOverlapping(std::pair<eventMap,timeMap> &servicemap, time_t TM, int duration, const timeMap::iterator &tm_it, const uniqueEPGKey &service);
 public:
-       enum {NOWNEXT=1, SCHEDULE=2, SCHEDULE_OTHER=4};
+       enum {PRIVATE=0, NOWNEXT=1, SCHEDULE=2, SCHEDULE_OTHER=4};
        struct Message
        {
                enum