From 860786f809e55ac36d3f347b132d93118ca201d4 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sat, 10 Mar 2012 15:10:43 +0100 Subject: Added a new plugin interface for implementing EPG handlers --- PLUGINS.html | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'PLUGINS.html') diff --git a/PLUGINS.html b/PLUGINS.html index 4d939430..82164bff 100644 --- a/PLUGINS.html +++ b/PLUGINS.html @@ -102,6 +102,7 @@ structures and allows it to hook itself into specific areas to perform special a
  • Audio
  • Remote Control
  • Conditional Access +
  • Electronic Program Guide @@ -2212,5 +2213,37 @@ virtual bool Assign(cDevice *Device, bool Query = false); See the description of this function in ci.h for details. +
    +

    Electronic Program Guide

    + +
    The grass is always greener on the other side...

    + +In case the Electronic Program Guide (EPG) provided by the broadcaster +isn't sufficient for your taste, you can implement a cEpgHandler to +improve it from external sources. For instance, to replace the description +of the broadcaster's EPG with one from some external database, you could do: + +

    +#include <vdr/epg.h>
    +
    +class cMyEpgHandler : public cEpgHandler {
    +public:
    +  virtual bool SetDescription(cEvent *Event, const char *Description);
    +  };
    +
    +bool cMyEpgHandler::SetDescription(cEvent *Event, const char *Description)
    +{
    +  Event->SetDescription(DescriptionFromDatabase(Event));
    +  return true;
    +}
    +

    + +where DescriptionFromDatabase() would derive the description of the + given event from some external source. Note that the function returns true +to signal VDR that no other EPG handlers shall be queried after this one. +

    +See VDR/epg.h for details. +

    + -- cgit v1.2.3