summaryrefslogtreecommitdiff
path: root/epg.h
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2012-06-04 10:19:23 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2012-06-04 10:19:23 +0200
commit8d8dd8ecbd3a7c95800921009c72123939e3e571 (patch)
treeaec79840530906ce826751ededb9b8aed69c06dd /epg.h
parent4bce65eb10999e2c7500faa6113bb79af600dc2e (diff)
downloadvdr-8d8dd8ecbd3a7c95800921009c72123939e3e571.tar.gz
vdr-8d8dd8ecbd3a7c95800921009c72123939e3e571.tar.bz2
Added HandledExternally() to the EPG handler interface
Diffstat (limited to 'epg.h')
-rw-r--r--epg.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/epg.h b/epg.h
index 6930fe0c..714ac176 100644
--- a/epg.h
+++ b/epg.h
@@ -7,7 +7,7 @@
* Original version (as used in VDR before 1.3.0) written by
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
*
- * $Id: epg.h 2.11 2012/06/04 09:49:24 kls Exp $
+ * $Id: epg.h 2.12 2012/06/04 10:05:21 kls Exp $
*/
#ifndef __EPG_H
@@ -244,6 +244,12 @@ public:
///< EPG handlers are queried to see if any of them would like to do the
///< complete processing by itself. TableID and Version are from the
///< incoming section data.
+ virtual bool HandledExternally(const cChannel *Channel) { return false; }
+ ///< If any EPG handler returns true in this function, it is assumed that
+ ///< the EPG for the given Channel is handled completely from some external
+ ///< source. Incoming EIT data is processed as usual, but any new EPG event
+ ///< will not be added to the respective schedule. It's up to the EPG
+ ///< handler to take care of this.
virtual bool SetEventID(cEvent *Event, tEventID EventID) { return false; }
virtual bool SetTitle(cEvent *Event, const char *Title) { return false; }
virtual bool SetShortText(cEvent *Event, const char *ShortText) { return false; }
@@ -269,6 +275,7 @@ class cEpgHandlers : public cList<cEpgHandler> {
public:
bool IgnoreChannel(const cChannel *Channel);
bool HandleEitEvent(cSchedule *Schedule, const SI::EIT::Event *EitEvent, uchar TableID, uchar Version);
+ bool HandledExternally(const cChannel *Channel);
void SetEventID(cEvent *Event, tEventID EventID);
void SetTitle(cEvent *Event, const char *Title);
void SetShortText(cEvent *Event, const char *ShortText);