blob: 5c26bfadb4d5375e3ee8f29242dfb9d074753346 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
#ifndef __lib_dvb_specs_h
#define __lib_dvb_specs_h
#include <lib/dvb/idvb.h>
#include <lib/dvb/idemux.h>
#include <lib/dvb_si/pmt.h>
#include <lib/dvb_si/sdt.h>
#include <lib/dvb_si/nit.h>
#include <lib/dvb_si/bat.h>
#include <lib/dvb_si/pat.h>
#include <lib/dvb_si/eit.h>
struct eDVBPMTSpec
{
eDVBTableSpec m_spec;
public:
eDVBPMTSpec(int pid, int sid)
{
m_spec.pid = pid;
m_spec.tid = ProgramMapTable::TID;
m_spec.tidext = sid;
m_spec.timeout = ProgramMapTable::TIMEOUT;
m_spec.flags = eDVBTableSpec::tfAnyVersion |
eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfHaveTIDExt |
eDVBTableSpec::tfCheckCRC | eDVBTableSpec::tfHaveTimeout;
}
operator eDVBTableSpec &()
{
return m_spec;
}
};
struct eDVBSDTSpec
{
eDVBTableSpec m_spec;
public:
eDVBSDTSpec()
{
m_spec.pid = ServiceDescriptionTable::PID;
m_spec.tid = ServiceDescriptionTable::TID;
m_spec.timeout = 20000; // ServiceDescriptionTable::TIMEOUT;
m_spec.flags = eDVBTableSpec::tfAnyVersion |
eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfCheckCRC |
eDVBTableSpec::tfHaveTimeout;
}
operator eDVBTableSpec &()
{
return m_spec;
}
};
struct eDVBNITSpec
{
eDVBTableSpec m_spec;
public:
eDVBNITSpec()
{
m_spec.pid = NetworkInformationTable::PID;
m_spec.tid = NetworkInformationTable::TID;
m_spec.timeout = NetworkInformationTable::TIMEOUT;
m_spec.flags = eDVBTableSpec::tfAnyVersion |
eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfCheckCRC |
eDVBTableSpec::tfHaveTimeout;
}
operator eDVBTableSpec &()
{
return m_spec;
}
};
struct eDVBBATSpec
{
eDVBTableSpec m_spec;
public:
eDVBBATSpec()
{
m_spec.pid = BouquetAssociationTable::PID;
m_spec.tid = BouquetAssociationTable::TID;
m_spec.timeout = BouquetAssociationTable::TIMEOUT;
m_spec.flags = eDVBTableSpec::tfAnyVersion |
eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfCheckCRC |
eDVBTableSpec::tfHaveTimeout;
}
operator eDVBTableSpec &()
{
return m_spec;
}
};
struct eDVBPATSpec
{
eDVBTableSpec m_spec;
public:
eDVBPATSpec()
{
m_spec.pid = ProgramAssociationTable::PID;
m_spec.tid = ProgramAssociationTable::TID;
m_spec.timeout = ProgramAssociationTable::TIMEOUT;
m_spec.flags = eDVBTableSpec::tfAnyVersion |
eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfCheckCRC |
eDVBTableSpec::tfHaveTimeout;
}
operator eDVBTableSpec &()
{
return m_spec;
}
};
class eDVBEITSpec
{
eDVBTableSpec m_spec;
public:
/* this is for now&next on actual transponder. */
eDVBEITSpec(int sid)
{
m_spec.pid = EventInformationTable::PID;
m_spec.tid = EventInformationTable::TID;
m_spec.tidext = sid;
m_spec.timeout = EventInformationTable::TIMEOUT;
m_spec.flags = eDVBTableSpec::tfAnyVersion |
eDVBTableSpec::tfHaveTID | eDVBTableSpec::tfHaveTIDExt |
eDVBTableSpec::tfCheckCRC | eDVBTableSpec::tfHaveTimeout;
}
operator eDVBTableSpec &()
{
return m_spec;
}
};
#endif
|