home *** CD-ROM | disk | FTP | other *** search
/ Beginning Direct3D Game Programming / Direct3D.iso / directx / dxf / include / bdatypes.h < prev    next >
C/C++ Source or Header  |  2000-10-01  |  16KB  |  586 lines

  1. //------------------------------------------------------------------------------
  2. // File: BDATypes.h
  3. //
  4. // Desc: Typedefs and enums needed by both the WDM drivers and the user mode
  5. //       COM interfaces.
  6. //
  7. // Copyright (c) 1999 - 2000, Microsoft Corporation.  All rights reserved.
  8. //------------------------------------------------------------------------------
  9.  
  10.  
  11. #ifndef _BDATYPES_
  12.  
  13. #define _BDATYPES_      1
  14.  
  15. /* Utility Macros */
  16.  
  17. #define MIN_DIMENSION   1
  18. #define NATURAL     4
  19. #define CACHE_LINE  128
  20. #define PAGE        4096
  21. #define ALIGN( pointer, size) (((ULONG)(pointer) + (ULONG)(size) - 1) & ~((ULONG)(size) - 1))
  22. #define BDA_STRING_CONST(x)   {sizeof(L##x)-2, sizeof(L##x), L##x}
  23.  
  24.  
  25. #ifdef __midl
  26. #define V1_ENUM [v1_enum]
  27. #else
  28. #define V1_ENUM
  29. #endif
  30.  
  31. //===========================================================================
  32. //
  33. //  BDA Topology Structures
  34. //
  35. //===========================================================================
  36.  
  37. typedef struct _BDA_TEMPLATE_CONNECTION
  38. {
  39.     ULONG   FromNodeType;
  40.     ULONG   FromNodePinType;
  41.     ULONG   ToNodeType;
  42.     ULONG   ToNodePinType;
  43. }BDA_TEMPLATE_CONNECTION, *PBDA_TEMPLATE_CONNECTION;
  44.  
  45.  
  46. typedef struct _BDA_TEMPLATE_PIN_JOINT
  47. {
  48.     ULONG   uliTemplateConnection;
  49.     ULONG   ulcInstancesMax;
  50. }BDA_TEMPLATE_PIN_JOINT, *PBDA_TEMPLATE_PIN_JOINT;
  51.  
  52.  
  53.  
  54. //===========================================================================
  55. //
  56. //  BDA Events
  57. //
  58. //===========================================================================
  59.  
  60. //  In-band Event IDs
  61. //
  62. typedef enum {
  63.     BDA_EVENT_SIGNAL_LOSS = 0,
  64.     BDA_EVENT_SIGNAL_LOCK,
  65.     BDA_EVENT_DATA_START,
  66.     BDA_EVENT_DATA_STOP,
  67.     BDA_EVENT_CHANNEL_ACQUIRED,
  68.     BDA_EVENT_CHANNEL_LOST,
  69.     BDA_EVENT_CHANNEL_SOURCE_CHANGED,
  70.     BDA_EVENT_CHANNEL_ACTIVATED,
  71.     BDA_EVENT_CHANNEL_DEACTIVATED,
  72.     BDA_EVENT_SUBCHANNEL_ACQUIRED,
  73.     BDA_EVENT_SUBCHANNEL_LOST,
  74.     BDA_EVENT_SUBCHANNEL_SOURCE_CHANGED,
  75.     BDA_EVENT_SUBCHANNEL_ACTIVATED,
  76.     BDA_EVENT_SUBCHANNEL_DEACTIVATED,
  77.     BDA_EVENT_ACCESS_GRANTED,
  78.     BDA_EVENT_ACCESS_DENIED,
  79.     BDA_EVENT_OFFER_EXTENDED,
  80.     BDA_EVENT_PURCHASE_COMPLETED,
  81.     BDA_EVENT_SMART_CARD_INSERTED,
  82.     BDA_EVENT_SMART_CARD_REMOVED
  83. } BDA_EVENT_ID, *PBDA_EVENT_ID;
  84.  
  85.  
  86.  
  87. //===========================================================================
  88. //
  89. //  KSSTREAM_HEADER extensions for BDA
  90. //
  91. //===========================================================================
  92.  
  93. typedef struct tagKS_BDA_FRAME_INFO {
  94.     ULONG                   ExtendedHeaderSize; // Size of this extended header
  95.     DWORD                   dwFrameFlags;  //
  96.     ULONG                   ulEvent; //
  97.     ULONG                   ulChannelNumber; //
  98.     ULONG                   ulSubchannelNumber; //
  99.     ULONG                   ulReason; //
  100. } KS_BDA_FRAME_INFO, *PKS_BDA_FRAME_INFO;
  101.  
  102.  
  103. //------------------------------------------------------------
  104. //
  105. //  BDA Network Ethernet Filter Property Set
  106. //
  107. // {71985F43-1CA1-11d3-9CC8-00C04F7971E0}
  108. //
  109. typedef struct _BDA_ETHERNET_ADDRESS {
  110.     BYTE    rgbAddress[6];
  111. } BDA_ETHERNET_ADDRESS, *PBDA_ETHERNET_ADDRESS;
  112.  
  113. typedef struct _BDA_ETHERNET_ADDRESS_LIST {
  114.     ULONG               ulcAddresses;
  115.     BDA_ETHERNET_ADDRESS    rgAddressl[MIN_DIMENSION];
  116. } BDA_ETHERNET_ADDRESS_LIST, * PBDA_ETHERNET_ADDRESS_LIST;
  117.  
  118. typedef enum {
  119.     BDA_PROMISCUOUS_MULTICAST = 0,
  120.     BDA_FILTERED_MULTICAST,
  121.     BDA_NO_MULTICAST
  122. } BDA_MULTICAST_MODE, *PBDA_MULTICAST_MODE;
  123.  
  124.  
  125. //------------------------------------------------------------
  126. //
  127. //  BDA Network IPv4 Filter Property Set
  128. //
  129. // {71985F44-1CA1-11d3-9CC8-00C04F7971E0}
  130. //
  131. typedef struct _BDA_IPv4_ADDRESS {
  132.     BYTE    rgbAddress[4];
  133. } BDA_IPv4_ADDRESS, *PBDA_IPv4_ADDRESS;
  134.  
  135. typedef struct _BDA_IPv4_ADDRESS_LIST {
  136.     ULONG               ulcAddresses;
  137.     BDA_IPv4_ADDRESS    rgAddressl[MIN_DIMENSION];
  138. } BDA_IPv4_ADDRESS_LIST, * PBDA_IPv4_ADDRESS_LIST;
  139.  
  140.  
  141. //------------------------------------------------------------
  142. //
  143. //  BDA Network IPv4 Filter Property Set
  144. //
  145. // {E1785A74-2A23-4fb3-9245-A8F88017EF33}
  146. //
  147. typedef struct _BDA_IPv6_ADDRESS {
  148.     BYTE    rgbAddress[6];
  149. } BDA_IPv6_ADDRESS, *PBDA_IPv6_ADDRESS;
  150.  
  151. typedef struct _BDA_IPv6_ADDRESS_LIST {
  152.     ULONG               ulcAddresses;
  153.     BDA_IPv6_ADDRESS    rgAddressl[MIN_DIMENSION];
  154. } BDA_IPv6_ADDRESS_LIST, * PBDA_IPv6_ADDRESS_LIST;
  155.  
  156.  
  157. //------------------------------------------------------------
  158. //
  159. //
  160. //  BDA Signal Property Set
  161. //
  162. //  {D2F1644B-B409-11d2-BC69-00A0C9EE9E16}
  163. //
  164. typedef enum {
  165.     BDA_SIGNAL_UNAVAILABLE = 0,
  166.     BDA_SIGNAL_INACTIVE,
  167.     BDA_SIGNAL_ACTIVE
  168. } BDA_SIGNAL_STATE, * PBDA_SIGNAL_STATE;
  169.  
  170.  
  171. //------------------------------------------------------------
  172. //
  173. //
  174. //  BDA Change Sync Method Set
  175. //
  176. // {FD0A5AF3-B41D-11d2-9C95-00C04F7971E0}
  177. //
  178. typedef enum
  179. {
  180.     BDA_CHANGES_COMPLETE = 0,
  181.     BDA_CHANGES_PENDING
  182.  
  183. } BDA_CHANGE_STATE, * PBDA_CHANGE_STATE;
  184.  
  185.  
  186. //------------------------------------------------------------
  187. //
  188. //
  189. //  BDA Device Configuration Method Set
  190. //
  191. // {71985F45-1CA1-11d3-9CC8-00C04F7971E0}
  192. //
  193.  
  194.  
  195. //------------------------------------------------------------
  196. //
  197. //
  198. //  BDA Topology Property Set
  199. //
  200. // {A14EE835-0A23-11d3-9CC7-00C04F7971E0}
  201. //
  202.  
  203. typedef struct _BDANODE_DESCRIPTOR
  204. {
  205.     ULONG               ulBdaNodeType;  // The node type as it is used
  206.                                         // in the BDA template topology
  207.  
  208.     GUID                guidFunction;   // GUID from BdaMedia.h describing
  209.                                         // the node's function (e.g.
  210.                                         // KSNODE_BDA_RF_TUNER)
  211.  
  212.     GUID                guidName;       // GUID that can be use to look up
  213.                                         // a displayable name for the node.
  214. } BDANODE_DESCRIPTOR, *PBDANODE_DESCRIPTOR;
  215.  
  216.  
  217. //------------------------------------------------------------
  218. //
  219. //
  220. //  BDA Void Transform Property Set
  221. //
  222. // {71985F46-1CA1-11d3-9CC8-00C04F7971E0}
  223. //
  224.  
  225.  
  226. //------------------------------------------------------------
  227. //
  228. //
  229. //  BDA Null Transform Property Set
  230. //
  231. // {DDF15B0D-BD25-11d2-9CA0-00C04F7971E0}
  232. //
  233.  
  234.  
  235. //------------------------------------------------------------
  236. //
  237. //
  238. //  BDA Frequency Filter Property Set
  239. //
  240. // {71985F47-1CA1-11d3-9CC8-00C04F7971E0}
  241. //
  242.  
  243.  
  244. //------------------------------------------------------------
  245. //
  246. //
  247. //  BDA Autodemodulate Property Set
  248. //
  249. // {DDF15B12-BD25-11d2-9CA0-00C04F7971E0}
  250. //
  251.  
  252.  
  253. //------------------------------------------------------------
  254. //
  255. //
  256. //  BDA PmtProcessor Property Set
  257. //
  258. // {516B99C5-971C-4aaf-B3F3-D9FDA8A15E16}
  259. //
  260.  
  261. typedef struct _BDA_PMT
  262. {
  263.     ULONG               ulTableID;
  264.     ULONG               ulcbSectionLength;
  265.     ULONG               argbSectionData[MIN_DIMENSION];
  266. } BDA_PMT, *PBDA_PMT;
  267.  
  268. //------------------------------------------------------------
  269. //
  270. //
  271. //  BDA Descriptor Property Set
  272. //
  273. // {DE6A1C9E-87DF-48aa-95AA-289B7AA4F49F}
  274. //
  275.  
  276. typedef struct _BDA_CAT_DESCRIPTOR
  277. {
  278.     ULONG               ulTag;
  279.     ULONG               ulcbLength;
  280.     ULONG               argbData[MIN_DIMENSION];
  281. } BDA_CAT_DESCRIPTOR, *PBDA_CAT_DESCRIPTOR;
  282.  
  283. typedef struct _BDA_ES_DESCRIPTOR
  284. {
  285.     ULONG               ulProgramNum;
  286.     ULONG               ulContentPID;
  287.     ULONG               ulTag;
  288.     ULONG               ulcbLength;
  289.     ULONG               argbData[MIN_DIMENSION];
  290. } BDA_ES_DESCRIPTOR, *PBDA_ES_DESCRIPTOR;
  291.  
  292. typedef struct _BDA_PROGRAM_DESCRIPTOR
  293. {
  294.     ULONG               ulProgramNum;
  295.     ULONG               ulTag;
  296.     ULONG               ulcbLength;
  297.     ULONG               argbData[MIN_DIMENSION];
  298. } BDA_PROGRAM_DESCRIPTOR, *PBDA_PROGRAM_DESCRIPTOR;
  299.  
  300.  
  301. //------------------------------------------------------------
  302. //
  303. //
  304. //  BDA EsMap Property Set
  305. //
  306. // {FA14A8B3-6068-48ef-96DD-53010B985A7D}
  307. //
  308.  
  309. typedef enum
  310. {
  311.     ES_MAP_STATE_GOOD_FLOW = 0,
  312.     ES_MAP_STATE_NO_CONTENT,
  313.     ES_MAP_STATE_NO_ECM,
  314.     ES_MAP_STATE_BAD_MAP
  315. } BDA_ES_MAP_STATE, *PBDA_ES_MAP_STATE;
  316.  
  317. typedef struct _BDA_ES_MAP
  318. {
  319.     ULONG               ulContentPID;
  320.     ULONG               ulProgramNum;
  321.     ULONG               ulStreamType;
  322.     BDA_ES_MAP_STATE    mapState;
  323. } BDA_ES_MAP, *PBDA_ES_MAP;
  324.  
  325.  
  326. //------------------------------------------------------------
  327. //
  328. //
  329. //  BDA PID Filter Property Set
  330. //
  331. // {D0A67D65-08DF-4fec-8533-E5B550410B85}
  332. //
  333.  
  334. //---------------------------------------------------------------------
  335. // From IEnumPIDMap interface
  336. //---------------------------------------------------------------------
  337.  
  338. typedef enum {
  339.     MEDIA_TRANSPORT_PACKET,         //  complete TS packet e.g. pass-through mode
  340.     MEDIA_ELEMENTARY_STREAM,        //  PES payloads; audio/video only
  341.     MEDIA_MPEG2_PSI,                //  PAT, PMT, CAT, Private
  342.     MEDIA_TRANSPORT_PAYLOAD         //  gathered TS packet payloads (PES packets, etc...)
  343. } MEDIA_SAMPLE_CONTENT ;
  344.  
  345. typedef struct {
  346.     ULONG                   ulPID ;
  347.     MEDIA_SAMPLE_CONTENT    MediaSampleContent ;
  348. } PID_MAP ;
  349.  
  350. typedef struct _BDA_PID_MAP
  351. {
  352.     MEDIA_SAMPLE_CONTENT    MediaSampleContent;
  353.     ULONG                   ulcPIDs;
  354.     ULONG                   aulPIDs[MIN_DIMENSION];
  355. } BDA_PID_MAP, *PBDA_PID_MAP;
  356.  
  357. typedef struct _BDA_PID_UNMAP
  358. {
  359.     ULONG               ulcPIDs;
  360.     ULONG               aulPIDs[MIN_DIMENSION];
  361. } BDA_PID_UNMAP, *PBDA_PID_UNMAP;
  362.  
  363.  
  364. //------------------------------------------------------------
  365. //
  366. //
  367. //  BDA CA Property Set
  368. //
  369. // {B0693766-5278-4ec6-B9E1-3CE40560EF5A}
  370. //
  371. typedef struct _BDA_CA_MODULE_UI
  372. {
  373.     ULONG   ulFormat;
  374.     ULONG   ulbcDesc;
  375.     ULONG   ulDesc[MIN_DIMENSION];
  376. } BDA_CA_MODULE_UI, *PBDA_CA_MODULE_UI;
  377.  
  378.  
  379. //------------------------------------------------------------
  380. //
  381. //
  382. //  BDA CA Event Set
  383. //
  384. // {488C4CCC-B768-4129-8EB1-B00A071F9068}
  385. //
  386.  
  387.  
  388.  
  389. //=============================================================
  390. //
  391. //
  392. //  BDA Tuning Model enumerations
  393. //
  394. //
  395. //=============================================================
  396.  
  397. // system type for particular DVB Tuning Space instance
  398. typedef enum DVBSystemType {
  399.     DVB_Cable,
  400.     DVB_Terrestrial,
  401.     DVB_Satellite,
  402. } DVBSystemType;
  403.  
  404. //------------------------------------------------------------
  405. //
  406. //  BDA Channel Tune Request
  407.  
  408. V1_ENUM enum {
  409.     BDA_UNDEFINED_CHANNEL = -1,
  410. };
  411.  
  412.  
  413. //------------------------------------------------------------
  414. //
  415. //  BDA Component(substream)
  416. //
  417.  
  418. typedef V1_ENUM enum ComponentCategory
  419. {
  420.     CategoryNotSet = -1,
  421.     CategoryOther = 0,
  422.     CategoryVideo,
  423.     CategoryAudio,
  424.     CategoryText,
  425.     CategoryData,
  426. } ComponentCategory;
  427.  
  428. // Component Status
  429. typedef enum ComponentStatus
  430. {
  431.     StatusActive,
  432.     StatusInactive,
  433.     StatusUnavailable,
  434. } ComponentStatus;
  435.  
  436.  
  437. //------------------------------------------------------------
  438. //
  439. //  BDA MPEG2 Component Type
  440. //
  441. // from the MPEG2 specification
  442. typedef V1_ENUM enum MPEG2StreamType {
  443.     BDA_UNITIALIZED_MPEG2STREAMTYPE = -1,
  444.     Reserved1 = 0x0,
  445.     ISO_IEC_11172_2_VIDEO   = Reserved1 + 1,
  446.     ISO_IEC_13818_2_VIDEO   = ISO_IEC_11172_2_VIDEO + 1,
  447.     ISO_IEC_11172_3_AUDIO   = ISO_IEC_13818_2_VIDEO + 1,
  448.     ISO_IEC_13818_3_AUDIO   = ISO_IEC_11172_3_AUDIO + 1,
  449.     ISO_IEC_13818_1_PRIVATE_SECTION = ISO_IEC_13818_3_AUDIO + 1,
  450.     ISO_IEC_13818_1_PES     = ISO_IEC_13818_1_PRIVATE_SECTION + 1,
  451.     ISO_IEC_13522_MHEG      = ISO_IEC_13818_1_PES + 1,
  452.     ANNEX_A_DSM_CC          = ISO_IEC_13522_MHEG + 1,
  453.     ITU_T_REC_H_222_1       = ANNEX_A_DSM_CC + 1,
  454.     ISO_IEC_13818_6_TYPE_A  = ITU_T_REC_H_222_1 + 1,
  455.     ISO_IEC_13818_6_TYPE_B  = ISO_IEC_13818_6_TYPE_A + 1,
  456.     ISO_IEC_13818_6_TYPE_C  = ISO_IEC_13818_6_TYPE_B + 1,
  457.     ISO_IEC_13818_6_TYPE_D  = ISO_IEC_13818_6_TYPE_C + 1,
  458.     ISO_IEC_13818_1_AUXILIARY = ISO_IEC_13818_6_TYPE_D + 1,
  459.     ISO_IEC_13818_1_RESERVED = ISO_IEC_13818_1_AUXILIARY + 1,
  460.     USER_PRIVATE            = ISO_IEC_13818_1_RESERVED + 1
  461. } MPEG2StreamType;
  462.  
  463.  
  464. //------------------------------------------------------------
  465. //
  466. //  BDA ATSC Component Type
  467. //
  468. //
  469. // ATSC made AC3 Audio a descriptor instead of
  470. // defining a user private stream type.
  471. typedef enum ATSCComponentTypeFlags {
  472.     // bit flags for various component type properties
  473.     ATSCCT_AC3 = 0x00000001,
  474. } ATSCComponentTypeFlags;
  475.  
  476.  
  477. //------------------------------------------------------------
  478. //
  479. //  BDA Locators
  480. //
  481.  
  482.  
  483. typedef V1_ENUM enum BinaryConvolutionCodeRate {
  484.     BDA_BCC_RATE_NOT_SET = -1,
  485.     BDA_BCC_RATE_NOT_DEFINED = 0,
  486.     BDA_BCC_RATE_1_2 = 1,   // 1/2
  487.     BDA_BCC_RATE_2_3,   // 2/3
  488.     BDA_BCC_RATE_3_4,   // 3/4
  489.     BDA_BCC_RATE_3_5,
  490.     BDA_BCC_RATE_4_5,
  491.     BDA_BCC_RATE_5_6,   // 5/6
  492.     BDA_BCC_RATE_5_11,
  493.     BDA_BCC_RATE_7_8,   // 7/8
  494.     BDA_BCC_RATE_MAX,
  495. } BinaryConvolutionCodeRate;
  496.  
  497. typedef V1_ENUM enum FECMethod {
  498.     BDA_FEC_METHOD_NOT_SET = -1,
  499.     BDA_FEC_METHOD_NOT_DEFINED = 0,
  500.     BDA_FEC_VITERBI = 1,          // FEC is a Viterbi Binary Convolution.
  501.     BDA_FEC_RS_204_188,       // The FEC is Reed-Solomon 204/188 (outer FEC)
  502.     BDA_FEC_MAX,
  503. } FECMethod;
  504.  
  505. typedef V1_ENUM enum ModulationType {
  506.     BDA_MOD_NOT_SET = -1,
  507.     BDA_MOD_NOT_DEFINED = 0,
  508.     BDA_MOD_16QAM = 1,
  509.     BDA_MOD_32QAM,
  510.     BDA_MOD_64QAM,
  511.     BDA_MOD_80QAM,
  512.     BDA_MOD_96QAM,
  513.     BDA_MOD_112QAM,
  514.     BDA_MOD_128QAM,
  515.     BDA_MOD_160QAM,
  516.     BDA_MOD_192QAM,
  517.     BDA_MOD_224QAM,
  518.     BDA_MOD_256QAM,
  519.     BDA_MOD_320QAM,
  520.     BDA_MOD_384QAM,
  521.     BDA_MOD_448QAM,
  522.     BDA_MOD_512QAM,
  523.     BDA_MOD_640QAM,
  524.     BDA_MOD_768QAM,
  525.     BDA_MOD_896QAM,
  526.     BDA_MOD_1024QAM,
  527.     BDA_MOD_QPSK,
  528.     BDA_MOD_BPSK,
  529.     BDA_MOD_OQPSK,
  530.     BDA_MOD_8VSB,
  531.     BDA_MOD_16VSB,
  532.     BDA_MOD_ANALOG_AMPLITUDE,  // std am
  533.     BDA_MOD_ANALOG_FREQUENCY,  // std fm
  534.     BDA_MOD_MAX,
  535. } ModulationType;
  536.  
  537. typedef V1_ENUM enum SpectralInversion {
  538.     BDA_SPECTRAL_INVERSION_NOT_SET = -1,
  539.     BDA_SPECTRAL_INVERSION_NOT_DEFINED = 0,
  540.     BDA_SPECTRAL_INVERSION_AUTOMATIC = 1,
  541.     BDA_SPECTRAL_INVERSION_NORMAL,
  542.     BDA_SPECTRAL_INVERSION_INVERTED,
  543.     BDA_SPECTRAL_INVERSION_MAX
  544. } SpectralInversion;
  545.  
  546. typedef V1_ENUM enum Polarisation {
  547.     BDA_POLARISATION_NOT_SET = -1,
  548.     BDA_POLARISATION_NOT_DEFINED = 0,
  549.     BDA_POLARISATION_LINEAR_H = 1, // Linear horizontal polarisation
  550.     BDA_POLARISATION_LINEAR_V, // Linear vertical polarisation
  551.     BDA_POLARISATION_CIRCULAR_L, // Circular left polarisation
  552.     BDA_POLARISATION_CIRCULAR_R, // Circular right polarisation
  553.     BDA_POLARISATION_MAX,
  554. } Polarisation;
  555.  
  556. typedef V1_ENUM enum GuardInterval {
  557.     BDA_GUARD_NOT_SET = -1,
  558.     BDA_GUARD_NOT_DEFINED = 0,
  559.     BDA_GUARD_1_32 = 1, // Guard interval is 1/32
  560.     BDA_GUARD_1_16, // Guard interval is 1/16
  561.     BDA_GUARD_1_8, // Guard interval is 1/8
  562.     BDA_GUARD_1_4, // Guard interval is 1/4
  563.     BDA_GUARD_MAX,
  564. } GuardInterval;
  565.  
  566. typedef V1_ENUM enum HierarchyAlpha {
  567.     BDA_HALPHA_NOT_SET = -1,
  568.     BDA_HALPHA_NOT_DEFINED = 0,
  569.     BDA_HALPHA_1 = 1, // Hierarchy alpha is 1.
  570.     BDA_HALPHA_2, // Hierarchy alpha is 2.
  571.     BDA_HALPHA_4, // Hierarchy alpha is 4.
  572.     BDA_HALPHA_MAX,
  573. } HierarchyAlpha;
  574.  
  575. typedef V1_ENUM enum TransmissionMode {
  576.     BDA_XMIT_MODE_NOT_SET = -1,
  577.     BDA_XMIT_MODE_NOT_DEFINED = 0,
  578.     BDA_XMIT_MODE_2K = 1, // Transmission uses 1705 carriers (use a 2K FFT)
  579.     BDA_XMIT_MODE_8K, // Transmission uses 6817 carriers (use an 8K FFT)
  580.     BDA_XMIT_MODE_MAX,
  581. } TransmissionMode;
  582.  
  583. #endif // not defined _BDATYPES_
  584.  
  585. // end of file -- bdatypes.h
  586.