#include <epg.h>
|
| cEpgHandler (void) |
|
virtual | ~cEpgHandler () |
|
virtual bool | IgnoreChannel (const cChannel *Channel) |
|
virtual bool | HandleEitEvent (cSchedule *Schedule, const SI::EIT::Event *EitEvent, uchar TableID, uchar Version) |
|
virtual bool | HandledExternally (const cChannel *Channel) |
|
virtual bool | IsUpdate (tEventID EventID, time_t StartTime, uchar TableID, uchar Version) |
|
virtual bool | SetEventID (cEvent *Event, tEventID EventID) |
|
virtual bool | SetTitle (cEvent *Event, const char *Title) |
|
virtual bool | SetShortText (cEvent *Event, const char *ShortText) |
|
virtual bool | SetDescription (cEvent *Event, const char *Description) |
|
virtual bool | SetContents (cEvent *Event, uchar *Contents) |
|
virtual bool | SetParentalRating (cEvent *Event, int ParentalRating) |
|
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 | SetComponents (cEvent *Event, cComponents *Components) |
|
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) |
|
virtual bool | BeginSegmentTransfer (const cChannel *Channel, bool OnlyRunningStatus) |
|
virtual bool | EndSegmentTransfer (bool Modified, bool OnlyRunningStatus) |
|
| cListObject (void) |
|
virtual | ~cListObject () |
|
virtual int | Compare (const cListObject &ListObject) const |
|
void | Append (cListObject *Object) |
|
void | Insert (cListObject *Object) |
|
void | Unlink (void) |
|
int | Index (void) const |
|
cListObject * | Prev (void) const |
|
cListObject * | Next (void) const |
|
Definition at line 224 of file epg.h.
cEpgHandler::cEpgHandler |
( |
void |
| ) |
|
Constructs a new EPG handler and adds it to the list of EPG handlers.
Whenever an event is received from the EIT data stream, the EPG handlers are queried in the order they have been created. As soon as one of the EPG handlers returns true in a member function, none of the remaining handlers will be queried. If none of the EPG handlers returns true in a particular call, the default processing will take place. EPG handlers will be deleted automatically at the end of the program.
Definition at line 1369 of file epg.c.
References cListBase::Add(), and EpgHandlers.
cEpgHandler::~cEpgHandler |
( |
| ) |
|
|
virtual |
virtual bool cEpgHandler::BeginSegmentTransfer |
( |
const cChannel * |
Channel, |
|
|
bool |
OnlyRunningStatus |
|
) |
| |
|
inlinevirtual |
Called directly after IgnoreChannel() before any other handler method is called.
Designed to give handlers the possibility to prepare a database transaction.
Definition at line 276 of file epg.h.
virtual bool cEpgHandler::DropOutdated |
( |
cSchedule * |
Schedule, |
|
|
time_t |
SegmentStart, |
|
|
time_t |
SegmentEnd, |
|
|
uchar |
TableID, |
|
|
uchar |
Version |
|
) |
| |
|
inlinevirtual |
Takes a look at all EPG events between SegmentStart and SegmentEnd and drops outdated events.
Definition at line 273 of file epg.h.
virtual bool cEpgHandler::EndSegmentTransfer |
( |
bool |
Modified, |
|
|
bool |
OnlyRunningStatus |
|
) |
| |
|
inlinevirtual |
Called after the segment data has been processed.
At this point handlers should close/commit/rollback any pending database transactions.
Definition at line 279 of file epg.h.
virtual bool cEpgHandler::FixEpgBugs |
( |
cEvent * |
Event | ) |
|
|
inlinevirtual |
Fixes some known problems with EPG data.
Reimplemented in cTable0Handler.
Definition at line 266 of file epg.h.
virtual bool cEpgHandler::HandledExternally |
( |
const cChannel * |
Channel | ) |
|
|
inlinevirtual |
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.
Definition at line 246 of file epg.h.
Before the raw EitEvent for the given Schedule is processed, the 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.
Definition at line 241 of file epg.h.
virtual bool cEpgHandler::HandleEvent |
( |
cEvent * |
Event | ) |
|
|
inlinevirtual |
After all modifications of the Event have been done, the EPG handler can take a final look at it.
Definition at line 268 of file epg.h.
virtual bool cEpgHandler::IgnoreChannel |
( |
const cChannel * |
Channel | ) |
|
|
inlinevirtual |
Before any EIT data for the given Channel is processed, the EPG handlers are asked whether this Channel shall be completely ignored.
If any of the EPG handlers returns true in this function, no EIT data at all will be processed for this Channel.
Definition at line 236 of file epg.h.
virtual bool cEpgHandler::IsUpdate |
( |
tEventID |
EventID, |
|
|
time_t |
StartTime, |
|
|
uchar |
TableID, |
|
|
uchar |
Version |
|
) |
| |
|
inlinevirtual |
VDR can't perform the update check (version, tid) for externally handled events, therefore the EPG handlers have to take care of this.
Otherwise the parsing of non-updates will waste a lot of resources.
Definition at line 252 of file epg.h.
virtual bool cEpgHandler::SetContents |
( |
cEvent * |
Event, |
|
|
uchar * |
Contents |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SetDescription |
( |
cEvent * |
Event, |
|
|
const char * |
Description |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SetDuration |
( |
cEvent * |
Event, |
|
|
int |
Duration |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SetEventID |
( |
cEvent * |
Event, |
|
|
tEventID |
EventID |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SetParentalRating |
( |
cEvent * |
Event, |
|
|
int |
ParentalRating |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SetShortText |
( |
cEvent * |
Event, |
|
|
const char * |
ShortText |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SetStartTime |
( |
cEvent * |
Event, |
|
|
time_t |
StartTime |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SetTitle |
( |
cEvent * |
Event, |
|
|
const char * |
Title |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SetVps |
( |
cEvent * |
Event, |
|
|
time_t |
Vps |
|
) |
| |
|
inlinevirtual |
virtual bool cEpgHandler::SortSchedule |
( |
cSchedule * |
Schedule | ) |
|
|
inlinevirtual |
Sorts the Schedule after the complete table has been processed.
Definition at line 271 of file epg.h.
The documentation for this class was generated from the following files: