Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

381 lines
14 KiB

  1. /*******************************************************************************
  2. *
  3. * (C) COPYRIGHT MICROSOFT CORP., 1998
  4. *
  5. * TITLE: DefProp.h
  6. *
  7. * VERSION: 2.0
  8. *
  9. * AUTHOR: ReedB
  10. *
  11. * DATE: 30 July, 1998
  12. *
  13. * DESCRIPTION:
  14. * Default property Declarations and definitions for the
  15. * WIA test scanner.
  16. *
  17. *******************************************************************************/
  18. #include "tcamprop.h"
  19. #define NUM_CAP_ENTRIES 5
  20. #define NUM_EVENTS 3
  21. #define PREFFERED_FORMAT_NOM &WiaImgFmt_BMP
  22. #define FORMAT_NOM &WiaImgFmt_BMP
  23. #define NUM_CAM_ITEM_PROPS (19)
  24. #define NUM_CAM_DEV_PROPS (17)
  25. #define NUM_AUDIO_PROPS (6)
  26. #define NUM_FORMAT 2
  27. #define FORMAT_INDEX 10
  28. #ifdef __GLOBALPROPVARS__
  29. PROPID gAudioPropIDs[NUM_AUDIO_PROPS] =
  30. {
  31. WIA_IPA_ITEM_TIME,
  32. WIA_IPA_PREFERRED_FORMAT,
  33. WIA_IPA_ITEM_SIZE,
  34. WIA_IPA_FORMAT,
  35. WIA_IPA_TYMED,
  36. WIA_IPA_ACCESS_RIGHTS,
  37. };
  38. LPOLESTR gAudioPropNames[NUM_AUDIO_PROPS] =
  39. {
  40. WIA_IPA_ITEM_TIME_STR,
  41. WIA_IPA_PREFERRED_FORMAT_STR,
  42. WIA_IPA_ITEM_SIZE_STR,
  43. WIA_IPA_FORMAT_STR,
  44. WIA_IPA_TYMED_STR,
  45. WIA_IPA_ACCESS_RIGHTS_STR,
  46. };
  47. PROPID gItemPropIDs[NUM_CAM_ITEM_PROPS] = {
  48. WIA_IPA_DATATYPE,
  49. WIA_IPA_DEPTH,
  50. WIA_IPA_PIXELS_PER_LINE,
  51. WIA_IPA_NUMBER_OF_LINES,
  52. WIA_IPC_THUMBNAIL,
  53. WIA_IPA_ITEM_TIME,
  54. WIA_IPC_THUMB_WIDTH,
  55. WIA_IPC_THUMB_HEIGHT,
  56. WIA_IPA_PREFERRED_FORMAT,
  57. WIA_IPA_ITEM_SIZE,
  58. WIA_IPA_FORMAT,
  59. WIA_IPA_TYMED,
  60. WIA_IPA_COMPRESSION,
  61. WIA_IPA_CHANNELS_PER_PIXEL,
  62. WIA_IPA_BITS_PER_CHANNEL,
  63. WIA_IPA_PLANAR,
  64. WIA_IPA_BYTES_PER_LINE,
  65. WIA_IPA_ACCESS_RIGHTS,
  66. WIA_IPA_MIN_BUFFER_SIZE
  67. };
  68. LPOLESTR gItemPropNames[NUM_CAM_ITEM_PROPS] =
  69. {
  70. WIA_IPA_DATATYPE_STR,
  71. WIA_IPA_DEPTH_STR,
  72. WIA_IPA_PIXELS_PER_LINE_STR,
  73. WIA_IPA_NUMBER_OF_LINES_STR,
  74. WIA_IPC_THUMBNAIL_STR,
  75. WIA_IPA_ITEM_TIME_STR,
  76. WIA_IPC_THUMB_WIDTH_STR,
  77. WIA_IPC_THUMB_HEIGHT_STR,
  78. WIA_IPA_PREFERRED_FORMAT_STR,
  79. WIA_IPA_ITEM_SIZE_STR,
  80. WIA_IPA_FORMAT_STR,
  81. WIA_IPA_TYMED_STR,
  82. WIA_IPA_COMPRESSION_STR,
  83. WIA_IPA_CHANNELS_PER_PIXEL_STR,
  84. WIA_IPA_BITS_PER_CHANNEL_STR,
  85. WIA_IPA_PLANAR_STR,
  86. WIA_IPA_BYTES_PER_LINE_STR,
  87. WIA_IPA_ACCESS_RIGHTS_STR,
  88. WIA_IPA_MIN_BUFFER_SIZE_STR
  89. };
  90. PROPID gItemCameraPropIDs[WIA_NUM_IPC] = {
  91. WIA_IPC_AUDIO_AVAILABLE,
  92. WIA_IPC_AUDIO_DATA
  93. };
  94. LPOLESTR gItemCameraPropNames[WIA_NUM_IPC] =
  95. {
  96. WIA_IPC_AUDIO_AVAILABLE_STR,
  97. WIA_IPC_AUDIO_DATA_STR,
  98. };
  99. PROPID gDevicePropIDs[NUM_CAM_DEV_PROPS] =
  100. {
  101. WIA_DPA_FIRMWARE_VERSION,
  102. WIA_DPA_CONNECT_STATUS,
  103. WIA_DPA_DEVICE_TIME,
  104. WIA_DPC_PICTURES_TAKEN,
  105. WIA_DPC_PICTURES_REMAINING,
  106. WIA_DPC_THUMB_WIDTH,
  107. WIA_DPC_THUMB_HEIGHT,
  108. WIA_DPC_PICT_WIDTH,
  109. WIA_DPC_PICT_HEIGHT,
  110. WIA_DPC_EXPOSURE_MODE,
  111. WIA_DPC_FLASH_MODE,
  112. WIA_DPC_FOCUS_MODE,
  113. WIA_DPC_ZOOM_POSITION,
  114. WIA_DPC_BATTERY_STATUS,
  115. WIA_DPC_TIMER_MODE,
  116. WIA_DPC_TIMER_VALUE,
  117. WIA_DPP_TCAM_ROOT_PATH
  118. };
  119. LPOLESTR gDevicePropNames[NUM_CAM_DEV_PROPS] =
  120. {
  121. WIA_DPA_FIRMWARE_VERSION_STR,
  122. WIA_DPA_CONNECT_STATUS_STR,
  123. WIA_DPA_DEVICE_TIME_STR,
  124. WIA_DPC_PICTURES_TAKEN_STR,
  125. WIA_DPC_PICTURES_REMAINING_STR,
  126. WIA_DPC_THUMB_WIDTH_STR,
  127. WIA_DPC_THUMB_HEIGHT_STR,
  128. WIA_DPC_PICT_WIDTH_STR,
  129. WIA_DPC_PICT_HEIGHT_STR,
  130. WIA_DPC_EXPOSURE_MODE_STR,
  131. WIA_DPC_FLASH_MODE_STR,
  132. WIA_DPC_FOCUS_MODE_STR,
  133. WIA_DPC_ZOOM_POSITION_STR,
  134. WIA_DPC_BATTERY_STATUS_STR,
  135. WIA_DPC_TIMER_MODE_STR,
  136. WIA_DPC_TIMER_VALUE_STR,
  137. WIA_DPP_TCAM_ROOT_PATH_STR
  138. };
  139. PROPSPEC gDevicePropSpecDefaults[NUM_CAM_DEV_PROPS] = {
  140. {PRSPEC_PROPID, WIA_DPA_FIRMWARE_VERSION},
  141. {PRSPEC_PROPID, WIA_DPA_CONNECT_STATUS},
  142. {PRSPEC_PROPID, WIA_DPA_DEVICE_TIME},
  143. {PRSPEC_PROPID, WIA_DPC_PICTURES_TAKEN},
  144. {PRSPEC_PROPID, WIA_DPC_PICTURES_REMAINING},
  145. {PRSPEC_PROPID, WIA_DPC_THUMB_WIDTH},
  146. {PRSPEC_PROPID, WIA_DPC_THUMB_HEIGHT},
  147. {PRSPEC_PROPID, WIA_DPC_PICT_WIDTH},
  148. {PRSPEC_PROPID, WIA_DPC_PICT_HEIGHT},
  149. {PRSPEC_PROPID, WIA_DPC_EXPOSURE_MODE},
  150. {PRSPEC_PROPID, WIA_DPC_FLASH_MODE},
  151. {PRSPEC_PROPID, WIA_DPC_FOCUS_MODE},
  152. {PRSPEC_PROPID, WIA_DPC_ZOOM_POSITION},
  153. {PRSPEC_PROPID, WIA_DPC_BATTERY_STATUS},
  154. {PRSPEC_PROPID, WIA_DPC_TIMER_MODE},
  155. {PRSPEC_PROPID, WIA_DPC_TIMER_VALUE},
  156. {PRSPEC_PROPID, WIA_DPP_TCAM_ROOT_PATH}
  157. };
  158. WIA_PROPERTY_INFO gDevPropInfoDefaults[NUM_CAM_DEV_PROPS] = {
  159. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPA_FIRMWARE_VERSION
  160. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPA_CONNECT_STATUS
  161. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPA_DEVICE_TIME
  162. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_PICTURES_TAKEN
  163. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_PICTURES_REMAINING
  164. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_THUMB_WIDTH
  165. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_THUMB_HEIGHT
  166. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_PICT_WIDTH
  167. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_PICT_HEIGHT
  168. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_EXPOSURE_MODE
  169. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_FLASH_MODE
  170. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_FOCUS_MODE
  171. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_ZOOM_POSITION
  172. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_BATTERY_STATUS
  173. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_TIMER_MODE
  174. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_DPC_TIMER_VALUE
  175. {WIA_PROP_RW | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0} // WIA_DPP_ROOT_PATH
  176. };
  177. PROPSPEC gPropSpecDefaults[NUM_CAM_ITEM_PROPS] = {
  178. {PRSPEC_PROPID, WIA_IPA_DATATYPE},
  179. {PRSPEC_PROPID, WIA_IPA_DEPTH},
  180. {PRSPEC_PROPID, WIA_IPA_PIXELS_PER_LINE},
  181. {PRSPEC_PROPID, WIA_IPA_NUMBER_OF_LINES},
  182. {PRSPEC_PROPID, WIA_IPC_THUMBNAIL},
  183. {PRSPEC_PROPID, WIA_IPA_ITEM_TIME},
  184. {PRSPEC_PROPID, WIA_IPC_THUMB_WIDTH},
  185. {PRSPEC_PROPID, WIA_IPC_THUMB_HEIGHT},
  186. {PRSPEC_PROPID, WIA_IPA_PREFERRED_FORMAT},
  187. {PRSPEC_PROPID, WIA_IPA_ITEM_SIZE},
  188. {PRSPEC_PROPID, WIA_IPA_FORMAT},
  189. {PRSPEC_PROPID, WIA_IPA_TYMED},
  190. {PRSPEC_PROPID, WIA_IPA_COMPRESSION},
  191. {PRSPEC_PROPID, WIA_IPA_CHANNELS_PER_PIXEL},
  192. {PRSPEC_PROPID, WIA_IPA_BITS_PER_CHANNEL},
  193. {PRSPEC_PROPID, WIA_IPA_PLANAR},
  194. {PRSPEC_PROPID, WIA_IPA_BYTES_PER_LINE},
  195. {PRSPEC_PROPID, WIA_IPA_ACCESS_RIGHTS},
  196. {PRSPEC_PROPID, WIA_IPA_MIN_BUFFER_SIZE},
  197. };
  198. #ifdef _WIN64
  199. #define FPTR(x) (LONG_PTR)NULL
  200. #else
  201. #define FPTR(x) x
  202. #endif
  203. PROPSPEC gAudioPropDefaults[NUM_AUDIO_PROPS] =
  204. {
  205. {PRSPEC_PROPID, WIA_IPA_ITEM_TIME},
  206. {PRSPEC_PROPID,WIA_IPA_PREFERRED_FORMAT},
  207. {PRSPEC_PROPID,WIA_IPA_ITEM_SIZE},
  208. {PRSPEC_PROPID,WIA_IPA_FORMAT},
  209. {PRSPEC_PROPID,WIA_IPA_TYMED},
  210. {PRSPEC_PROPID,WIA_IPA_ACCESS_RIGHTS},
  211. };
  212. LONG gAudioDefaults[(sizeof(PROPVARIANT) / sizeof(LONG)) * (NUM_AUDIO_PROPS)] =
  213. {
  214. VT_VECTOR | VT_I4, 0, 0, 0,
  215. VT_CLSID, 0, (LONG)(LONG_PTR)FPTR(&WiaAudFmt_WAV), 0,
  216. VT_I4, 0, 0, 0,
  217. VT_CLSID, 0, (LONG)(LONG_PTR)FPTR(&WiaAudFmt_WAV), 0,
  218. VT_I4, 0, TYMED_FILE, 0,
  219. VT_I4, 0, WIA_ITEM_RD, 0
  220. };
  221. LONG gPropVarDefaults[(sizeof(PROPVARIANT) / sizeof(LONG)) * (NUM_CAM_ITEM_PROPS)] = {
  222. // VARTYPE reserved val pad/array ptr
  223. (LONG)VT_I4, 0x00000000, WIA_DATA_GRAYSCALE,0x00000000, // WIA_IPA_DATATYPE
  224. (LONG)VT_I4, 0x00000000, 8, 0x00000000, // WIA_IPA_DEPTH
  225. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPA_PIXELS_PER_LINE
  226. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPA_NUMBER_OF_LINES
  227. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPC_THUMBNAIL
  228. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPA_ITEM_TIME
  229. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPC_THUMB_WIDTH
  230. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPC_THUMB_HEIGHT
  231. (LONG)VT_CLSID, 0x00000000, (LONG)(LONG_PTR)FPTR(PREFFERED_FORMAT_NOM),0x00000000, // WIA_IPA_PREFERRED_FORMAT
  232. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPA_ITEM_SIZE
  233. (LONG)VT_CLSID, 0x00000000, (LONG)(LONG_PTR)FPTR(FORMAT_NOM), 0x00000000, // WIA_IPA_FORMAT
  234. (LONG)VT_I4, 0x00000000, TYMED_FILE, 0x00000000, // WIA_IPA_TYMED
  235. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPA_COMPRESSION
  236. (LONG)VT_I4, 0x00000000, 3, 0x00000000, // WIA_IPA_CHANNELS PER PIXEL
  237. (LONG)VT_I4, 0x00000000, 8, 0x00000000, // WIA_IPA_BITS PER CHANNEL
  238. (LONG)VT_I4, 0x00000000, WIA_PACKED_PIXEL, 0x00000000, // WIA_IPA_PLANAR
  239. (LONG)VT_I4, 0x00000000, 0, 0x00000000, // WIA_IPA_WIDTH IN BYTES
  240. (LONG)VT_I4, 0x00000000, WIA_ITEM_RD, 0x00000000, // WIA_IPA_ACCESS_RIGHTS
  241. (LONG)VT_I4, 0x00000000, 65535, 0x00000000, // WIA_IPA_MIN_BUFFER_SIZE
  242. };
  243. // Default device extended properties.
  244. #define NUM_DATATYPE 3
  245. LONG lDataTypes[NUM_DATATYPE] = {
  246. WIA_DATA_THRESHOLD,
  247. WIA_DATA_GRAYSCALE,
  248. WIA_DATA_COLOR
  249. };
  250. #define NUM_DEPTH 3
  251. LONG lDepths[NUM_DEPTH] = {
  252. 1,
  253. 8,
  254. 24
  255. };
  256. GUID gGuidFormats[NUM_FORMAT]; // FormatID's specified in pguidFormats are copied to gGuidFormats
  257. // during SetFormatAttribs
  258. //
  259. // This is an array of WIA_FORMAT_INFOs, describing the different formats
  260. // and their corresponding media types. Initialized in minidrvr.cpp
  261. //
  262. WIA_FORMAT_INFO *g_wfiTable = NULL;
  263. //
  264. // Different media types supported
  265. //
  266. #define NUM_TYMED 2
  267. LONG lTymeds [NUM_TYMED]= {
  268. TYMED_FILE,
  269. TYMED_CALLBACK,
  270. };
  271. //
  272. // Extended information for each property
  273. //
  274. WIA_PROPERTY_INFO gItemPropInfos[NUM_CAM_ITEM_PROPS] = {
  275. {WIA_PROP_READ | WIA_PROP_LIST, VT_I4, NUM_DATATYPE, WIA_DATA_GRAYSCALE, (LONG)FPTR( lDataTypes), 0}, // WIA_IPA_DATATYPE
  276. {WIA_PROP_READ | WIA_PROP_LIST, VT_I4, NUM_DEPTH, 8, (LONG)FPTR( lDepths), 0}, // WIA_IPA_DEPTH
  277. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_PIXELS_PER_LINE
  278. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_NUMBER_OF_LINES
  279. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPC_THUMBNAIL
  280. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_ITEM_TIME
  281. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPC_THUMB_WIDTH
  282. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPC_THUMB_HEIGHT
  283. {WIA_PROP_READ | WIA_PROP_NONE, VT_CLSID, 0, 0, 0, 0}, // WIA_IPA_PREFERRED_FORMAT, set later
  284. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_ITEM_SIZE
  285. {WIA_PROP_RW | WIA_PROP_LIST, VT_CLSID, 0, 0, 0, 0}, // WIA_IPA_FORMAT, set later
  286. {WIA_PROP_RW | WIA_PROP_LIST, VT_I4, NUM_TYMED, TYMED_FILE, (LONG)FPTR(lTymeds), 0}, // WIA_IPA_TYMED
  287. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_COMPRESSION
  288. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_CHANNELS
  289. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_BITS_PER_CHANNEL
  290. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_PLANAR
  291. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_BYTES_PER_LINE
  292. {WIA_PROP_RW | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_ACCESS_RIGHTS
  293. {WIA_PROP_READ | WIA_PROP_NONE, VT_I4, 0, 0, 0, 0}, // WIA_IPA_MIN_BUFFER_SIZE
  294. };
  295. //
  296. // Device capabilities. Events are listed before commands to simplify the
  297. // implementation of drvGetCapabilities(...)
  298. //
  299. #define N WIA_NOTIFICATION_EVENT
  300. #define A WIA_ACTION_EVENT
  301. #define NA (WIA_NOTIFICATION_EVENT | WIA_ACTION_EVENT)
  302. WIA_DEV_CAP_DRV gCapabilities[NUM_CAP_ENTRIES] =
  303. {
  304. {(GUID *)&WIA_EVENT_DEVICE_CONNECTED, NA, L"Device connected", L"Device connected", WIA_ICON_DEVICE_CONNECTED},
  305. {(GUID *)&WIA_EVENT_DEVICE_DISCONNECTED, N, L"Device disconnected", L"Device disconnected", WIA_ICON_DEVICE_DISCONNECTED},
  306. {(GUID *)&WIA_EVENT_NAME_CHANGE, NA, L"Root path changed", L"Root path changed", WIA_ICON_ITEM_CREATED},
  307. {(GUID *)&WIA_CMD_SYNCHRONIZE, 0, L"Synchronize", L"Synchronize", WIA_ICON_SYNCHRONIZE},
  308. {(GUID *)&WIA_CMD_TAKE_PICTURE, 0, L"Take a new picture", L"Take a new picture", WIA_ICON_TAKE_PICTURE}
  309. };
  310. #else
  311. extern PROPID gItemPropIDs[NUM_CAM_ITEM_PROPS];
  312. extern LPOLESTR gItemPropNames[NUM_CAM_ITEM_PROPS];
  313. extern PROPID gItemCameraPropIDs[WIA_NUM_IPC];
  314. extern LPOLESTR gItemCameraPropNames[WIA_NUM_IPC];
  315. extern PROPID gDevicePropIDs[NUM_CAM_DEV_PROPS];
  316. extern LPOLESTR gDevicePropNames[NUM_CAM_DEV_PROPS];
  317. extern PROPSPEC gDevicePropSpecDefaults[NUM_CAM_DEV_PROPS];
  318. extern WIA_PROPERTY_INFO gDevPropInfoDefaults[NUM_CAM_DEV_PROPS];
  319. extern PROPSPEC gPropSpecDefaults[NUM_CAM_ITEM_PROPS];
  320. extern LONG gPropVarDefaults[];
  321. extern WIA_PROPERTY_INFO gItemPropInfos[NUM_CAM_ITEM_PROPS];
  322. extern WIA_DEV_CAP_DRV gCapabilities[];
  323. extern GUID gGuidFormats[NUM_FORMAT];
  324. extern PROPID gAudioPropIDs[NUM_AUDIO_PROPS];
  325. extern LPOLESTR gAudioPropNames[NUM_AUDIO_PROPS];
  326. extern PROPSPEC gAudioPropDefaults [];
  327. extern LONG gAudioDefaults [];
  328. #endif