FireBirdLib - Topfield TMS PVR TAP Programming Library
FBLib_EPG.h
Go to the documentation of this file.
1#ifndef FBLIB_EPG_H
2#define FBLIB_EPG_H
3
4 #include "../libFireBird.h"
5 #include "../time/FBLib_time.h"
6
7 #define MAXEPGRECORDS 10000
8
9 typedef struct
10 {
12 dword StartTime;
13 dword EndTime;
14
17 word TSID;
21
25
29
31 void *Callback;
32 } tEPGFilter;
33
34 typedef struct
35 {
36 dword *Next;
37 dword *Prev;
38 } tTreeEntry;
39
40 typedef struct
41 {
42 dword DataStatus:2; //0000: ex unknown1d; 0=invalid, 1=data taken from _EIT_AIR.DAT, 2=data taken from OTA
44 dword unknown1e:7; // always 0
45 dword durationMin:8;
46 dword durationHour:8;
47 dword unknown1a:4; // always 0. Possibly unused
48
49 dword EventID; //0004
50 dword StartTime; //0008
51 dword EndTime; //000c
52 byte NameLength; //0010
53 byte ParentalRate; //0011
54 word NetworkID; //0012
55 word TSID; //0014
56 word ServiceID; //0016
57 word SatIndex; //0018
58 byte unknown6; //001a: 0 or 0x67 if lang is set
59 byte lang[3]; //001b
60 word unknown7; //001e: always 0
63 char *ShortEventText; //0030
64 char *ExtEventText; //0034
65 byte unknown10; //0038: always 0; accessed as byte
66 byte unknown10a; //0039: possibly a alignment filler
67 word ExtEventTextLength; //003a
68
69 //dword unknown11; //003c: addressed as dword by the firmware, not word, and therefore includes unknown12
70 dword unknown11a:8;
71 dword unknown11b:2; //Ext Event Text available
72 dword unknown11c:1;
73 dword unknown11d:4; //=unknown11a-1?
74 dword unknown11e:1;
75 dword unknown11f:16; //possibly unused bits
76
77 dword citID; //0040: ex unknown13; an ID of the _citInfo table. The same ID is available in TYPE_Timer_TMSS.unknown1
78 //68 Bytes
79
80 byte ContentIdentifier; //0044: Content_nibble_level_2 / Content_nibble_level_1
81 byte sourceFlag; //0045: 0 = FTA, 1 - ICE
82 word unknown14; //0046
83 word iceChannel; //0048
84 //72 Bytes
85
86 byte unknown15[6]; //004a
87 //80 Bytes
89
90 extern int EPGInfoCacheEntries;
91 extern int EPGInfoNrEntries;
92 extern int EPGInfoCurrentEntry;
93 extern int EPGInfoCacheFile;
94 extern dword EPGInfoCacheSize;
95 extern byte *EPGInfoCacheMap;
97 extern tEPGFilter EPGFilter;
98 extern bool EPGInfoReverseOrder;
99 extern dword EPGInfoStructSize;
100 extern char EPGCacheFile[40];
101 extern int EPGAbortLoad;
102
103 bool EPGInfo_CreateCache(int NrRecords);
104 void EPGInfo_CloneToCache(dword *TreePointer, byte StructOffset, tEPGFilter *EPGFilter);
105 void EPGInfo_DestroyCache(void);
106 dword EPGInfo_CountEvents(dword *TreePointer);
107 dword EPGInfo_CalculateStructSize(void);
108 void EPGInfo_CopyData(TYPE_EvtInfo *EvtInfo, TYPE_EPGInfo *EPGInfo, dword EventStartTime, dword EventEndTime, short Offset);
109
110#endif
void EPGInfo_CloneToCache(dword *TreePointer, byte StructOffset, tEPGFilter *EPGFilter)
char EPGCacheFile[40]
dword EPGInfo_CountEvents(dword *TreePointer)
tEPGFilter EPGFilter
dword EPGInfoCacheSize
byte * EPGInfoCacheMap
int EPGAbortLoad
void EPGInfo_DestroyCache(void)
dword EPGInfo_CalculateStructSize(void)
bool EPGInfoReverseOrder
int EPGInfoCurrentEntry
int EPGInfoNrEntries
int EPGInfoCacheEntries
bool EPGInfo_CreateCache(int NrRecords)
void EPGInfo_CopyData(TYPE_EvtInfo *EvtInfo, TYPE_EPGInfo *EPGInfo, dword EventStartTime, dword EventEndTime, short Offset)
int EPGInfoCacheFile
TYPE_EPGInfo * EPGInfoCache
dword EPGInfoStructSize
word iceChannel
Definition: FBLib_EPG.h:83
dword unknown11b
Definition: FBLib_EPG.h:71
dword unknown11f
Definition: FBLib_EPG.h:75
dword RunningStatus
Definition: FBLib_EPG.h:43
tTreeEntry TreeFull
Definition: FBLib_EPG.h:62
byte unknown6
Definition: FBLib_EPG.h:58
word SatIndex
Definition: FBLib_EPG.h:57
dword unknown1e
Definition: FBLib_EPG.h:44
word ServiceID
Definition: FBLib_EPG.h:56
byte sourceFlag
Definition: FBLib_EPG.h:81
byte ParentalRate
Definition: FBLib_EPG.h:53
dword durationHour
Definition: FBLib_EPG.h:46
tTreeEntry TreeByHash
Definition: FBLib_EPG.h:61
dword unknown11e
Definition: FBLib_EPG.h:74
dword unknown1a
Definition: FBLib_EPG.h:47
byte unknown10
Definition: FBLib_EPG.h:65
word NetworkID
Definition: FBLib_EPG.h:54
byte NameLength
Definition: FBLib_EPG.h:52
dword DataStatus
Definition: FBLib_EPG.h:42
dword unknown11a
Definition: FBLib_EPG.h:70
word unknown7
Definition: FBLib_EPG.h:60
dword EventID
Definition: FBLib_EPG.h:49
char * ExtEventText
Definition: FBLib_EPG.h:64
dword EndTime
Definition: FBLib_EPG.h:51
char * ShortEventText
Definition: FBLib_EPG.h:63
byte ContentIdentifier
Definition: FBLib_EPG.h:80
byte unknown10a
Definition: FBLib_EPG.h:66
word ExtEventTextLength
Definition: FBLib_EPG.h:67
word unknown14
Definition: FBLib_EPG.h:82
dword StartTime
Definition: FBLib_EPG.h:50
dword citID
Definition: FBLib_EPG.h:77
dword durationMin
Definition: FBLib_EPG.h:45
dword unknown11c
Definition: FBLib_EPG.h:72
dword unknown11d
Definition: FBLib_EPG.h:73
bool UseCallback
Definition: FBLib_EPG.h:30
dword StartTime
Definition: FBLib_EPG.h:12
bool GenreFilter
Definition: FBLib_EPG.h:26
word MaxDuration
Definition: FBLib_EPG.h:24
bool StartCurrent
Definition: FBLib_EPG.h:20
byte * GenreArray
Definition: FBLib_EPG.h:27
byte SatIndex
Definition: FBLib_EPG.h:19
word TSID
Definition: FBLib_EPG.h:17
dword EndTime
Definition: FBLib_EPG.h:13
void * Callback
Definition: FBLib_EPG.h:31
byte GenreArraySize
Definition: FBLib_EPG.h:28
bool TimeFilter
Definition: FBLib_EPG.h:11
bool ChannelFilter
Definition: FBLib_EPG.h:15
bool DurationFilter
Definition: FBLib_EPG.h:22
word MinDuration
Definition: FBLib_EPG.h:23
word ServiceID
Definition: FBLib_EPG.h:18
word NetworkID
Definition: FBLib_EPG.h:16
dword * Next
Definition: FBLib_EPG.h:36
dword * Prev
Definition: FBLib_EPG.h:37