ReactOS 0.4.16-dev-125-g798ea90
wdmaud.h
Go to the documentation of this file.
1#ifndef __WDMAUD_H__
2#define __WDMAUD_H__
3
4#include <stdarg.h>
5
6#define WIN32_NO_STATUS
7#define _INC_WINDOWS
8#define COM_NO_WINDOWS_H
9
10#include <windef.h>
11#include <winbase.h>
12#include <winreg.h>
13
14#include <winuser.h>
15#include <mmddk.h>
16#include <mmebuddy.h>
17#include <ks.h>
18#include <ksmedia.h>
19#include <interface.h>
20#include <devioctl.h>
21#include <setupapi.h>
22
23BOOL
25
28
31
34
39
42 IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
43 IN PVOID OffsetPtr,
45 IN PSOUND_OVERLAPPED Overlap,
47
50 IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
51 IN PVOID OffsetPtr,
53 IN PSOUND_OVERLAPPED Overlap,
55
58 IN PSOUND_DEVICE SoundDevice,
59 IN DWORD DeviceId,
61 IN DWORD CapabilitiesSize);
62
65 IN struct _SOUND_DEVICE* SoundDevice,
67
70 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
72
76 IN DWORD MixerId,
77 IN LPMIXERLINEW MixLine,
78 IN ULONG Flags);
79
83 IN DWORD MixerId,
84 IN LPMIXERLINECONTROLSW MixControls,
85 IN ULONG Flags);
86
90 IN DWORD MixerId,
91 IN LPMIXERCONTROLDETAILS MixDetails,
92 IN ULONG Flags);
93
97 IN DWORD MixerId,
98 IN LPMIXERCONTROLDETAILS MixDetails,
99 IN ULONG Flags);
100
104 IN DWORD DeviceId,
105 IN PWAVEFORMATEX WaveFormat,
106 IN DWORD WaveFormatSize);
107
111 IN DWORD DeviceId,
113 IN DWORD InterfaceLength,
114 OUT DWORD * InterfaceSize);
115
119 IN DWORD DeviceId,
120 IN PWAVEFORMATEX WaveFormat,
121 IN DWORD WaveFormatSize);
122
125 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
126 IN DWORD DeviceId,
127 IN UINT uMsg,
129 IN DWORD Flags);
130
133 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
134 IN BOOL bStart);
135
138 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
140 IN BOOLEAN bStartReset);
141
144 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
145 IN MMTIME* Time);
146
149 _In_ PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
150 _In_ DWORD DeviceId,
151 _Out_ PDWORD pdwVolume);
152
155 _In_ PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
156 _In_ DWORD DeviceId,
157 _In_ DWORD dwVolume);
158
161 IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
162 IN PVOID OffsetPtr,
164 IN PSOUND_OVERLAPPED Overlap,
166
169
170/* legacy.c */
171
174
177 IN PSOUND_DEVICE SoundDevice,
178 IN DWORD DeviceId,
180 IN DWORD CapabilitiesSize);
181
184 IN PSOUND_DEVICE SoundDevice,
186);
187
190 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
191 IN PVOID Handle);
192
196 IN DWORD DeviceId,
198 IN DWORD InterfaceLength,
199 OUT DWORD * InterfaceSize);
200
204 IN DWORD DeviceId,
205 IN PWAVEFORMATEX WaveFormat,
206 IN DWORD WaveFormatSize);
207
210 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
211 IN DWORD DeviceId,
212 IN UINT uMsg,
214 IN DWORD Flags);
215
219 IN DWORD DeviceId,
220 IN PWAVEFORMATEX WaveFormat,
221 IN DWORD WaveFormatSize);
222
225 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
226 IN BOOL bStart);
227
230 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
232 IN BOOLEAN bStartReset);
233
236 IN struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
237 IN MMTIME* Time);
238
241 _In_ PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
242 _In_ DWORD DeviceId,
243 _Out_ PDWORD pdwVolume);
244
247 _In_ PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
248 _In_ DWORD DeviceId,
249 _In_ DWORD dwVolume);
250
253 IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
254 IN PVOID OffsetPtr,
256 IN PSOUND_OVERLAPPED Overlap,
258
263
264DWORD
265WINAPI
268
269#endif /* __WDMAUD_H__ */
unsigned char BOOLEAN
MMRESULT WdmAudCleanupByLegacy()
Definition: legacy.c:86
MMRESULT WdmAudCleanupByMMixer()
Definition: mmixer.c:382
BOOL WdmAudInitUserModeMixer()
Definition: mmixer.c:336
MMRESULT WdmAudSetMixerDeviceFormatByLegacy(IN PSOUND_DEVICE_INSTANCE Instance, IN DWORD DeviceId, IN PWAVEFORMATEX WaveFormat, IN DWORD WaveFormatSize)
Definition: legacy.c:413
MMRESULT WdmAudQueryMixerInfoByLegacy(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN DWORD DeviceId, IN UINT uMsg, IN LPVOID Parameter, IN DWORD Flags)
Definition: legacy.c:902
MMRESULT WdmAudGetLineControls(IN HANDLE hMixer, IN DWORD MixerId, IN LPMIXERLINECONTROLSW MixControls, IN ULONG Flags)
Definition: mmixer.c:413
MMRESULT WdmAudGetControlDetails(IN HANDLE hMixer, IN DWORD MixerId, IN LPMIXERCONTROLDETAILS MixDetails, IN ULONG Flags)
Definition: mmixer.c:440
MMRESULT WdmAudGetVolumeByMMixer(_In_ PSOUND_DEVICE_INSTANCE SoundDeviceInstance, _In_ DWORD DeviceId, _Out_ PDWORD pdwVolume)
Definition: mmixer.c:809
MMRESULT WdmAudSetMixerDeviceFormatByMMixer(IN PSOUND_DEVICE_INSTANCE Instance, IN DWORD DeviceId, IN PWAVEFORMATEX WaveFormat, IN DWORD WaveFormatSize)
Definition: mmixer.c:690
MMRESULT WdmAudOpenSoundDeviceByLegacy(IN PSOUND_DEVICE SoundDevice, OUT PVOID *Handle)
Definition: legacy.c:255
MMRESULT WdmAudGetWavePositionByLegacy(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN MMTIME *Time)
Definition: legacy.c:807
MMRESULT WdmAudGetDeviceInterfaceStringByMMixer(IN MMDEVICE_TYPE DeviceType, IN DWORD DeviceId, IN LPWSTR Interface, IN DWORD InterfaceLength, OUT DWORD *InterfaceSize)
Definition: mmixer.c:659
MMRESULT WdmAudGetCapabilitiesByMMixer(IN PSOUND_DEVICE SoundDevice, IN DWORD DeviceId, OUT PVOID Capabilities, IN DWORD CapabilitiesSize)
Definition: mmixer.c:514
MMRESULT WdmAudSetVolumeByLegacy(_In_ PSOUND_DEVICE_INSTANCE SoundDeviceInstance, _In_ DWORD DeviceId, _In_ DWORD dwVolume)
Definition: legacy.c:864
MMRESULT WdmAudSetWaveStateByLegacy(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN BOOL bStart)
Definition: legacy.c:699
MMRESULT WdmAudGetDeviceInterfaceStringByLegacy(IN MMDEVICE_TYPE DeviceType, IN DWORD DeviceId, IN LPWSTR Interface, IN DWORD InterfaceLength, OUT DWORD *InterfaceSize)
Definition: legacy.c:742
MMRESULT WdmAudGetLineInfo(IN HANDLE hMixer, IN DWORD MixerId, IN LPMIXERLINEW MixLine, IN ULONG Flags)
Definition: mmixer.c:400
MMRESULT WdmAudCloseSoundDeviceByMMixer(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN PVOID Handle)
Definition: mmixer.c:557
MMRESULT WdmAudSetVolumeByMMixer(_In_ PSOUND_DEVICE_INSTANCE SoundDeviceInstance, _In_ DWORD DeviceId, _In_ DWORD dwVolume)
Definition: mmixer.c:866
MMRESULT WdmAudSetControlDetails(IN HANDLE hMixer, IN DWORD MixerId, IN LPMIXERCONTROLDETAILS MixDetails, IN ULONG Flags)
Definition: mmixer.c:426
MMRESULT WdmAudGetWavePositionByMMixer(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN MMTIME *Time)
Definition: mmixer.c:775
MMRESULT WdmAudCloseSoundDeviceByLegacy(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN PVOID Handle)
Definition: legacy.c:320
MMRESULT WdmAudCommitWaveBufferByLegacy(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, IN PVOID OffsetPtr, IN DWORD Length, IN PSOUND_OVERLAPPED Overlap, IN LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine)
Definition: legacy.c:615
MMRESULT WdmAudCommitWaveBufferByMMixer(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, IN PVOID OffsetPtr, IN DWORD Length, IN PSOUND_OVERLAPPED Overlap, IN LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine)
Definition: mmixer.c:945
MMRESULT WdmAudOpenSoundDeviceByMMixer(IN struct _SOUND_DEVICE *SoundDevice, OUT PVOID *Handle)
Definition: mmixer.c:546
MMRESULT WdmAudGetCapabilitiesByLegacy(IN PSOUND_DEVICE SoundDevice, IN DWORD DeviceId, OUT PVOID Capabilities, IN DWORD CapabilitiesSize)
Definition: legacy.c:133
MMRESULT WdmAudResetStreamByLegacy(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN MMDEVICE_TYPE DeviceType, IN BOOLEAN bStartReset)
Definition: legacy.c:874
MMRESULT WriteFileEx_Committer2(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, IN PVOID OffsetPtr, IN DWORD Length, IN PSOUND_OVERLAPPED Overlap, IN LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine)
ULONG WdmAudGetMixerCount(VOID)
MMRESULT WdmAudGetNumWdmDevsByMMixer(IN MMDEVICE_TYPE DeviceType, OUT DWORD *DeviceCount)
Definition: mmixer.c:596
MMRESULT WriteFileEx_Remixer(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, IN PVOID OffsetPtr, IN DWORD Length, IN PSOUND_OVERLAPPED Overlap, IN LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine)
Definition: mixer.c:423
MMRESULT WdmAudSetWaveDeviceFormatByLegacy(IN PSOUND_DEVICE_INSTANCE Instance, IN DWORD DeviceId, IN PWAVEFORMATEX WaveFormat, IN DWORD WaveFormatSize)
Definition: legacy.c:470
ULONG WdmAudGetWaveOutCount(VOID)
ULONG WdmAudGetWaveInCount(VOID)
MMRESULT WdmAudGetVolumeByLegacy(_In_ PSOUND_DEVICE_INSTANCE SoundDeviceInstance, _In_ DWORD DeviceId, _Out_ PDWORD pdwVolume)
Definition: legacy.c:854
MMRESULT WdmAudSetWaveStateByMMixer(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN BOOL bStart)
Definition: mmixer.c:703
DWORD WINAPI MixerEventThreadRoutine(LPVOID Parameter)
Definition: legacy.c:29
MMRESULT WdmAudResetStreamByMMixer(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN MMDEVICE_TYPE DeviceType, IN BOOLEAN bStartReset)
Definition: mmixer.c:753
MMRESULT WdmAudGetNumWdmDevsByLegacy(IN MMDEVICE_TYPE DeviceType, OUT DWORD *DeviceCount)
Definition: legacy.c:98
MMRESULT WdmAudSetWaveDeviceFormatByMMixer(IN PSOUND_DEVICE_INSTANCE Instance, IN DWORD DeviceId, IN PWAVEFORMATEX WaveFormat, IN DWORD WaveFormatSize)
Definition: mmixer.c:476
MMRESULT WdmAudQueryMixerInfoByMMixer(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN DWORD DeviceId, IN UINT uMsg, IN LPVOID Parameter, IN DWORD Flags)
Definition: mmixer.c:618
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
ULONG Handle
Definition: gdb_input.c:15
_Must_inspect_result_ typedef _Out_ PHIDP_CAPS Capabilities
Definition: hidclass.h:103
DeviceType
Definition: mmdrv.h:42
UCHAR MMDEVICE_TYPE
Definition: mmebuddy.h:88
UINT MMRESULT
Definition: mmsystem.h:962
HMIXER hMixer
Definition: test.c:10
static PLARGE_INTEGER Time
Definition: time.c:105
ULONG DeviceCount
Definition: mpu401.c:26
#define _Out_
Definition: ms_sal.h:345
#define _In_
Definition: ms_sal.h:308
unsigned int UINT
Definition: ndis.h:50
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
DWORD * PDWORD
Definition: pedump.c:68
#define IN
Definition: typedefs.h:39
uint32_t ULONG
Definition: typedefs.h:59
#define OUT
Definition: typedefs.h:40
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE Interface
Definition: wdffdo.h:465
_In_ WDFREQUEST _In_opt_ PFN_WDF_REQUEST_COMPLETION_ROUTINE CompletionRoutine
Definition: wdfrequest.h:895
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_opt_ WDFWMIINSTANCE * Instance
Definition: wdfwmi.h:481
void(CALLBACK * LPOVERLAPPED_COMPLETION_ROUTINE)(DWORD, DWORD, LPOVERLAPPED)
Definition: winbase.h:1451
#define WINAPI
Definition: msvc.h:6
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
_Inout_opt_ PVOID Parameter
Definition: rtltypes.h:336
WCHAR * LPWSTR
Definition: xmlstorage.h:184