ReactOS 0.4.16-dev-122-g325d74c
dsdriver.h
Go to the documentation of this file.
1/*
2 * DirectSound driver
3 * (DirectX 5 version)
4 *
5 * Copyright (C) 2000 Ove Kaaven
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 */
21
22#ifndef __WINE_DSDRIVER_H
23#define __WINE_DSDRIVER_H
24
25#ifdef __cplusplus
26extern "C" {
27#endif
28
29/*****************************************************************************
30 * Predeclare the interfaces
31 */
32DEFINE_GUID(IID_IDsDriver, 0x8C4233C0l, 0xB4CC, 0x11CE, 0x92, 0x94, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00);
33typedef struct IDsDriver *PIDSDRIVER;
34
35DEFINE_GUID(IID_IDsDriverBuffer, 0x8C4233C1l, 0xB4CC, 0x11CE, 0x92, 0x94, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00);
36typedef struct IDsDriverBuffer *PIDSDRIVERBUFFER;
37
38DEFINE_GUID(IID_IDsDriverPropertySet, 0x0F6F2E8E0, 0xD842, 0x11D0, 0x8F, 0x75, 0x00, 0xC0, 0x4F, 0xC2, 0x8A, 0xCA);
39typedef struct IDsDriverPropertySet *PIDSDRIVERPROPERTYSET;
40
41DEFINE_GUID(IID_IDsDriverNotify, 0x00363EF44, 0x3B57, 0x11D3, 0xAC, 0x79, 0x00, 0x10, 0x5A, 0x01, 0x7f, 0xe1);
42typedef struct IDsDriverNotify *PIDSDRIVERNOTIFY;
43
44DEFINE_GUID(IID_IDsCaptureDriver, 0x03DD10C47, 0x74FB, 0x11D3, 0x90, 0x49, 0xCB, 0xB4, 0xB3, 0x2E, 0xAA, 0x08);
45typedef struct IDsCaptureDriver *PIDSCDRIVER;
46
47DEFINE_GUID(IID_IDsCaptureDriverBuffer, 0x03DD10C48, 0x74FB, 0x11D3, 0x90, 0x49, 0xCB, 0xB4, 0xB3, 0x2E, 0xAA, 0x08);
48typedef struct IDsCaptureDriverBuffer *PIDSCDRIVERBUFFER;
49
50#define DSDDESC_DOMMSYSTEMOPEN 0x00000001
51#define DSDDESC_DOMMSYSTEMSETFORMAT 0x00000002
52#define DSDDESC_USESYSTEMMEMORY 0x00000004
53#define DSDDESC_DONTNEEDPRIMARYLOCK 0x00000008
54#define DSDDESC_DONTNEEDSECONDARYLOCK 0x00000010
55#define DSDDESC_DONTNEEDWRITELEAD 0x00000020
56
57#define DSDHEAP_NOHEAP 0
58#define DSDHEAP_CREATEHEAP 1
59#define DSDHEAP_USEDIRECTDRAWHEAP 2
60#define DSDHEAP_PRIVATEHEAP 3
61
62typedef struct _DSDRIVERDESC
63{
79
80typedef struct _DSDRIVERCAPS
81{
102
103typedef struct _DSVOLUMEPAN
104{
113
114typedef union _DSPROPERTY
115{
116 struct {
124
125typedef struct _DSCDRIVERCAPS
126{
132
133/*****************************************************************************
134 * IDsDriver interface
135 */
136#define INTERFACE IDsDriver
138{
139 /*** IUnknown methods ***/
143 /*** IDsDriver methods ***/
144 STDMETHOD(GetDriverDesc)(THIS_ PDSDRIVERDESC pDsDriverDesc) PURE;
147 STDMETHOD(GetCaps)(THIS_ PDSDRIVERCAPS pDsDrvCaps) PURE;
148 STDMETHOD(CreateSoundBuffer)(THIS_ LPWAVEFORMATEX pwfx,DWORD dwFlags,DWORD dwCardAddress,LPDWORD pdwcbBufferSize,LPBYTE *ppbBuffer,LPVOID *ppvObj) PURE;
149 STDMETHOD(DuplicateSoundBuffer)(THIS_ PIDSDRIVERBUFFER pIDsDriverBuffer,LPVOID *ppvObj) PURE;
150};
151#undef INTERFACE
152
153#if !defined (__cplusplus) || defined(CINTERFACE)
154 /*** IUnknown methods ***/
155#define IDsDriver_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
156#define IDsDriver_AddRef(p) (p)->lpVtbl->AddRef(p)
157#define IDsDriver_Release(p) (p)->lpVtbl->Release(p)
158 /*** IDsDriver methods ***/
159#define IDsDriver_GetDriverDesc(p,a) (p)->lpVtbl->GetDriverDesc(p,a)
160#define IDsDriver_Open(p) (p)->lpVtbl->Open(p)
161#define IDsDriver_Close(p) (p)->lpVtbl->Close(p)
162#define IDsDriver_GetCaps(p,a) (p)->lpVtbl->GetCaps(p,a)
163#define IDsDriver_CreateSoundBuffer(p,a,b,c,d,e,f) (p)->lpVtbl->CreateSoundBuffer(p,a,b,c,d,e,f)
164#define IDsDriver_DuplicateSoundBuffer(p,a,b) (p)->lpVtbl->DuplicateSoundBuffer(p,a,b)
165#endif
166
167/*****************************************************************************
168 * IDsDriverBuffer interface
169 */
170#define INTERFACE IDsDriverBuffer
172{
173 /*** IUnknown methods ***/
177 /*** IDsDriverBuffer methods ***/
178 STDMETHOD(Lock)(THIS_ LPVOID *ppvAudio1,LPDWORD pdwLen1,LPVOID *pdwAudio2,LPDWORD pdwLen2,DWORD dwWritePosition,DWORD dwWriteLen,DWORD dwFlags) PURE;
179 STDMETHOD(Unlock)(THIS_ LPVOID pvAudio1,DWORD dwLen1,LPVOID pvAudio2,DWORD dwLen2) PURE;
180 STDMETHOD(SetFormat)(THIS_ LPWAVEFORMATEX pwfxToSet) PURE;
181 STDMETHOD(SetFrequency)(THIS_ DWORD dwFrequency) PURE;
182 STDMETHOD(SetVolumePan)(THIS_ PDSVOLUMEPAN pDsVolumePan) PURE;
183 STDMETHOD(SetPosition)(THIS_ DWORD dwNewPosition) PURE;
184 STDMETHOD(GetPosition)(THIS_ LPDWORD lpdwCurrentPlayCursor,LPDWORD lpdwCurrentWriteCursor) PURE;
185 STDMETHOD(Play)(THIS_ DWORD dwReserved1,DWORD dwReserved2,DWORD dwFlags) PURE;
187};
188#undef INTERFACE
189
190#if !defined (__cplusplus) || defined(CINTERFACE)
191 /*** IUnknown methods ***/
192#define IDsDriverBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
193#define IDsDriverBuffer_AddRef(p) (p)->lpVtbl->AddRef(p)
194#define IDsDriverBuffer_Release(p) (p)->lpVtbl->Release(p)
195 /*** IDsDriverBuffer methods ***/
196#define IDsDriverBuffer_Lock(p,a,b,c,d,e,f,g) (p)->lpVtbl->Lock(p,a,b,c,d,e,f,g)
197#define IDsDriverBuffer_Unlock(p,a,b,c,d) (p)->lpVtbl->Unlock(p,a,b,c,d)
198#define IDsDriverBuffer_SetFormat(p,a) (p)->lpVtbl->SetFormat(p,a)
199#define IDsDriverBuffer_SetFrequency(p,a) (p)->lpVtbl->SetFrequency(p,a)
200#define IDsDriverBuffer_SetVolumePan(p,a) (p)->lpVtbl->SetVolumePan(p,a)
201#define IDsDriverBuffer_SetPosition(p,a) (p)->lpVtbl->SetPosition(p,a)
202#define IDsDriverBuffer_GetPosition(p,a,b) (p)->lpVtbl->GetPosition(p,a,b)
203#define IDsDriverBuffer_Play(p,a,b,c) (p)->lpVtbl->Play(p,a,b,c)
204#define IDsDriverBuffer_Stop(p) (p)->lpVtbl->Stop(p)
205#endif
206
207/*****************************************************************************
208 * IDsDriverPropertySet interface
209 */
210#define INTERFACE IDsDriverPropertySet
211DECLARE_INTERFACE_(IDsDriverPropertySet,IUnknown)
212{
213 /*** IUnknown methods ***/
217 /*** IDsDriverPropertySet methods ***/
218 STDMETHOD(Get)(THIS_ PDSPROPERTY pDsProperty,LPVOID pPropertyParams,ULONG cbPropertyParams,LPVOID pPropertyData,ULONG cbPropertyData,PULONG pcbReturnedData) PURE;
219 STDMETHOD(Set)(THIS_ PDSPROPERTY pDsProperty,LPVOID pPropertyParams,ULONG cbPropertyParams,LPVOID pPropertyData,ULONG cbPropertyData) PURE;
220 STDMETHOD(QuerySupport)(THIS_ REFGUID PropertySetId,ULONG PropertyId,PULONG pSupport) PURE;
221};
222#undef INTERFACE
223
224#if !defined (__cplusplus) || defined(CINTERFACE)
225 /*** IUnknown methods ***/
226#define IDsDriverPropertySet_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
227#define IDsDriverPropertySet_AddRef(p) (p)->lpVtbl->AddRef(p)
228#define IDsDriverPropertySet_Release(p) (p)->lpVtbl->Release(p)
229 /*** IDsDriverPropertySet methods ***/
230#define IDsDriverPropertySet_Get(p,a,b,c,d,e,f) (p)->lpVtbl->Get(p,a,b,c,d,e,f)
231#define IDsDriverPropertySet_Set(p,a,b,c,d,e) (p)->lpVtbl->Set(p,a,b,c,d,e)
232#define IDsDriverPropertySet_QuerySupport(p,a,b,c) (p)->lpVtbl->QuerySupport(p,a,b,c)
233#endif
234
235/* Defined property sets */
236DEFINE_GUID(DSPROPSETID_DirectSound3DListener, 0x6D047B40, 0x7AF9, 0x11D0, 0x92, 0x94, 0x44, 0x45, 0x53, 0x54, 0x0, 0x0);
237typedef enum
238{
249
250DEFINE_GUID(DSPROPSETID_DirectSound3DBuffer, 0x6D047B41, 0x7AF9, 0x11D0, 0x92, 0x94, 0x44, 0x45, 0x53, 0x54, 0x0, 0x0);
251typedef enum
252{
263
264DEFINE_GUID(DSPROPSETID_DirectSoundSpeakerConfig, 0x6D047B42, 0x7AF9, 0x11D0, 0x92, 0x94, 0x44, 0x45, 0x53, 0x54, 0x0, 0x0);
265typedef enum
266{
269
270/*****************************************************************************
271 * IDsDriverNotify interface
272 */
273#define INTERFACE IDsDriverNotify
275{
276 /*** IUnknown methods ***/
280 /*** IDsDriverNotify methods ***/
281 STDMETHOD(SetNotificationPositions)(THIS_ DWORD dwPositionNotifies,LPCDSBPOSITIONNOTIFY pcPositionNotifies) PURE;
282};
283#undef INTERFACE
284
285#if !defined (__cplusplus) || defined(CINTERFACE)
286 /*** IUnknown methods ***/
287#define IDsDriverNotify_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
288#define IDsDriverNotify_AddRef(p) (p)->lpVtbl->AddRef(p)
289#define IDsDriverNotify_Release(p) (p)->lpVtbl->Release(p)
290 /*** IDsDriverNotify methods ***/
291#define IDsDriverNotify_SetNotificationPositions(p,a,b) (p)->lpVtbl->SetNotificationPositions(p,a,b)
292#endif
293
294/*****************************************************************************
295 * IDsCaptureDriver interface
296 */
297#define INTERFACE IDsCaptureDriver
299{
300 /*** IUnknown methods ***/
304 /*** IDsCaptureDriver methods ***/
305 STDMETHOD(GetDriverDesc)(THIS_ PDSDRIVERDESC pDsDriverDesc) PURE;
308 STDMETHOD(GetCaps)(THIS_ PDSCDRIVERCAPS pDsDrvCaps) PURE;
309 STDMETHOD(CreateCaptureBuffer)(THIS_ LPWAVEFORMATEX pwfx,DWORD dwFlags,DWORD dwCardAddress,LPDWORD pdwcbBufferSize,LPBYTE *ppbBuffer,LPVOID *ppvObj) PURE;
310};
311#undef INTERFACE
312
313#if !defined (__cplusplus) || defined(CINTERFACE)
314 /*** IUnknown methods ***/
315#define IDsCaptureDriver_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
316#define IDsCaptureDriver_AddRef(p) (p)->lpVtbl->AddRef(p)
317#define IDsCaptureDriver_Release(p) (p)->lpVtbl->Release(p)
318 /*** IDsCaptureDriver methods ***/
319#define IDsCaptureDriver_GetDriverDesc(p,a) (p)->lpVtbl->GetDriverDesc(p,a)
320#define IDsCaptureDriver_Open(p) (p)->lpVtbl->Open(p)
321#define IDsCaptureDriver_Close(p) (p)->lpVtbl->Close(p)
322#define IDsCaptureDriver_GetCaps(p,a) (p)->lpVtbl->GetCaps(p,a)
323#define IDsCaptureDriver_CreateCaptureBuffer(p,a,b,c,d,e,f) (p)->lpVtbl->CreateCaptureBuffer(p,a,b,c,d,e,f)
324#endif
325
326/*****************************************************************************
327 * IDsCaptureDriverBuffer interface
328 */
329#define INTERFACE IDsCaptureDriverBuffer
330DECLARE_INTERFACE_(IDsCaptureDriverBuffer,IUnknown)
331{
332 /*** IUnknown methods ***/
336 /*** IDsCaptureDriverBuffer methods ***/
337 STDMETHOD(Lock)(THIS_ LPVOID *ppvAudio1,LPDWORD pdwLen1,LPVOID *ppvAudio2,LPDWORD pdwLen2,DWORD dwWritePosition,DWORD dwWriteLen,DWORD dwFlags) PURE;
338 STDMETHOD(Unlock)(THIS_ LPVOID pvAudio1,DWORD dwLen1,LPVOID pvAudio2,DWORD dwLen2) PURE;
339 STDMETHOD(SetFormat)(THIS_ LPWAVEFORMATEX pwfxToSet) PURE;
340 STDMETHOD(GetPosition)(THIS_ LPDWORD lpdwCurrentPlayCursor,LPDWORD lpdwCurrentWriteCursor) PURE;
341 STDMETHOD(GetStatus)(THIS_ LPDWORD lpdwStatus) PURE;
344};
345#undef INTERFACE
346
347#if !defined (__cplusplus) || defined(CINTERFACE)
348 /*** IUnknown methods ***/
349#define IDsCaptureDriverBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
350#define IDsCaptureDriverBuffer_AddRef(p) (p)->lpVtbl->AddRef(p)
351#define IDsCaptureDriverBuffer_Release(p) (p)->lpVtbl->Release(p)
352 /*** IDsCaptureDriverBuffer methods ***/
353#define IDsCaptureDriverBuffer_Lock(p,a,b,c,d,e,f,g) (p)->lpVtbl->Lock(p,a,b,c,d,e,f,g)
354#define IDsCaptureDriverBuffer_Unlock(p,a,b,c,d) (p)->lpVtbl->Unlock(p,a,b,c,d)
355#define IDsCaptureDriverBuffer_SetFormat(p,a) (p)->lpVtbl->SetFormat(p,a)
356#define IDsCaptureDriverBuffer_GetPosition(p,a,b) (p)->lpVtbl->GetPosition(p,a,b)
357#define IDsCaptureDriverBuffer_GetStatus(p,a) (p)->lpVtbl->GetStatus(p,a)
358#define IDsCaptureDriverBuffer_Start(p,a) (p)->lpVtbl->Start(p,a)
359#define IDsCaptureDriverBuffer_Stop(p) (p)->lpVtbl->Stop(p)
360#endif
361
362#ifdef __cplusplus
363} /* extern "C" */
364#endif
365
366#endif /* __WINE_DSDRIVER_H */
#define GetStatus(BaseIoAddress, Status)
Definition: atapi.h:328
#define DECLARE_INTERFACE_(i, b)
Definition: basetyps.h:78
#define PURE
Definition: basetyps.h:64
#define THIS_
Definition: basetyps.h:65
#define THIS
Definition: basetyps.h:66
#define STDMETHOD_(t, m)
Definition: basetyps.h:63
#define STDMETHOD(m)
Definition: basetyps.h:62
_In_ PSTORAGE_PROPERTY_ID PropertyId
Definition: cdrom.h:932
_In_ BOOLEAN Release
Definition: cdrom.h:920
struct IDsDriverPropertySet * PIDSDRIVERPROPERTYSET
Definition: dsdriver.h:39
struct _DSDRIVERDESC DSDRIVERDESC
struct IDsCaptureDriver * PIDSCDRIVER
Definition: dsdriver.h:45
struct _DSDRIVERDESC * PDSDRIVERDESC
DSPROPERTY_DIRECTSOUND3DLISTENER
Definition: dsdriver.h:238
@ DSPROPERTY_DIRECTSOUND3DLISTENER_VELOCITY
Definition: dsdriver.h:241
@ DSPROPERTY_DIRECTSOUND3DLISTENER_DOPPLERFACTOR
Definition: dsdriver.h:245
@ DSPROPERTY_DIRECTSOUND3DLISTENER_POSITION
Definition: dsdriver.h:240
@ DSPROPERTY_DIRECTSOUND3DLISTENER_ALLOCATION
Definition: dsdriver.h:247
@ DSPROPERTY_DIRECTSOUND3DLISTENER_BATCH
Definition: dsdriver.h:246
@ DSPROPERTY_DIRECTSOUND3DLISTENER_ALL
Definition: dsdriver.h:239
@ DSPROPERTY_DIRECTSOUND3DLISTENER_ROLLOFFFACTOR
Definition: dsdriver.h:244
@ DSPROPERTY_DIRECTSOUND3DLISTENER_DISTANCEFACTOR
Definition: dsdriver.h:243
@ DSPROPERTY_DIRECTSOUND3DLISTENER_ORIENTATION
Definition: dsdriver.h:242
struct IDsDriver * PIDSDRIVER
Definition: dsdriver.h:33
struct _DSVOLUMEPAN DSVOLUMEPAN
struct _DSVOLUMEPAN * PDSVOLUMEPAN
struct _DSDRIVERCAPS * PDSDRIVERCAPS
struct _DSCDRIVERCAPS * PDSCDRIVERCAPS
DSPROPERTY_DIRECTSOUND3DBUFFER
Definition: dsdriver.h:252
@ DSPROPERTY_DIRECTSOUND3DBUFFER_MODE
Definition: dsdriver.h:261
@ DSPROPERTY_DIRECTSOUND3DBUFFER_CONEORIENTATION
Definition: dsdriver.h:257
@ DSPROPERTY_DIRECTSOUND3DBUFFER_CONEOUTSIDEVOLUME
Definition: dsdriver.h:258
@ DSPROPERTY_DIRECTSOUND3DBUFFER_POSITION
Definition: dsdriver.h:254
@ DSPROPERTY_DIRECTSOUND3DBUFFER_ALL
Definition: dsdriver.h:253
@ DSPROPERTY_DIRECTSOUND3DBUFFER_VELOCITY
Definition: dsdriver.h:255
@ DSPROPERTY_DIRECTSOUND3DBUFFER_MAXDISTANCE
Definition: dsdriver.h:260
@ DSPROPERTY_DIRECTSOUND3DBUFFER_MINDISTANCE
Definition: dsdriver.h:259
@ DSPROPERTY_DIRECTSOUND3DBUFFER_CONEANGLES
Definition: dsdriver.h:256
union _DSPROPERTY DSPROPERTY
DSPROPERTY_DIRECTSOUNDSPEAKERCONFIG
Definition: dsdriver.h:266
@ DSPROPERTY_DIRECTSOUNDSPEAKERCONFIG_SPEAKERCONFIG
Definition: dsdriver.h:267
struct IDsDriverBuffer * PIDSDRIVERBUFFER
Definition: dsdriver.h:36
struct IDsDriverNotify * PIDSDRIVERNOTIFY
Definition: dsdriver.h:42
struct _DSCDRIVERCAPS DSCDRIVERCAPS
union _DSPROPERTY * PDSPROPERTY
struct IDsCaptureDriverBuffer * PIDSCDRIVERBUFFER
Definition: dsdriver.h:48
struct _DSDRIVERCAPS DSDRIVERCAPS
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned short WORD
Definition: ntddk_ex.h:93
return pTarget Start()
REFIID riid
Definition: atlbase.h:39
_In_opt_ PVOID _Out_ BOOLEAN * Stop
Definition: ldrtypes.h:241
#define Open
Definition: syshdrs.h:62
DWORD GetPosition(DWORD private_handle, PMMTIME time, DWORD time_size)
static HRESULT QueryInterface(REFIID, void **)
Definition: events.c:2587
static LPINTERNAL_BSTR Get(const BSTR lpszString)
Definition: vartype.c:4895
static ULONG WINAPI AddRef(IStream *iface)
Definition: clist.c:90
@ Unlock
Definition: ntsecapi.h:294
static BOOL Set
Definition: pageheap.c:10
long LONG
Definition: pedump.c:60
#define DEFINE_GUID(name, l, w1, w2, b1, b2, b3, b4, b5, b6, b7, b8)
Definition: guiddef.h:68
#define REFIID
Definition: guiddef.h:118
@ Close
Definition: sacdrv.h:268
DWORD dwChannels
Definition: dsdriver.h:130
DWORD dwFlags
Definition: dsdriver.h:128
DWORD dwSize
Definition: dsdriver.h:127
DWORD dwFormats
Definition: dsdriver.h:129
DWORD dwMaxHwMixingAllBuffers
Definition: dsdriver.h:86
DWORD dwFlags
Definition: dsdriver.h:82
DWORD dwMaxContigFreeHwMemBytes
Definition: dsdriver.h:100
DWORD dwTotalHwMemBytes
Definition: dsdriver.h:98
DWORD dwMaxHwMixingStreamingBuffers
Definition: dsdriver.h:88
DWORD dwFreeHwMixingAllBuffers
Definition: dsdriver.h:89
DWORD dwPrimaryBuffers
Definition: dsdriver.h:85
DWORD dwMaxSecondarySampleRate
Definition: dsdriver.h:84
DWORD dwFreeHwMixingStaticBuffers
Definition: dsdriver.h:90
DWORD dwMaxHwMixingStaticBuffers
Definition: dsdriver.h:87
DWORD dwMaxHw3DAllBuffers
Definition: dsdriver.h:92
DWORD dwFreeHw3DStaticBuffers
Definition: dsdriver.h:96
DWORD dwMaxHw3DStreamingBuffers
Definition: dsdriver.h:94
DWORD dwMinSecondarySampleRate
Definition: dsdriver.h:83
DWORD dwFreeHwMemBytes
Definition: dsdriver.h:99
DWORD dwFreeHw3DAllBuffers
Definition: dsdriver.h:95
DWORD dwMaxHw3DStaticBuffers
Definition: dsdriver.h:93
DWORD dwFreeHw3DStreamingBuffers
Definition: dsdriver.h:97
DWORD dwFreeHwMixingStreamingBuffers
Definition: dsdriver.h:91
LPVOID pvReserved2
Definition: dsdriver.h:77
DWORD dnDevNode
Definition: dsdriver.h:67
DWORD dwMemStartAddress
Definition: dsdriver.h:73
LPVOID pvReserved1
Definition: dsdriver.h:76
DWORD dwFlags
Definition: dsdriver.h:64
DWORD dwMemAllocExtra
Definition: dsdriver.h:75
WORD wVxdId
Definition: dsdriver.h:68
CHAR szDrvname[256]
Definition: dsdriver.h:66
DWORD dwMemEndAddress
Definition: dsdriver.h:74
ULONG ulDeviceNum
Definition: dsdriver.h:70
CHAR szDesc[256]
Definition: dsdriver.h:65
WORD wReserved
Definition: dsdriver.h:69
LPVOID pvDirectDrawHeap
Definition: dsdriver.h:72
DWORD dwHeapType
Definition: dsdriver.h:71
DWORD dwPanRightAmpFactor
Definition: dsdriver.h:111
DWORD dwTotalRightAmpFactor
Definition: dsdriver.h:106
DWORD dwPanLeftAmpFactor
Definition: dsdriver.h:110
DWORD dwVolAmpFactor
Definition: dsdriver.h:108
LONG lVolume
Definition: dsdriver.h:107
DWORD dwTotalLeftAmpFactor
Definition: dsdriver.h:105
Definition: scsiwmi.h:51
uint32_t * PULONG
Definition: typedefs.h:59
unsigned char * LPBYTE
Definition: typedefs.h:53
uint32_t * LPDWORD
Definition: typedefs.h:59
uint32_t ULONG
Definition: typedefs.h:59
uint64_t ULONGLONG
Definition: typedefs.h:67
ULONG InstanceId
Definition: dsdriver.h:120
GUID Set
Definition: dsdriver.h:117
ULONG Flags
Definition: dsdriver.h:119
ULONG Id
Definition: dsdriver.h:118
struct _DSPROPERTY::@2287 DUMMYSTRUCTNAME
ULONGLONG Alignment
Definition: dsdriver.h:122
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWAITLOCK * Lock
Definition: wdfsync.h:127
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1176
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
Definition: wincrypt.h:6082
char CHAR
Definition: xmlstorage.h:175