diff options
author | horchi <vdr@jwendel.de> | 2017-03-14 07:30:24 +0100 |
---|---|---|
committer | horchi <vdr@jwendel.de> | 2017-03-14 07:30:24 +0100 |
commit | 3345d4c5afa59a3a7f536fec61fb314bc00640c6 (patch) | |
tree | caeb9c570da706f088ddea3727d8a704b1810255 /service.c | |
parent | fc75b2cfa67c6b910293059614325c10a720f995 (diff) | |
download | vdr-plugin-epg2vdr-3345d4c5afa59a3a7f536fec61fb314bc00640c6.tar.gz vdr-plugin-epg2vdr-3345d4c5afa59a3a7f536fec61fb314bc00640c6.tar.bz2 |
2017-03-146: version 1.1.47 (horchi)\n - added: Started extended event interface for skins\n\n1.1.47
Diffstat (limited to 'service.c')
-rw-r--r-- | service.c | 34 |
1 files changed, 34 insertions, 0 deletions
@@ -69,3 +69,37 @@ cEpgEvent::cEpgEvent(tEventID EventID) { } + +bool cEpgEvent::Read(FILE *f) +{ + char *s; + int line = 0; + cReadLine ReadLine; + + while ((s = ReadLine.Read(f)) != NULL) { + line++; + char *t = skipspace(s + 1); + switch (*s) { + case 'E': { + unsigned int EventID; + time_t StartTime; + int Duration; + unsigned int TableID = 0; + unsigned int Version = 0xFF; // actual value is ignored + int n = sscanf(t, "%u %ld %d %X %X", &EventID, &StartTime, &Duration, &TableID, &Version); + if (n >= 3 && n <= 5) { + SetTableID(TableID); + SetStartTime(StartTime); + SetDuration(Duration); + } + break; + } + default: if (!Parse(s)) { + esyslog("ERROR: EPG data problem in line %d", line); + return false; + } + } + } + + return true; +} |