1 /** 2 * This file is part of the mingw-w64 runtime package. 3 * No warranty is given; refer to the file DISCLAIMER within this package. 4 */ 5 #ifndef _BDATYPES_ 6 #define _BDATYPES_ 1 7 8 #include <winapifamily.h> 9 10 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) 11 12 #define BDA_PLP_ID_NOT_SET -1 13 14 #define MIN_DIMENSION 1 15 16 typedef LONG PBDARESULT; 17 18 typedef enum BDA_EVENT_ID { 19 BDA_EVENT_SIGNAL_LOSS = 0, 20 BDA_EVENT_SIGNAL_LOCK, 21 BDA_EVENT_DATA_START, 22 BDA_EVENT_DATA_STOP, 23 BDA_EVENT_CHANNEL_ACQUIRED, 24 BDA_EVENT_CHANNEL_LOST, 25 BDA_EVENT_CHANNEL_SOURCE_CHANGED, 26 BDA_EVENT_CHANNEL_ACTIVATED, 27 BDA_EVENT_CHANNEL_DEACTIVATED, 28 BDA_EVENT_SUBCHANNEL_ACQUIRED, 29 BDA_EVENT_SUBCHANNEL_LOST, 30 BDA_EVENT_SUBCHANNEL_SOURCE_CHANGED, 31 BDA_EVENT_SUBCHANNEL_ACTIVATED, 32 BDA_EVENT_SUBCHANNEL_DEACTIVATED, 33 BDA_EVENT_ACCESS_GRANTED, 34 BDA_EVENT_ACCESS_DENIED, 35 BDA_EVENT_OFFER_EXTENDED, 36 BDA_EVENT_PURCHASE_COMPLETED, 37 BDA_EVENT_SMART_CARD_INSERTED, 38 BDA_EVENT_SMART_CARD_REMOVED 39 } BDA_EVENT_ID, *PBDA_EVENT_ID; 40 41 typedef enum BDA_MULTICAST_MODE { 42 BDA_PROMISCUOUS_MULTICAST = 0, 43 BDA_FILTERED_MULTICAST, 44 BDA_NO_MULTICAST 45 } BDA_MULTICAST_MODE, *PBDA_MULTICAST_MODE; 46 47 typedef enum BDA_SIGNAL_STATE { 48 BDA_SIGNAL_UNAVAILABLE = 0, 49 BDA_SIGNAL_INACTIVE, 50 BDA_SIGNAL_ACTIVE 51 } BDA_SIGNAL_STATE, *PBDA_SIGNAL_STATE; 52 53 typedef enum BDA_CHANGE_STATE { 54 BDA_CHANGES_COMPLETE = 0, 55 BDA_CHANGES_PENDING 56 } BDA_CHANGE_STATE, *PBDA_CHANGE_STATE; 57 58 #ifdef __WIDL__ 59 typedef [v1_enum] enum MEDIA_SAMPLE_CONTENT 60 #else 61 typedef enum MEDIA_SAMPLE_CONTENT 62 #endif 63 { 64 MEDIA_TRANSPORT_PACKET, 65 MEDIA_ELEMENTARY_STREAM, 66 MEDIA_MPEG2_PSI, 67 MEDIA_TRANSPORT_PAYLOAD 68 } MEDIA_SAMPLE_CONTENT; 69 70 typedef enum ISDBCAS_REQUEST_ID { 71 ISDBCAS_REQUEST_ID_EMG = 0x38, 72 ISDBCAS_REQUEST_ID_EMD = 0x3a, 73 } ISDBCAS_REQUEST_ID; 74 75 typedef enum MUX_PID_TYPE { 76 PID_OTHER = -1, 77 PID_ELEMENTARY_STREAM, 78 PID_MPEG2_SECTION_PSI_SI 79 } MUX_PID_TYPE; 80 81 #ifdef __WIDL__ 82 typedef [v1_enum] enum DVBSystemType 83 #else 84 typedef enum DVBSystemType 85 #endif 86 { 87 DVB_Cable, 88 DVB_Terrestrial, 89 DVB_Satellite, 90 ISDB_Terrestrial, 91 ISDB_Satellite 92 } DVBSystemType; 93 94 typedef enum BDA_Channel { 95 BDA_UNDEFINED_CHANNEL = -1 96 } BDA_Channel; 97 98 #ifdef __WIDL__ 99 typedef [v1_enum] enum ComponentCategory 100 #else 101 typedef enum ComponentCategory 102 #endif 103 { 104 CategoryNotSet = -1, 105 CategoryOther = 0, 106 CategoryVideo, 107 CategoryAudio, 108 CategoryText, 109 CategorySubtitles, 110 CategoryCaptions, 111 CategorySuperimpose, 112 CategoryData, 113 CATEGORY_COUNT 114 } ComponentCategory; 115 116 #ifdef __WIDL__ 117 typedef [v1_enum] enum ComponentStatus 118 #else 119 typedef enum ComponentStatus 120 #endif 121 { 122 StatusActive, 123 StatusInactive, 124 StatusUnavailable 125 } ComponentStatus; 126 127 #ifdef __WIDL__ 128 typedef [v1_enum] enum MPEG2StreamType 129 #else 130 typedef enum MPEG2StreamType 131 #endif 132 { 133 BDA_UNITIALIZED_MPEG2STREAMTYPE = -1, 134 Reserved1 = 0x00, 135 ISO_IEC_11172_2_VIDEO = 0x01, 136 ISO_IEC_13818_2_VIDEO = 0x02, 137 ISO_IEC_11172_3_AUDIO = 0x03, 138 ISO_IEC_13818_3_AUDIO = 0x04, 139 ISO_IEC_13818_1_PRIVATE_SECTION = 0x05, 140 ISO_IEC_13818_1_PES = 0x06, 141 ISO_IEC_13522_MHEG = 0x07, 142 ANNEX_A_DSM_CC = 0x08, 143 ITU_T_REC_H_222_1 = 0x09, 144 ISO_IEC_13818_6_TYPE_A = 0x0a, 145 ISO_IEC_13818_6_TYPE_B = 0x0b, 146 ISO_IEC_13818_6_TYPE_C = 0x0c, 147 ISO_IEC_13818_6_TYPE_D = 0x0d, 148 ISO_IEC_13818_1_AUXILIARY = 0x0e, 149 ISO_IEC_13818_7_AUDIO = 0x0f, 150 ISO_IEC_14496_2_VISUAL = 0x10, 151 ISO_IEC_14496_3_AUDIO = 0x11, 152 ISO_IEC_14496_1_IN_PES = 0x12, 153 ISO_IEC_14496_1_IN_SECTION = 0x13, 154 ISO_IEC_13818_6_DOWNLOAD = 0x14, 155 METADATA_IN_PES = 0x15, 156 METADATA_IN_SECTION = 0x16, 157 METADATA_IN_DATA_CAROUSEL = 0x17, 158 METADATA_IN_OBJECT_CAROUSEL = 0x18, 159 METADATA_IN_DOWNLOAD_PROTOCOL = 0x19, 160 IRPM_STREAMM = 0x1a, 161 ITU_T_H264 = 0x1b, 162 ISO_IEC_13818_1_RESERVED = 0x1c, 163 USER_PRIVATE = 0x10, 164 ISO_IEC_USER_PRIVATE = 0x80, 165 DOLBY_AC3_AUDIO = 0x81, 166 DOLBY_DIGITAL_PLUS_AUDIO_ATSC = 0x87 167 } MPEG2StreamType; 168 169 typedef enum ATSCComponentTypeFlags { 170 ATSCCT_AC3 = 0x1 171 } ATSCComponentTypeFlags; 172 173 #ifdef __WIDL__ 174 typedef [v1_enum] enum BinaryConvolutionCodeRate 175 #else 176 typedef enum BinaryConvolutionCodeRate 177 #endif 178 { 179 BDA_BCC_RATE_NOT_SET = -1, 180 BDA_BCC_RATE_NOT_DEFINED = 0, 181 BDA_BCC_RATE_1_2 = 1, 182 BDA_BCC_RATE_2_3, 183 BDA_BCC_RATE_3_4, 184 BDA_BCC_RATE_3_5, 185 BDA_BCC_RATE_4_5, 186 BDA_BCC_RATE_5_6, 187 BDA_BCC_RATE_5_11, 188 BDA_BCC_RATE_7_8, 189 BDA_BCC_RATE_1_4, 190 BDA_BCC_RATE_1_3, 191 BDA_BCC_RATE_2_5, 192 BDA_BCC_RATE_6_7, 193 BDA_BCC_RATE_8_9, 194 BDA_BCC_RATE_9_10, 195 BDA_BCC_RATE_MAX 196 } BinaryConvolutionCodeRate; 197 198 #ifdef __WIDL__ 199 typedef [v1_enum] enum FECMethod 200 #else 201 typedef enum FECMethod 202 #endif 203 { 204 BDA_FEC_METHOD_NOT_SET = -1, 205 BDA_FEC_METHOD_NOT_DEFINED = 0, 206 BDA_FEC_VITERBI = 1, 207 BDA_FEC_RS_204_188, 208 BDA_FEC_LDPC, 209 BDA_FEC_BCH, 210 BDA_FEC_RS_147_130, 211 BDA_FEC_MAX 212 } FECMethod; 213 214 #ifdef __WIDL__ 215 typedef [v1_enum] enum ModulationType 216 #else 217 typedef enum ModulationType 218 #endif 219 { 220 BDA_MOD_NOT_SET = -1, 221 BDA_MOD_NOT_DEFINED = 0, 222 BDA_MOD_16QAM = 1, 223 BDA_MOD_32QAM, 224 BDA_MOD_64QAM, 225 BDA_MOD_80QAM, 226 BDA_MOD_96QAM, 227 BDA_MOD_112QAM, 228 BDA_MOD_128QAM, 229 BDA_MOD_160QAM, 230 BDA_MOD_192QAM, 231 BDA_MOD_224QAM, 232 BDA_MOD_256QAM, 233 BDA_MOD_320QAM, 234 BDA_MOD_384QAM, 235 BDA_MOD_448QAM, 236 BDA_MOD_512QAM, 237 BDA_MOD_640QAM, 238 BDA_MOD_768QAM, 239 BDA_MOD_896QAM, 240 BDA_MOD_1024QAM, 241 BDA_MOD_QPSK, 242 BDA_MOD_BPSK, 243 BDA_MOD_OQPSK, 244 BDA_MOD_8VSB, 245 BDA_MOD_16VSB, 246 BDA_MOD_ANALOG_AMPLITUDE, 247 BDA_MOD_ANALOG_FREQUENCY, 248 BDA_MOD_8PSK, 249 BDA_MOD_RF, 250 BDA_MOD_16APSK, 251 BDA_MOD_32APSK, 252 BDA_MOD_NBC_QPSK, 253 BDA_MOD_NBC_8PSK, 254 BDA_MOD_DIRECTV, 255 BDA_MOD_ISDB_T_TMCC, 256 BDA_MOD_ISDB_S_TMCC, 257 BDA_MOD_MAX 258 } ModulationType; 259 260 #ifdef __WIDL__ 261 typedef [v1_enum] enum tagScanModulationTypes 262 #else 263 typedef enum tagScanModulationTypes 264 #endif 265 { 266 BDA_SCAN_MOD_16QAM = 0x00000001, 267 BDA_SCAN_MOD_32QAM = 0x00000002, 268 BDA_SCAN_MOD_64QAM = 0x00000004, 269 BDA_SCAN_MOD_80QAM = 0x00000008, 270 BDA_SCAN_MOD_96QAM = 0x00000010, 271 BDA_SCAN_MOD_112QAM = 0x00000020, 272 BDA_SCAN_MOD_128QAM = 0x00000040, 273 BDA_SCAN_MOD_160QAM = 0x00000080, 274 BDA_SCAN_MOD_192QAM = 0x00000100, 275 BDA_SCAN_MOD_224QAM = 0x00000200, 276 BDA_SCAN_MOD_256QAM = 0x00000400, 277 BDA_SCAN_MOD_320QAM = 0x00000800, 278 BDA_SCAN_MOD_384QAM = 0x00001000, 279 BDA_SCAN_MOD_448QAM = 0x00002000, 280 BDA_SCAN_MOD_512QAM = 0x00004000, 281 BDA_SCAN_MOD_640QAM = 0x00008000, 282 BDA_SCAN_MOD_768QAM = 0x00010000, 283 BDA_SCAN_MOD_896QAM = 0x00020000, 284 BDA_SCAN_MOD_1024QAM = 0x00040000, 285 BDA_SCAN_MOD_QPSK = 0x00080000, 286 BDA_SCAN_MOD_BPSK = 0x00100000, 287 BDA_SCAN_MOD_OQPSK = 0x00200000, 288 BDA_SCAN_MOD_8VSB = 0x00400000, 289 BDA_SCAN_MOD_16VSB = 0x00800000, 290 BDA_SCAN_MOD_AM_RADIO = 0x01000000, 291 BDA_SCAN_MOD_FM_RADIO = 0x02000000, 292 BDA_SCAN_MOD_8PSK = 0x04000000, 293 BDA_SCAN_MOD_RF = 0x08000000, 294 ScanModulationTypesMask_MCE_DigitalCable = BDA_MOD_64QAM | 295 BDA_MOD_256QAM, 296 ScanModulationTypesMask_MCE_TerrestrialATSC = BDA_MOD_8VSB, 297 ScanModulationTypesMask_MCE_AnalogTv = BDA_MOD_RF, 298 ScanModulationTypesMask_MCE_All_TV = 0xffffffff, 299 ScanModulationTypesMask_DVBC = BDA_MOD_64QAM | BDA_SCAN_MOD_128QAM | 300 BDA_MOD_256QAM, 301 BDA_SCAN_MOD_16APSK = 0x10000000, 302 BDA_SCAN_MOD_32APSK = 0x20000000, 303 } ScanModulationTypes; 304 305 #ifdef __WIDL__ 306 typedef [v1_enum] enum SpectralInversion 307 #else 308 typedef enum SpectralInversion 309 #endif 310 { 311 BDA_SPECTRAL_INVERSION_NOT_SET = -1, 312 BDA_SPECTRAL_INVERSION_NOT_DEFINED = 0, 313 BDA_SPECTRAL_INVERSION_AUTOMATIC = 1, 314 BDA_SPECTRAL_INVERSION_NORMAL, 315 BDA_SPECTRAL_INVERSION_INVERTED, 316 BDA_SPECTRAL_INVERSION_MAX 317 } SpectralInversion; 318 319 #ifdef __WIDL__ 320 typedef [v1_enum] enum Polarisation 321 #else 322 typedef enum Polarisation 323 #endif 324 { 325 BDA_POLARISATION_NOT_SET = -1, 326 BDA_POLARISATION_NOT_DEFINED = 0, 327 BDA_POLARISATION_LINEAR_H = 1, 328 BDA_POLARISATION_LINEAR_V, 329 BDA_POLARISATION_CIRCULAR_L, 330 BDA_POLARISATION_CIRCULAR_R, 331 BDA_POLARISATION_MAX 332 } Polarisation; 333 334 #ifdef __WIDL__ 335 typedef [v1_enum] enum LNB_Source 336 #else 337 typedef enum LNB_Source 338 #endif 339 { 340 BDA_LNB_SOURCE_NOT_SET = -1, 341 BDA_LNB_SOURCE_NOT_DEFINED = 0, 342 BDA_LNB_SOURCE_A = 1, 343 BDA_LNB_SOURCE_B = 2, 344 BDA_LNB_SOURCE_C = 3, 345 BDA_LNB_SOURCE_D = 4, 346 BDA_LNB_SOURCE_MAX 347 } LNB_Source; 348 349 #ifdef __WIDL__ 350 typedef [v1_enum] enum GuardInterval 351 #else 352 typedef enum GuardInterval 353 #endif 354 { 355 BDA_GUARD_NOT_SET = -1, 356 BDA_GUARD_NOT_DEFINED = 0, 357 BDA_GUARD_1_32 = 1, 358 BDA_GUARD_1_16, 359 BDA_GUARD_1_8, 360 BDA_GUARD_1_4, 361 BDA_GUARD_1_128, 362 BDA_GUARD_19_128, 363 BDA_GUARD_19_256, 364 BDA_GUARD_MAX 365 } GuardInterval; 366 367 #ifdef __WIDL__ 368 typedef [v1_enum] enum HierarchyAlpha 369 #else 370 typedef enum HierarchyAlpha 371 #endif 372 { 373 BDA_HALPHA_NOT_SET = -1, 374 BDA_HALPHA_NOT_DEFINED = 0, 375 BDA_HALPHA_1 = 1, 376 BDA_HALPHA_2, 377 BDA_HALPHA_4, 378 BDA_HALPHA_MAX 379 } HierarchyAlpha; 380 381 #ifdef __WIDL__ 382 typedef [v1_enum] enum TransmissionMode 383 #else 384 typedef enum TransmissionMode 385 #endif 386 { 387 BDA_XMIT_MODE_NOT_SET = -1, 388 BDA_XMIT_MODE_NOT_DEFINED = 0, 389 BDA_XMIT_MODE_2K = 1, 390 BDA_XMIT_MODE_8K, 391 BDA_XMIT_MODE_4K, 392 BDA_XMIT_MODE_2K_INTERLEAVED, 393 BDA_XMIT_MODE_4K_INTERLEAVED, 394 BDA_XMIT_MODE_1K, 395 BDA_XMIT_MODE_16K, 396 BDA_XMIT_MODE_32K, 397 BDA_XMIT_MODE_MAX 398 } TransmissionMode; 399 400 #ifdef __WIDL__ 401 typedef [v1_enum] enum RollOff 402 #else 403 typedef enum RollOff 404 #endif 405 { 406 BDA_ROLL_OFF_NOT_SET = -1, 407 BDA_ROLL_OFF_NOT_DEFINED = 0, 408 BDA_ROLL_OFF_20 = 1, 409 BDA_ROLL_OFF_25, 410 BDA_ROLL_OFF_35, 411 BDA_ROLL_OFF_MAX 412 } RollOff; 413 414 #ifdef __WIDL__ 415 typedef [v1_enum] enum Pilot 416 #else 417 typedef enum Pilot 418 #endif 419 { 420 BDA_PILOT_NOT_SET = -1, 421 BDA_PILOT_NOT_DEFINED = 0, 422 BDA_PILOT_OFF = 1, 423 BDA_PILOT_ON, 424 BDA_PILOT_MAX 425 } Pilot; 426 427 typedef enum BDA_Frequency { 428 BDA_FREQUENCY_NOT_SET = -1, 429 BDA_FREQUENCY_NOT_DEFINED = 0 430 } BDA_Frequency; 431 432 typedef enum BDA_Range { 433 BDA_RANGE_NOT_SET = -1, 434 BDA_RANGE_NOT_DEFINED = 0 435 } BDA_Range; 436 437 typedef enum BDA_Channel_Bandwidth { 438 BDA_CHAN_BANDWITH_NOT_SET = -1, 439 BDA_CHAN_BANDWITH_NOT_DEFINED = 0 440 } BDA_Channel_Bandwidth; 441 442 typedef enum BDA_Frequency_Multiplier { 443 BDA_FREQUENCY_MULTIPLIER_NOT_SET = -1, 444 BDA_FREQUENCY_MULTIPLIER_NOT_DEFINED = 0 445 } BDA_Frequency_Multiplier; 446 447 typedef enum BDA_Comp_Flags { 448 BDACOMP_NOT_DEFINED = 0x00000000, 449 BDACOMP_EXCLUDE_TS_FROM_TR = 0x00000001, 450 BDACOMP_INCLUDE_LOCATOR_IN_TR = 0x00000002, 451 BDACOMP_INCLUDE_COMPONENTS_IN_TR = 0x00000004 452 } BDA_Comp_Flags; 453 454 typedef enum ApplicationTypeType { 455 SCTE28_ConditionalAccess = 0, 456 SCTE28_POD_Host_Binding_Information, 457 SCTE28_IPService, 458 SCTE28_NetworkInterface_SCTE55_2, 459 SCTE28_NetworkInterface_SCTE55_1, 460 SCTE28_CopyProtection, 461 SCTE28_Diagnostic, 462 SCTE28_Undesignated, 463 SCTE28_Reserved, 464 } ApplicationTypeType; 465 466 #ifdef __WIDL__ 467 typedef [v1_enum] enum BDA_CONDITIONALACCESS_REQUESTTYPE 468 #else 469 typedef enum BDA_CONDITIONALACCESS_REQUESTTYPE 470 #endif 471 { 472 CONDITIONALACCESS_ACCESS_UNSPECIFIED = 0, 473 CONDITIONALACCESS_ACCESS_NOT_POSSIBLE, 474 CONDITIONALACCESS_ACCESS_POSSIBLE, 475 CONDITIONALACCESS_ACCESS_POSSIBLE_NO_STREAMING_DISRUPTION 476 } BDA_CONDITIONALACCESS_REQUESTTYPE; 477 478 #ifdef __WIDL__ 479 typedef [v1_enum] enum BDA_CONDITIONALACCESS_MMICLOSEREASON 480 #else 481 typedef enum BDA_CONDITIONALACCESS_MMICLOSEREASON 482 #endif 483 { 484 CONDITIONALACCESS_UNSPECIFIED = 0, 485 CONDITIONALACCESS_CLOSED_ITSELF, 486 CONDITIONALACCESS_TUNER_REQUESTED_CLOSE, 487 CONDITIONALACCESS_DIALOG_TIMEOUT, 488 CONDITIONALACCESS_DIALOG_FOCUS_CHANGE, 489 CONDITIONALACCESS_DIALOG_USER_DISMISSED, 490 CONDITIONALACCESS_DIALOG_USER_NOT_AVAILABLE 491 } BDA_CONDITIONALACCESS_MMICLOSEREASON; 492 493 typedef enum BDA_CONDITIONALACCESS_SESSION_RESULT { 494 CONDITIONALACCESS_SUCCESSFULL = 0, 495 CONDITIONALACCESS_ENDED_NOCHANGE, 496 CONDITIONALACCESS_ABORTED 497 } BDA_CONDITIONALACCESS_SESSION_RESULT; 498 499 typedef enum BDA_DISCOVERY_STATE { 500 BDA_DISCOVERY_UNSPECIFIED = 0, 501 BDA_DISCOVERY_REQUIRED, 502 BDA_DISCOVERY_COMPLETE 503 } BDA_DISCOVERY_STATE; 504 505 typedef struct _BDA_TEMPLATE_CONNECTION { 506 ULONG FromNodeType; 507 ULONG FromNodePinType; 508 ULONG ToNodeType; 509 ULONG ToNodePinType; 510 } BDA_TEMPLATE_CONNECTION, *PBDA_TEMPLATE_CONNECTION; 511 512 typedef struct _BDA_TEMPLATE_PIN_JOINT { 513 ULONG uliTemplateConnection; 514 ULONG ulcInstancesMax; 515 } BDA_TEMPLATE_PIN_JOINT, *PBDA_TEMPLATE_PIN_JOINT; 516 517 typedef struct tagKS_BDA_FRAME_INFO { 518 ULONG ExtendedHeaderSize; 519 DWORD dwFrameFlags; 520 ULONG ulEvent; 521 ULONG ulChannelNumber; 522 ULONG ulSubchannelNumber; 523 ULONG ulReason; 524 } KS_BDA_FRAME_INFO, *PKS_BDA_FRAME_INFO; 525 526 typedef struct _BDA_ETHERNET_ADDRESS { 527 BYTE rgbAddress[6]; 528 } BDA_ETHERNET_ADDRESS, *PBDA_ETHERNET_ADDRESS; 529 530 typedef struct _BDA_ETHERNET_ADDRESS_LIST { 531 ULONG ulcAddresses; 532 BDA_ETHERNET_ADDRESS rgAddressl[MIN_DIMENSION]; 533 } BDA_ETHERNET_ADDRESS_LIST, *PBDA_ETHERNET_ADDRESS_LIST; 534 535 typedef struct _BDA_IPv4_ADDRESS { 536 BYTE rgbAddress[4]; 537 } BDA_IPv4_ADDRESS, *PBDA_IPv4_ADDRESS; 538 539 typedef struct _BDA_IPv4_ADDRESS_LIST { 540 ULONG ulcAddresses; 541 BDA_IPv4_ADDRESS rgAddressl[MIN_DIMENSION]; 542 } BDA_IPv4_ADDRESS_LIST, *PBDA_IPv4_ADDRESS_LIST; 543 544 typedef struct _BDA_IPv6_ADDRESS { 545 BYTE rgbAddress[6]; 546 } BDA_IPv6_ADDRESS, *PBDA_IPv6_ADDRESS; 547 548 typedef struct _BDA_IPv6_ADDRESS_LIST { 549 ULONG ulcAddresses; 550 BDA_IPv6_ADDRESS rgAddressl[MIN_DIMENSION]; 551 } BDA_IPv6_ADDRESS_LIST, *PBDA_IPv6_ADDRESS_LIST; 552 553 typedef struct _BDANODE_DESCRIPTOR { 554 ULONG ulBdaNodeType; 555 GUID guidFunction; 556 GUID guidName; 557 } BDANODE_DESCRIPTOR, *PBDANODE_DESCRIPTOR; 558 559 typedef struct _BDA_TABLE_SECTION { 560 ULONG ulPrimarySectionId; 561 ULONG ulSecondarySectionId; 562 ULONG ulcbSectionLength; 563 ULONG argbSectionData[MIN_DIMENSION]; 564 } BDA_TABLE_SECTION, *PBDA_TABLE_SECTION; 565 566 typedef struct _BDA_DISEQC_SEND { 567 ULONG ulRequestId; 568 ULONG ulPacketLength; 569 BYTE argbPacketData[8]; 570 } BDA_DISEQC_SEND, *PBDA_DISEQC_SEND; 571 572 typedef struct _BDA_DISEQC_RESPONSE { 573 ULONG ulRequestId; 574 ULONG ulPacketLength; 575 BYTE argbPacketData[8]; 576 } BDA_DISEQC_RESPONSE, *PBDA_DISEQC_RESPONSE; 577 578 typedef struct { 579 ULONG ulPID; 580 MEDIA_SAMPLE_CONTENT MediaSampleContent; 581 } PID_MAP; 582 583 typedef struct _BDA_PID_MAP { 584 MEDIA_SAMPLE_CONTENT MediaSampleContent; 585 ULONG ulcPIDs; 586 ULONG aulPIDs[MIN_DIMENSION]; 587 } BDA_PID_MAP, *PBDA_PID_MAP; 588 589 typedef struct _BDA_PID_UNMAP { 590 ULONG ulcPIDs; 591 ULONG aulPIDs[MIN_DIMENSION]; 592 } BDA_PID_UNMAP, *PBDA_PID_UNMAP; 593 594 typedef struct _BDA_CA_MODULE_UI { 595 ULONG ulFormat; 596 ULONG ulbcDesc; 597 ULONG ulDesc[MIN_DIMENSION]; 598 } BDA_CA_MODULE_UI, *PBDA_CA_MODULE_UI; 599 600 typedef struct _BDA_PROGRAM_PID_LIST { 601 ULONG ulProgramNumber; 602 ULONG ulcPIDs; 603 ULONG ulPID[MIN_DIMENSION]; 604 } BDA_PROGRAM_PID_LIST, *PBDA_PROGRAM_PID_LIST; 605 606 typedef struct _BDA_DRM_DRMSTATUS { 607 PBDARESULT lResult; 608 GUID DRMuuid; 609 ULONG ulDrmUuidListStringSize; 610 GUID argbDrmUuidListString[MIN_DIMENSION]; 611 } BDA_DRM_DRMSTATUS, *PBDA_DRM_DRMSTATUS; 612 613 typedef struct _BDA_WMDRM_STATUS { 614 PBDARESULT lResult; 615 ULONG ulMaxCaptureTokenSize; 616 ULONG uMaxStreamingPid; 617 ULONG ulMaxLicense; 618 ULONG ulMinSecurityLevel; 619 ULONG ulRevInfoSequenceNumber; 620 ULONGLONG ulRevInfoIssuedTime; 621 ULONG ulRevListVersion; 622 ULONG ulRevInfoTTL; 623 ULONG ulState; 624 } BDA_WMDRM_STATUS, *PBDA_WMDRM_STATUS; 625 626 typedef struct _BDA_WMDRM_KEYINFOLIST { 627 PBDARESULT lResult; 628 ULONG ulKeyuuidBufferLen; 629 GUID argKeyuuidBuffer[MIN_DIMENSION]; 630 } BDA_WMDRM_KEYINFOLIST, *PBDA_WMDRM_KEYINFOLIST; 631 632 typedef struct _BDA_BUFFER { 633 PBDARESULT lResult; 634 ULONG ulBufferSize; 635 BYTE argbBuffer[MIN_DIMENSION]; 636 } BDA_BUFFER, *PBDA_BUFFER; 637 638 typedef struct _BDA_WMDRM_RENEWLICENSE { 639 PBDARESULT lResult; 640 ULONG ulDescrambleStatus; 641 ULONG ulXmrLicenseOutputLength; 642 BYTE argbXmrLicenceOutputBuffer[MIN_DIMENSION]; 643 } BDA_WMDRM_RENEWLICENSE, *PBDA_WMDRM_RENEWLICENSE; 644 645 typedef struct _BDA_WMDRMTUNER_PIDPROTECTION { 646 PBDARESULT lResult; 647 GUID uuidKeyID; 648 } BDA_WMDRMTUNER_PIDPROTECTION, *PBDA_WMDRMTUNER_PIDPROTECTION; 649 650 typedef struct _BDA_WMDRMTUNER_PURCHASEENTITLEMENT { 651 PBDARESULT lResult; 652 ULONG ulDescrambleStatus; 653 ULONG ulCaptureTokenLength; 654 BYTE argbCaptureTokenBuffer[MIN_DIMENSION]; 655 } BDA_WMDRMTUNER_PURCHASEENTITLEMENT, *PBDA_WMDRMTUNER_PURCHASEENTITLEMENT; 656 657 typedef struct _BDA_TUNER_TUNERSTATE { 658 PBDARESULT lResult; 659 ULONG ulTuneLength; 660 BYTE argbTuneData [MIN_DIMENSION]; 661 } BDA_TUNER_TUNERSTATE, *PBDA_TUNER_TUNERSTATE; 662 663 typedef struct _BDA_TUNER_DIAGNOSTICS { 664 PBDARESULT lResult; 665 ULONG ulSignalLevel; 666 ULONG ulSignalLevelQuality; 667 ULONG ulSignalNoiseRatio; 668 } BDA_TUNER_DIAGNOSTICS, *PBDA_TUNER_DIAGNOSTICS; 669 670 typedef struct _BDA_STRING { 671 PBDARESULT lResult; 672 ULONG ulStringSize; 673 BYTE argbString[MIN_DIMENSION]; 674 } BDA_STRING, *PBDA_STRING; 675 676 typedef struct _BDA_SCAN_CAPABILTIES { 677 PBDARESULT lResult; 678 UINT64 ul64AnalogStandardsSupported; 679 } BDA_SCAN_CAPABILTIES, *PBDA_SCAN_CAPABILTIES; 680 681 typedef struct _BDA_SCAN_STATE { 682 PBDARESULT lResult; 683 ULONG ulSignalLock; 684 ULONG ulSecondsLeft; 685 ULONG ulCurrentFrequency; 686 } BDA_SCAN_STATE, *PBDA_SCAN_STATE; 687 688 typedef struct _BDA_SCAN_START { 689 PBDARESULT lResult; 690 ULONG LowerFrequency; 691 ULONG HigerFrequency; 692 } BDA_SCAN_START, *PBDA_SCAN_START; 693 694 typedef struct _BDA_GDDS_DATATYPE { 695 PBDARESULT lResult; 696 GUID uuidDataType; 697 } BDA_GDDS_DATATYPE, *P_BDA_GDDS_DATATYPE; 698 699 typedef struct _BDA_GDDS_DATA { 700 PBDARESULT lResult; 701 ULONG ulDataLength; 702 ULONG ulPercentageProgress; 703 BYTE argbData [MIN_DIMENSION]; 704 } BDA_GDDS_DATA, *P_BDA_GDDS_DATA; 705 706 typedef struct _BDA_USERACTIVITY_INTERVAL { 707 PBDARESULT lResult; 708 ULONG ulActivityInterval; 709 } BDA_USERACTIVITY_INTERVAL, *P_BDA_USERACTIVITY_INTERVAL; 710 711 typedef struct _BDA_CAS_CHECK_ENTITLEMENTTOKEN { 712 PBDARESULT lResult; 713 ULONG ulDescrambleStatus; 714 } BDA_CAS_CHECK_ENTITLEMENTTOKEN, *PBDA_CAS_CHECK_ENTITLEMENTTOKEN; 715 716 typedef struct _BDA_CAS_CLOSE_MMIDIALOG { 717 PBDARESULT lResult; 718 ULONG SessionResult; 719 } BDA_CAS_CLOSE_MMIDIALOG, *PBDA_CAS_CLOSE_MMIDIALOG; 720 721 typedef struct _BDA_CAS_REQUESTTUNERDATA { 722 UCHAR ucRequestPriority; 723 UCHAR ucRequestReason; 724 UCHAR ucRequestConsequences; 725 ULONG ulEstimatedTime; 726 } BDA_CAS_REQUESTTUNERDATA, *PBDA_CAS_REQUESTTUNERDATA; 727 728 typedef struct _BDA_CAS_OPENMMIDATA { 729 ULONG ulDialogNumber; 730 ULONG ulDialogRequest; 731 GUID uuidDialogType; 732 USHORT usDialogDataLength; 733 BYTE argbDialogData[MIN_DIMENSION]; 734 } BDA_CAS_OPENMMIDATA, *PBDA_CAS_OPENMMIDATA; 735 736 typedef struct _BDA_CAS_CLOSEMMIDATA { 737 ULONG ulDialogNumber; 738 } BDA_CAS_CLOSEMMIDATA, *PBDA_CAS_CLOSEMMIDATA; 739 740 #pragma pack(push, 1) 741 typedef struct _BDA_ISDBCAS_REQUESTHEADER { 742 BYTE bInstruction; 743 BYTE bReserved[3]; 744 ULONG ulDataLength; 745 BYTE argbIsdbCommand[MIN_DIMENSION]; 746 } BDA_ISDBCAS_REQUESTHEADER, *PBDA_ISDBCAS_REQUESTHEADER; 747 748 typedef struct _BDA_ISDBCAS_RESPONSEDATA { 749 PBDARESULT lResult; 750 ULONG ulRequestID; 751 ULONG ulIsdbStatus; 752 ULONG ulIsdbDataSize; 753 BYTE argbIsdbCommandData[MIN_DIMENSION]; 754 } BDA_ISDBCAS_RESPONSEDATA, *PBDA_ISDBCAS_RESPONSEDATA; 755 756 typedef struct _BDA_ISDBCAS_EMG_REQ { 757 BYTE bCLA; 758 BYTE bINS; 759 BYTE bP1; 760 BYTE bP2; 761 BYTE bLC; 762 BYTE bCardId[6]; 763 BYTE bProtocol; 764 BYTE bCABroadcasterGroupId; 765 BYTE bMessageControl; 766 BYTE bMessageCode[MIN_DIMENSION]; 767 } BDA_ISDBCAS_EMG_REQ, *PBDA_ISDBCAS_EMG_REQ; 768 #pragma pack(pop) 769 770 #pragma pack(push, 2) 771 typedef struct _BDA_MUX_PIDLISTITEM { 772 USHORT usPIDNumber; 773 USHORT usProgramNumber; 774 MUX_PID_TYPE ePIDType; 775 } BDA_MUX_PIDLISTITEM, *PBDA_MUX_PIDLISTITEM; 776 #pragma pack(pop) 777 778 #pragma pack(push, 1) 779 typedef struct _BDA_TS_SELECTORINFO { 780 BYTE bTSInfolength; 781 BYTE bReserved[2]; 782 GUID guidNetworkType; 783 BYTE bTSIDCount; 784 USHORT usTSID[MIN_DIMENSION]; 785 } BDA_TS_SELECTORINFO, *PBDA_TS_SELECTORINFO; 786 787 typedef struct _BDA_TS_SELECTORINFO_ISDBS_EXT { 788 BYTE bTMCC[48]; 789 } BDA_TS_SELECTORINFO_ISDBS_EXT, *PBDA_TS_SELECTORINFO_ISDBS_EXT; 790 #pragma pack(pop) 791 792 typedef struct _BDA_DVBT2_L1_SIGNALLING_DATA { 793 BYTE L1Pre_TYPE; 794 BYTE L1Pre_BWT_S1_S2; 795 BYTE L1Pre_REPETITION_GUARD_PAPR; 796 BYTE L1Pre_MOD_COD_FEC; 797 BYTE L1Pre_POSTSIZE_INFO_PILOT[5]; 798 BYTE L1Pre_TX_ID_AVAIL; 799 BYTE L1Pre_CELL_ID[2]; 800 BYTE L1Pre_NETWORK_ID[2]; 801 BYTE L1Pre_T2SYSTEM_ID[2]; 802 BYTE L1Pre_NUM_T2_FRAMES; 803 BYTE L1Pre_NUM_DATA_REGENFLAG_L1POSTEXT[2]; 804 BYTE L1Pre_NUMRF_CURRENTRF_RESERVED[2]; 805 BYTE L1Pre_CRC32[4]; 806 BYTE L1PostData[MIN_DIMENSION]; 807 } BDA_DVBT2_L1_SIGNALLING_DATA, *PBDA_DVBT2_L1_SIGNALLING_DATA; 808 809 typedef struct _BDA_RATING_PINRESET { 810 BYTE bPinLength; 811 BYTE argbNewPin[MIN_DIMENSION]; 812 } BDA_RATING_PINRESET, *PBDA_RATING_PINRESET; 813 814 typedef struct _MPEG2_TRANSPORT_STRIDE { 815 DWORD dwOffset; 816 DWORD dwPacketLength; 817 DWORD dwStride; 818 } MPEG2_TRANSPORT_STRIDE, *PMPEG2_TRANSPORT_STRIDE; 819 820 typedef struct _BDA_SIGNAL_TIMEOUTS { 821 ULONG ulCarrierTimeoutMs; 822 ULONG ulScanningTimeoutMs; 823 ULONG ulTuningTimeoutMs; 824 } BDA_SIGNAL_TIMEOUTS, *PBDA_SIGNAL_TIMEOUTS; 825 826 #endif 827 #endif 828