4 * This file is part of the ReactOS DXSDK package.
6 * THIS SOFTWARE IS NOT COPYRIGHTED
8 * This source code is offered for use in the public domain. You may
9 * use, modify or distribute it freely.
11 * This code is distributed in the hope that it will be useful but
12 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
13 * DISCLAIMED. This includes but is not limited to warranties of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 #define MIN_DIMENSION 1
24 #define V1_ENUM [v1_enum]
29 #define BDA_FREQUENCY_NOT_SET -1
30 #define BDA_FREQUENCY_NOT_DEFINED 0
31 #define BDA_RANGE_NOT_SET -1
32 #define BDA_RANGE_NOT_DEFINED 0
33 #define BDA_CHAN_BANDWITH_NOT_SET -1
34 #define BDA_CHAN_BANDWITH_NOT_DEFINED 0
35 #define BDA_FREQUENCY_MULTIPLIER_NOT_SET -1
36 #define BDA_FREQUENCY_MULTIPLIER_NOT_DEFINED 0
38 typedef struct _BDA_TEMPLATE_CONNECTION
{
40 ULONG FromNodePinType
;
43 } BDA_TEMPLATE_CONNECTION
, *PBDA_TEMPLATE_CONNECTION
;
45 typedef struct _BDA_TEMPLATE_PIN_JOINT
{
46 ULONG uliTemplateConnection
;
47 ULONG ulcInstancesMax
;
48 } BDA_TEMPLATE_PIN_JOINT
, *PBDA_TEMPLATE_PIN_JOINT
;
50 typedef struct tagKS_BDA_FRAME_INFO
{
51 ULONG ExtendedHeaderSize
;
54 ULONG ulChannelNumber
;
55 ULONG ulSubchannelNumber
;
57 } KS_BDA_FRAME_INFO
, *PKS_BDA_FRAME_INFO
;
60 BDA_EVENT_SIGNAL_LOSS
= 0,
61 BDA_EVENT_SIGNAL_LOCK
,
64 BDA_EVENT_CHANNEL_ACQUIRED
,
65 BDA_EVENT_CHANNEL_LOST
,
66 BDA_EVENT_CHANNEL_SOURCE_CHANGED
,
67 BDA_EVENT_CHANNEL_ACTIVATED
,
68 BDA_EVENT_CHANNEL_DEACTIVATED
,
69 BDA_EVENT_SUBCHANNEL_ACQUIRED
,
70 BDA_EVENT_SUBCHANNEL_LOST
,
71 BDA_EVENT_SUBCHANNEL_SOURCE_CHANGED
,
72 BDA_EVENT_SUBCHANNEL_ACTIVATED
,
73 BDA_EVENT_SUBCHANNEL_DEACTIVATED
,
74 BDA_EVENT_ACCESS_GRANTED
,
75 BDA_EVENT_ACCESS_DENIED
,
76 BDA_EVENT_OFFER_EXTENDED
,
77 BDA_EVENT_PURCHASE_COMPLETED
,
78 BDA_EVENT_SMART_CARD_INSERTED
,
79 BDA_EVENT_SMART_CARD_REMOVED
80 } BDA_EVENT_ID
, *PBDA_EVENT_ID
;
82 typedef struct _BDA_ETHERNET_ADDRESS
{
84 } BDA_ETHERNET_ADDRESS
, *PBDA_ETHERNET_ADDRESS
;
86 typedef struct _BDA_ETHERNET_ADDRESS_LIST
{
88 BDA_ETHERNET_ADDRESS rgAddressl
[MIN_DIMENSION
];
89 } BDA_ETHERNET_ADDRESS_LIST
, *PBDA_ETHERNET_ADDRESS_LIST
;
92 BDA_PROMISCUOUS_MULTICAST
= 0,
93 BDA_FILTERED_MULTICAST
,
95 } BDA_MULTICAST_MODE
, *PBDA_MULTICAST_MODE
;
97 typedef struct _BDA_IPv4_ADDRESS
{
99 } BDA_IPv4_ADDRESS
, *PBDA_IPv4_ADDRESS
;
101 typedef struct _BDA_IPv4_ADDRESS_LIST
{
103 BDA_IPv4_ADDRESS rgAddressl
[MIN_DIMENSION
];
104 } BDA_IPv4_ADDRESS_LIST
, *PBDA_IPv4_ADDRESS_LIST
;
106 typedef struct _BDA_IPv6_ADDRESS
{
108 } BDA_IPv6_ADDRESS
, *PBDA_IPv6_ADDRESS
;
110 typedef struct _BDA_IPv6_ADDRESS_LIST
{
112 BDA_IPv6_ADDRESS rgAddressl
[MIN_DIMENSION
];
113 } BDA_IPv6_ADDRESS_LIST
, *PBDA_IPv6_ADDRESS_LIST
;
116 BDA_CHANGES_COMPLETE
= 0,
118 } BDA_CHANGE_STATE
, *PBDA_CHANGE_STATE
;
121 BDA_SIGNAL_UNAVAILABLE
= 0,
124 } BDA_SIGNAL_STATE
, *PBDA_SIGNAL_STATE
;
126 typedef struct _BDANODE_DESCRIPTOR
{
130 } BDANODE_DESCRIPTOR
, *PBDANODE_DESCRIPTOR
;
133 MEDIA_TRANSPORT_PACKET
,
134 MEDIA_ELEMENTARY_STREAM
,
136 MEDIA_TRANSPORT_PAYLOAD
137 } MEDIA_SAMPLE_CONTENT
;
139 typedef struct _BDA_TABLE_SECTION
{
140 ULONG ulPrimarySectionId
;
141 ULONG ulSecondarySectionId
;
142 ULONG ulcbSectionLength
;
143 ULONG argbSectionData
[MIN_DIMENSION
];
144 } BDA_TABLE_SECTION
, *PBDA_TABLE_SECTION
;
148 MEDIA_SAMPLE_CONTENT MediaSampleContent
;
151 typedef struct _BDA_PID_MAP
{
152 MEDIA_SAMPLE_CONTENT MediaSampleContent
;
154 ULONG aulPIDs
[MIN_DIMENSION
];
155 } BDA_PID_MAP
, *PBDA_PID_MAP
;
157 typedef struct _BDA_PID_UNMAP
{
159 ULONG aulPIDs
[MIN_DIMENSION
];
160 } BDA_PID_UNMAP
, *PBDA_PID_UNMAP
;
162 typedef enum DVBSystemType
{
168 typedef struct _BDA_CA_MODULE_UI
{
171 ULONG ulDesc
[MIN_DIMENSION
];
172 } BDA_CA_MODULE_UI
, *PBDA_CA_MODULE_UI
;
174 typedef struct _BDA_PROGRAM_PID_LIST
{
175 ULONG ulProgramNumber
;
177 ULONG ulPID
[MIN_DIMENSION
];
178 } BDA_PROGRAM_PID_LIST
, *PBDA_PROGRAM_PID_LIST
;
181 BDA_UNDEFINED_CHANNEL
= -1,
184 typedef V1_ENUM
enum ComponentCategory
{
193 typedef enum ComponentStatus
{
199 typedef enum ATSCComponentTypeFlags
{
200 ATSCCT_AC3
= 0x00000001,
201 } ATSCComponentTypeFlags
;
203 typedef V1_ENUM
enum MPEG2StreamType
{
204 BDA_UNITIALIZED_MPEG2STREAMTYPE
= -1,
206 ISO_IEC_11172_2_VIDEO
= Reserved1
+ 1,
207 ISO_IEC_13818_2_VIDEO
= ISO_IEC_11172_2_VIDEO
+ 1,
208 ISO_IEC_11172_3_AUDIO
= ISO_IEC_13818_2_VIDEO
+ 1,
209 ISO_IEC_13818_3_AUDIO
= ISO_IEC_11172_3_AUDIO
+ 1,
210 ISO_IEC_13818_1_PRIVATE_SECTION
= ISO_IEC_13818_3_AUDIO
+ 1,
211 ISO_IEC_13818_1_PES
= ISO_IEC_13818_1_PRIVATE_SECTION
+ 1,
212 ISO_IEC_13522_MHEG
= ISO_IEC_13818_1_PES
+ 1,
213 ANNEX_A_DSM_CC
= ISO_IEC_13522_MHEG
+ 1,
214 ITU_T_REC_H_222_1
= ANNEX_A_DSM_CC
+ 1,
215 ISO_IEC_13818_6_TYPE_A
= ITU_T_REC_H_222_1
+ 1,
216 ISO_IEC_13818_6_TYPE_B
= ISO_IEC_13818_6_TYPE_A
+ 1,
217 ISO_IEC_13818_6_TYPE_C
= ISO_IEC_13818_6_TYPE_B
+ 1,
218 ISO_IEC_13818_6_TYPE_D
= ISO_IEC_13818_6_TYPE_C
+ 1,
219 ISO_IEC_13818_1_AUXILIARY
= ISO_IEC_13818_6_TYPE_D
+ 1,
220 ISO_IEC_13818_1_RESERVED
= ISO_IEC_13818_1_AUXILIARY
+ 1,
221 USER_PRIVATE
= ISO_IEC_13818_1_RESERVED
+ 1
224 typedef struct _MPEG2_TRANSPORT_STRIDE
{
226 DWORD dwPacketLength
;
228 } MPEG2_TRANSPORT_STRIDE
, *PMPEG2_TRANSPORT_STRIDE
;
230 typedef V1_ENUM
enum BinaryConvolutionCodeRate
{
231 BDA_BCC_RATE_NOT_SET
= -1,
232 BDA_BCC_RATE_NOT_DEFINED
= 0,
233 BDA_BCC_RATE_1_2
= 1,
242 } BinaryConvolutionCodeRate
;
244 typedef V1_ENUM
enum SpectralInversion
{
245 BDA_SPECTRAL_INVERSION_NOT_SET
= -1,
246 BDA_SPECTRAL_INVERSION_NOT_DEFINED
= 0,
247 BDA_SPECTRAL_INVERSION_AUTOMATIC
= 1,
248 BDA_SPECTRAL_INVERSION_NORMAL
,
249 BDA_SPECTRAL_INVERSION_INVERTED
,
250 BDA_SPECTRAL_INVERSION_MAX
253 typedef V1_ENUM
enum FECMethod
{
254 BDA_FEC_METHOD_NOT_SET
= -1,
255 BDA_FEC_METHOD_NOT_DEFINED
= 0,
261 typedef V1_ENUM
enum ModulationType
{
262 BDA_MOD_NOT_SET
= -1,
263 BDA_MOD_NOT_DEFINED
= 0,
288 BDA_MOD_ANALOG_AMPLITUDE
,
289 BDA_MOD_ANALOG_FREQUENCY
,
293 typedef V1_ENUM
enum TransmissionMode
{
294 BDA_XMIT_MODE_NOT_SET
= -1,
295 BDA_XMIT_MODE_NOT_DEFINED
= 0,
296 BDA_XMIT_MODE_2K
= 1,
301 typedef V1_ENUM
enum Polarisation
{
302 BDA_POLARISATION_NOT_SET
= -1,
303 BDA_POLARISATION_NOT_DEFINED
= 0,
304 BDA_POLARISATION_LINEAR_H
= 1,
305 BDA_POLARISATION_LINEAR_V
,
306 BDA_POLARISATION_CIRCULAR_L
,
307 BDA_POLARISATION_CIRCULAR_R
,
308 BDA_POLARISATION_MAX
,
311 typedef V1_ENUM
enum GuardInterval
{
312 BDA_GUARD_NOT_SET
= -1,
313 BDA_GUARD_NOT_DEFINED
= 0,
321 typedef V1_ENUM
enum HierarchyAlpha
{
322 BDA_HALPHA_NOT_SET
= -1,
323 BDA_HALPHA_NOT_DEFINED
= 0,
330 #endif /* _BDATYPES_ */