diff options
| author | Dimitar Petrovski <dimeptr@gmail.com> | 2018-08-11 14:56:46 +0200 |
|---|---|---|
| committer | Dimitar Petrovski <dimeptr@gmail.com> | 2018-08-11 14:56:46 +0200 |
| commit | efbf22b18d2509ca8c5bccdb1894661fe8d888d1 (patch) | |
| tree | 4f3393897cea4afd912ee1e9d3cab4d5644aff28 /epghandler.h | |
| parent | 9cd9a75a061ed301378e8102b726549f5a0e672d (diff) | |
| parent | ca0c9dda448ffe0cd71e85cbc5b1f9c10203e1ad (diff) | |
| download | vdr-plugin-eepg-efbf22b18d2509ca8c5bccdb1894661fe8d888d1.tar.gz vdr-plugin-eepg-efbf22b18d2509ca8c5bccdb1894661fe8d888d1.tar.bz2 | |
Merge branch 'experimental'
Diffstat (limited to 'epghandler.h')
| -rw-r--r-- | epghandler.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/epghandler.h b/epghandler.h index 003fd32..4a08fcf 100644 --- a/epghandler.h +++ b/epghandler.h @@ -13,12 +13,15 @@ #include <string> class cEquivHandler; +namespace util { +class cCharsetFixer; +} class cEEpgHandler : public cEpgHandler { public: cEEpgHandler(); virtual ~cEEpgHandler(); - virtual bool IgnoreChannel(const cChannel *Channel) { return false; } + virtual bool IgnoreChannel(const cChannel *Channel); virtual bool HandleEitEvent(cSchedule *Schedule, const SI::EIT::Event *EitEvent, uchar TableID, uchar Version); virtual bool SetEventID(cEvent *Event, tEventID EventID); virtual bool SetTitle(cEvent *Event, const char *Title); @@ -29,19 +32,29 @@ public: virtual bool SetStartTime(cEvent *Event, time_t StartTime); virtual bool SetDuration(cEvent *Event, int Duration); virtual bool SetVps(cEvent *Event, time_t Vps); - virtual bool FixEpgBugs(cEvent *Event) { return false; } + virtual bool FixEpgBugs(cEvent *Event); virtual bool HandleEvent(cEvent *Event); virtual bool SortSchedule(cSchedule *Schedule); virtual bool DropOutdated(cSchedule *Schedule, time_t SegmentStart, time_t SegmentEnd, uchar TableID, uchar Version); // bool ParseEitEvent(cSchedule *Schedule, const SI::EIT::Event *EitEvent, uchar TableID, uchar Version); +private: + std::string ExtractAttribute(const char* attr); + void FindDuplicate(cEvent* Event, const char* newTitle); + /* + * Extract the date from duplicate event and remove it + */ + void RemoveEvent(cEvent* ev); private: std::string origShortText; std::string origDescription; cEquivHandler* equivHandler; + util::cCharsetFixer* charsetFixer; + cSchedule* schedule; static const int _LONG_EVENT_HOURS = 10; bool modified; + bool searchDuplicates; }; #endif /*APIVERSNUM > 10725*/ |
