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.

116 lines
4.1 KiB

  1. /////////////////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 1998 Active Voice Corporation. All Rights Reserved.
  4. //
  5. // Active Agent(r) and Unified Communications(tm) are trademarks of Active Voice Corporation.
  6. //
  7. // Other brand and product names used herein are trademarks of their respective owners.
  8. //
  9. // The entire program and user interface including the structure, sequence, selection,
  10. // and arrangement of the dialog, the exclusively "yes" and "no" choices represented
  11. // by "1" and "2," and each dialog message are protected by copyrights registered in
  12. // the United States and by international treaties.
  13. //
  14. // Protected by one or more of the following United States patents: 5,070,526, 5,488,650,
  15. // 5,434,906, 5,581,604, 5,533,102, 5,568,540, 5,625,676, 5,651,054.
  16. //
  17. // Active Voice Corporation
  18. // Seattle, Washington
  19. // USA
  20. //
  21. /////////////////////////////////////////////////////////////////////////////////////////
  22. ////
  23. // wavmixer.h - wav mixer functions
  24. ////
  25. #ifndef __WAVMIXER_H__
  26. #define __WAVMIXER_H__
  27. #include "winlocal.h"
  28. #define WAVMIXER_VERSION 0x00000100
  29. // handle to wavmixer engine
  30. //
  31. DECLARE_HANDLE32(HWAVMIXER);
  32. #define WAVMIXER_HWAVEIN 0x00000001
  33. #define WAVMIXER_HWAVEOUT 0x00000002
  34. #define WAVMIXER_WAVEIN 0x00000004
  35. #define WAVMIXER_WAVEOUT 0x00000008
  36. #ifdef __cplusplus
  37. extern "C" {
  38. #endif
  39. // WavMixerInit - initialize wav mixer device
  40. // <dwVersion> (i) must be WAVMIXER_VERSION
  41. // <hInst> (i) instance handle of calling module
  42. // <lParam> (i) device id or handle, as specified by <dwFlags>
  43. // <dwReserved1> (i) reserved; must be 0;
  44. // <dwReserved2> (i) reserved; must be 0;
  45. // <dwFlags> (i) control flags
  46. // WAVMIXER_HWAVEIN <lParam> contains an HWAVEIN
  47. // WAVMIXER_HWAVEOUT <lParam> contains an HWAVEOUT
  48. // WAVMIXER_WAVEIN <lParam> contains a wav input device id
  49. // WAVMIXER_WAVEOUT <lParam> contains a wav output device id
  50. // return handle (NULL if error)
  51. //
  52. HWAVMIXER WINAPI WavMixerInit(DWORD dwVersion, HINSTANCE hInst,
  53. LPARAM lParam, DWORD dwReserved1, DWORD dwReserved2, DWORD dwFlags);
  54. // WavMixerTerm - shut down wave mixer device
  55. // <hWavMixer> (i) handle returned from WavMixerInit
  56. // return 0 if success
  57. //
  58. int WINAPI WavMixerTerm(HWAVMIXER hWavMixer);
  59. // WavMixerSupportsVolume - return TRUE if device supports volume control
  60. // <hWavMixer> (i) handle returned from WavMixerInit
  61. // <dwFlags> (i) control flags
  62. // 0 reserved; must be zero
  63. // return TRUE if device supports volume control
  64. //
  65. BOOL WINAPI WavMixerSupportsVolume(HWAVMIXER hWavMixer, DWORD dwFlags);
  66. // WavMixerGetVolume - get current volume level
  67. // <hWavMixer> (i) handle returned from WavMixerInit
  68. // <dwFlags> (i) control flags
  69. // 0 reserved; must be zero
  70. // return volume level (0 minimum through 100 maximum, -1 if error)
  71. //
  72. int WINAPI WavMixerGetVolume(HWAVMIXER hWavMixer, DWORD dwFlags);
  73. // WavMixerSetVolume - set current volume level
  74. // <hWavMixer> (i) handle returned from WavMixerInit
  75. // <nLevel> (i) volume level
  76. // 0 minimum volume
  77. // 100 maximum volume
  78. // <dwFlags> (i) control flags
  79. // 0 reserved; must be zero
  80. // return new volume level (0 minimum through 100 maximum, -1 if error)
  81. //
  82. int WINAPI WavMixerSetVolume(HWAVMIXER hWavMixer, int nLevel, DWORD dwFlags);
  83. // WavMixerSupportsLevel - return TRUE if device supports peak meter level
  84. // <hWavMixer> (i) handle returned from WavMixerInit
  85. // <dwFlags> (i) control flags
  86. // 0 reserved; must be zero
  87. // return TRUE if device supports peak meter level
  88. //
  89. BOOL WINAPI WavMixerSupportsLevel(HWAVMIXER hWavMixer, DWORD dwFlags);
  90. // WavMixerGetLevel - get current peak meter level
  91. // <hWavMixer> (i) handle returned from WavMixerInit
  92. // <dwFlags> (i) control flags
  93. // 0 reserved; must be zero
  94. // return peak meter level (0 minimum through 100 maximum, -1 if error)
  95. //
  96. int WINAPI WavMixerGetLevel(HWAVMIXER hWavMixer, DWORD dwFlags);
  97. #ifdef __cplusplus
  98. }
  99. #endif
  100. #endif // __WAVMIXER_H__