Source code of Windows XP (NT5)
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.

86 lines
2.5 KiB

  1. /*++ BUILD Version: 0001 // Increment this if a change has global effect
  2. Copyright (c) Microsoft Corporation. All rights reserved.
  3. Module Name:
  4. storprop.h
  5. Abstract:
  6. this module contains structures and definitions associated
  7. with exports from storprop.dll
  8. Revision History:
  9. --*/
  10. #ifndef __STORPROP_H__
  11. #define __STORPROP_H__
  12. #include <setupapi.h> // for HDEVINFO and PSP_DEVINFO_DATA
  13. #define REDBOOK_DIGITAL_AUDIO_EXTRACTION_INFO_VERSION 1
  14. //
  15. // REDBOOK_DIGITAL_AUDIO_EXTRACTION_INFO is a structure which
  16. // defines what the OS believes the abilities of a CD-Rom
  17. // capable drive are with respect to Digital Audio Extraction (DAE)
  18. //
  19. // if Accurate is non-zero, then the drive is able to recover
  20. // from loss-of-streaming conditions without losing any
  21. // data. this means the drive never requires what is commonly
  22. // referred to as 'stitching' to get a correct audio stream
  23. // if Supported is non-zero, then the drive supports audio
  24. // extraction. this field does not suggest any quality.
  25. // AccurateMask0 reports what sized reads (in number of sectors)
  26. // the OS believes to work. this field is a bitmask, with the
  27. // lowest bit indicating single-sector reads, and the high bit
  28. // indictating 32-sector reads. if reading a given number of
  29. // sectors per read gives accurate results, the bit will be a
  30. // '1'. if Accurate is non-zero, all the bits should be '1'.
  31. //
  32. typedef struct _REDBOOK_DIGITAL_AUDIO_EXTRACTION_INFO {
  33. ULONG Version;
  34. ULONG Accurate;
  35. ULONG Supported;
  36. ULONG AccurateMask0;
  37. // more data may later be added to the end, but
  38. // backwards compatibility will be retained.
  39. } REDBOOK_DIGITAL_AUDIO_EXTRACTION_INFO,
  40. *PREDBOOK_DIGITAL_AUDIO_EXTRACTION_INFO;
  41. DWORD
  42. CdromCddaInfo(
  43. IN HDEVINFO HDevInfo,
  44. IN PSP_DEVINFO_DATA DevInfoData,
  45. OUT PREDBOOK_DIGITAL_AUDIO_EXTRACTION_INFO CddaInfo,
  46. IN OUT PULONG BufferSize
  47. );
  48. BOOL
  49. CdromKnownGoodDigitalPlayback(IN HDEVINFO HDevInfo,
  50. IN PSP_DEVINFO_DATA DevInfoData);
  51. LONG
  52. CdromEnableDigitalPlayback(IN HDEVINFO DevInfo,
  53. IN PSP_DEVINFO_DATA DevInfoData,
  54. IN BOOLEAN ForceUnknown);
  55. LONG
  56. CdromDisableDigitalPlayback( IN HDEVINFO DevInfo,
  57. IN PSP_DEVINFO_DATA DevInfoData);
  58. LONG
  59. CdromIsDigitalPlaybackEnabled(
  60. IN HDEVINFO DevInfo,
  61. IN PSP_DEVINFO_DATA DevInfoData,
  62. OUT PBOOLEAN Enabled
  63. );
  64. #endif // __STORPROP_H__