source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/endpointvolume.h@ 1170

Last change on this file since 1170 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 30.1 KB
Line 
1/*** Autogenerated by WIDL 6.4 from include/endpointvolume.idl - Do not edit ***/
2
3#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__
5#define __REQUIRED_RPCNDR_H_VERSION__ 475
6#endif
7#include <rpc.h>
8#include <rpcndr.h>
9#endif
10
11#ifndef COM_NO_WINDOWS_H
12#include <windows.h>
13#include <ole2.h>
14#endif
15
16#ifndef __endpointvolume_h__
17#define __endpointvolume_h__
18
19/* Forward declarations */
20
21#ifndef __IAudioEndpointVolumeCallback_FWD_DEFINED__
22#define __IAudioEndpointVolumeCallback_FWD_DEFINED__
23typedef interface IAudioEndpointVolumeCallback IAudioEndpointVolumeCallback;
24#ifdef __cplusplus
25interface IAudioEndpointVolumeCallback;
26#endif /* __cplusplus */
27#endif
28
29#ifndef __IAudioEndpointVolume_FWD_DEFINED__
30#define __IAudioEndpointVolume_FWD_DEFINED__
31typedef interface IAudioEndpointVolume IAudioEndpointVolume;
32#ifdef __cplusplus
33interface IAudioEndpointVolume;
34#endif /* __cplusplus */
35#endif
36
37#ifndef __IAudioEndpointVolumeEx_FWD_DEFINED__
38#define __IAudioEndpointVolumeEx_FWD_DEFINED__
39typedef interface IAudioEndpointVolumeEx IAudioEndpointVolumeEx;
40#ifdef __cplusplus
41interface IAudioEndpointVolumeEx;
42#endif /* __cplusplus */
43#endif
44
45/* Headers for imported files */
46
47#include <unknwn.h>
48#include <devicetopology.h>
49
50#ifdef __cplusplus
51extern "C" {
52#endif
53
54typedef struct AUDIO_VOLUME_NOTIFICATION_DATA {
55 GUID guidEventContext;
56 WINBOOL bMuted;
57 FLOAT fMasterVolume;
58 UINT nChannels;
59 FLOAT afChannelVolumes[1];
60} AUDIO_VOLUME_NOTIFICATION_DATA;
61typedef struct AUDIO_VOLUME_NOTIFICATION_DATA *PAUDIO_VOLUME_NOTIFICATION_DATA;
62#define ENDPOINT_HARDWARE_SUPPORT_VOLUME 0x1
63#define ENDPOINT_HARDWARE_SUPPORT_MUTE 0x2
64#define ENDPOINT_HARDWARE_SUPPORT_METER 0x4
65#ifndef __IAudioEndpointVolumeCallback_FWD_DEFINED__
66#define __IAudioEndpointVolumeCallback_FWD_DEFINED__
67typedef interface IAudioEndpointVolumeCallback IAudioEndpointVolumeCallback;
68#ifdef __cplusplus
69interface IAudioEndpointVolumeCallback;
70#endif /* __cplusplus */
71#endif
72
73#ifndef __IAudioEndpointVolume_FWD_DEFINED__
74#define __IAudioEndpointVolume_FWD_DEFINED__
75typedef interface IAudioEndpointVolume IAudioEndpointVolume;
76#ifdef __cplusplus
77interface IAudioEndpointVolume;
78#endif /* __cplusplus */
79#endif
80
81#ifndef __IAudioEndpointVolumeEx_FWD_DEFINED__
82#define __IAudioEndpointVolumeEx_FWD_DEFINED__
83typedef interface IAudioEndpointVolumeEx IAudioEndpointVolumeEx;
84#ifdef __cplusplus
85interface IAudioEndpointVolumeEx;
86#endif /* __cplusplus */
87#endif
88
89#ifndef __IAudioMeterInformation_FWD_DEFINED__
90#define __IAudioMeterInformation_FWD_DEFINED__
91typedef interface IAudioMeterInformation IAudioMeterInformation;
92#ifdef __cplusplus
93interface IAudioMeterInformation;
94#endif /* __cplusplus */
95#endif
96
97/*****************************************************************************
98 * IAudioEndpointVolumeCallback interface
99 */
100#ifndef __IAudioEndpointVolumeCallback_INTERFACE_DEFINED__
101#define __IAudioEndpointVolumeCallback_INTERFACE_DEFINED__
102
103DEFINE_GUID(IID_IAudioEndpointVolumeCallback, 0x657804fa, 0xd6ad, 0x4496, 0x8a,0x60, 0x35,0x27,0x52,0xaf,0x4f,0x89);
104#if defined(__cplusplus) && !defined(CINTERFACE)
105MIDL_INTERFACE("657804fa-d6ad-4496-8a60-352752af4f89")
106IAudioEndpointVolumeCallback : public IUnknown
107{
108 virtual HRESULT STDMETHODCALLTYPE OnNotify(
109 AUDIO_VOLUME_NOTIFICATION_DATA *pNotify) = 0;
110
111};
112#ifdef __CRT_UUID_DECL
113__CRT_UUID_DECL(IAudioEndpointVolumeCallback, 0x657804fa, 0xd6ad, 0x4496, 0x8a,0x60, 0x35,0x27,0x52,0xaf,0x4f,0x89)
114#endif
115#else
116typedef struct IAudioEndpointVolumeCallbackVtbl {
117 BEGIN_INTERFACE
118
119 /*** IUnknown methods ***/
120 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
121 IAudioEndpointVolumeCallback *This,
122 REFIID riid,
123 void **ppvObject);
124
125 ULONG (STDMETHODCALLTYPE *AddRef)(
126 IAudioEndpointVolumeCallback *This);
127
128 ULONG (STDMETHODCALLTYPE *Release)(
129 IAudioEndpointVolumeCallback *This);
130
131 /*** IAudioEndpointVolumeCallback methods ***/
132 HRESULT (STDMETHODCALLTYPE *OnNotify)(
133 IAudioEndpointVolumeCallback *This,
134 AUDIO_VOLUME_NOTIFICATION_DATA *pNotify);
135
136 END_INTERFACE
137} IAudioEndpointVolumeCallbackVtbl;
138
139interface IAudioEndpointVolumeCallback {
140 CONST_VTBL IAudioEndpointVolumeCallbackVtbl* lpVtbl;
141};
142
143#ifdef COBJMACROS
144#ifndef WIDL_C_INLINE_WRAPPERS
145/*** IUnknown methods ***/
146#define IAudioEndpointVolumeCallback_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
147#define IAudioEndpointVolumeCallback_AddRef(This) (This)->lpVtbl->AddRef(This)
148#define IAudioEndpointVolumeCallback_Release(This) (This)->lpVtbl->Release(This)
149/*** IAudioEndpointVolumeCallback methods ***/
150#define IAudioEndpointVolumeCallback_OnNotify(This,pNotify) (This)->lpVtbl->OnNotify(This,pNotify)
151#else
152/*** IUnknown methods ***/
153static FORCEINLINE HRESULT IAudioEndpointVolumeCallback_QueryInterface(IAudioEndpointVolumeCallback* This,REFIID riid,void **ppvObject) {
154 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
155}
156static FORCEINLINE ULONG IAudioEndpointVolumeCallback_AddRef(IAudioEndpointVolumeCallback* This) {
157 return This->lpVtbl->AddRef(This);
158}
159static FORCEINLINE ULONG IAudioEndpointVolumeCallback_Release(IAudioEndpointVolumeCallback* This) {
160 return This->lpVtbl->Release(This);
161}
162/*** IAudioEndpointVolumeCallback methods ***/
163static FORCEINLINE HRESULT IAudioEndpointVolumeCallback_OnNotify(IAudioEndpointVolumeCallback* This,AUDIO_VOLUME_NOTIFICATION_DATA *pNotify) {
164 return This->lpVtbl->OnNotify(This,pNotify);
165}
166#endif
167#endif
168
169#endif
170
171
172#endif /* __IAudioEndpointVolumeCallback_INTERFACE_DEFINED__ */
173
174/*****************************************************************************
175 * IAudioEndpointVolume interface
176 */
177#ifndef __IAudioEndpointVolume_INTERFACE_DEFINED__
178#define __IAudioEndpointVolume_INTERFACE_DEFINED__
179
180DEFINE_GUID(IID_IAudioEndpointVolume, 0x5cdf2c82, 0x841e, 0x4546, 0x97,0x22, 0x0c,0xf7,0x40,0x78,0x22,0x9a);
181#if defined(__cplusplus) && !defined(CINTERFACE)
182MIDL_INTERFACE("5cdf2c82-841e-4546-9722-0cf74078229a")
183IAudioEndpointVolume : public IUnknown
184{
185 virtual HRESULT STDMETHODCALLTYPE RegisterControlChangeNotify(
186 IAudioEndpointVolumeCallback *pNotify) = 0;
187
188 virtual HRESULT STDMETHODCALLTYPE UnregisterControlChangeNotify(
189 IAudioEndpointVolumeCallback *pNotify) = 0;
190
191 virtual HRESULT STDMETHODCALLTYPE GetChannelCount(
192 UINT *pnChannelCount) = 0;
193
194 virtual HRESULT STDMETHODCALLTYPE SetMasterVolumeLevel(
195 FLOAT fLevelDB,
196 LPCGUID pguidEventContext) = 0;
197
198 virtual HRESULT STDMETHODCALLTYPE SetMasterVolumeLevelScalar(
199 FLOAT fLevel,
200 LPCGUID pguidEventContext) = 0;
201
202 virtual HRESULT STDMETHODCALLTYPE GetMasterVolumeLevel(
203 FLOAT *fLevelDB) = 0;
204
205 virtual HRESULT STDMETHODCALLTYPE GetMasterVolumeLevelScalar(
206 FLOAT *fLevel) = 0;
207
208 virtual HRESULT STDMETHODCALLTYPE SetChannelVolumeLevel(
209 UINT nChannel,
210 FLOAT fLevelDB,
211 LPCGUID pguidEventContext) = 0;
212
213 virtual HRESULT STDMETHODCALLTYPE SetChannelVolumeLevelScalar(
214 UINT nChannel,
215 FLOAT fLevel,
216 LPCGUID pguidEventContext) = 0;
217
218 virtual HRESULT STDMETHODCALLTYPE GetChannelVolumeLevel(
219 UINT nChannel,
220 FLOAT *fLevelDB) = 0;
221
222 virtual HRESULT STDMETHODCALLTYPE GetChannelVolumeLevelScalar(
223 UINT nChannel,
224 FLOAT *fLevel) = 0;
225
226 virtual HRESULT STDMETHODCALLTYPE SetMute(
227 WINBOOL bMute,
228 LPCGUID pguidEventContext) = 0;
229
230 virtual HRESULT STDMETHODCALLTYPE GetMute(
231 WINBOOL *bMute) = 0;
232
233 virtual HRESULT STDMETHODCALLTYPE GetVolumeStepInfo(
234 UINT *pnStep,
235 UINT *pnStepCount) = 0;
236
237 virtual HRESULT STDMETHODCALLTYPE VolumeStepUp(
238 LPCGUID pguidEventContext) = 0;
239
240 virtual HRESULT STDMETHODCALLTYPE VolumeStepDown(
241 LPCGUID pguidEventContext) = 0;
242
243 virtual HRESULT STDMETHODCALLTYPE QueryHardwareSupport(
244 DWORD *pdwHardwareSupportMask) = 0;
245
246 virtual HRESULT STDMETHODCALLTYPE GetVolumeRange(
247 FLOAT *pflVolumeMindB,
248 FLOAT *pflVolumeMaxdB,
249 FLOAT *pflVolumeIncrementdB) = 0;
250
251};
252#ifdef __CRT_UUID_DECL
253__CRT_UUID_DECL(IAudioEndpointVolume, 0x5cdf2c82, 0x841e, 0x4546, 0x97,0x22, 0x0c,0xf7,0x40,0x78,0x22,0x9a)
254#endif
255#else
256typedef struct IAudioEndpointVolumeVtbl {
257 BEGIN_INTERFACE
258
259 /*** IUnknown methods ***/
260 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
261 IAudioEndpointVolume *This,
262 REFIID riid,
263 void **ppvObject);
264
265 ULONG (STDMETHODCALLTYPE *AddRef)(
266 IAudioEndpointVolume *This);
267
268 ULONG (STDMETHODCALLTYPE *Release)(
269 IAudioEndpointVolume *This);
270
271 /*** IAudioEndpointVolume methods ***/
272 HRESULT (STDMETHODCALLTYPE *RegisterControlChangeNotify)(
273 IAudioEndpointVolume *This,
274 IAudioEndpointVolumeCallback *pNotify);
275
276 HRESULT (STDMETHODCALLTYPE *UnregisterControlChangeNotify)(
277 IAudioEndpointVolume *This,
278 IAudioEndpointVolumeCallback *pNotify);
279
280 HRESULT (STDMETHODCALLTYPE *GetChannelCount)(
281 IAudioEndpointVolume *This,
282 UINT *pnChannelCount);
283
284 HRESULT (STDMETHODCALLTYPE *SetMasterVolumeLevel)(
285 IAudioEndpointVolume *This,
286 FLOAT fLevelDB,
287 LPCGUID pguidEventContext);
288
289 HRESULT (STDMETHODCALLTYPE *SetMasterVolumeLevelScalar)(
290 IAudioEndpointVolume *This,
291 FLOAT fLevel,
292 LPCGUID pguidEventContext);
293
294 HRESULT (STDMETHODCALLTYPE *GetMasterVolumeLevel)(
295 IAudioEndpointVolume *This,
296 FLOAT *fLevelDB);
297
298 HRESULT (STDMETHODCALLTYPE *GetMasterVolumeLevelScalar)(
299 IAudioEndpointVolume *This,
300 FLOAT *fLevel);
301
302 HRESULT (STDMETHODCALLTYPE *SetChannelVolumeLevel)(
303 IAudioEndpointVolume *This,
304 UINT nChannel,
305 FLOAT fLevelDB,
306 LPCGUID pguidEventContext);
307
308 HRESULT (STDMETHODCALLTYPE *SetChannelVolumeLevelScalar)(
309 IAudioEndpointVolume *This,
310 UINT nChannel,
311 FLOAT fLevel,
312 LPCGUID pguidEventContext);
313
314 HRESULT (STDMETHODCALLTYPE *GetChannelVolumeLevel)(
315 IAudioEndpointVolume *This,
316 UINT nChannel,
317 FLOAT *fLevelDB);
318
319 HRESULT (STDMETHODCALLTYPE *GetChannelVolumeLevelScalar)(
320 IAudioEndpointVolume *This,
321 UINT nChannel,
322 FLOAT *fLevel);
323
324 HRESULT (STDMETHODCALLTYPE *SetMute)(
325 IAudioEndpointVolume *This,
326 WINBOOL bMute,
327 LPCGUID pguidEventContext);
328
329 HRESULT (STDMETHODCALLTYPE *GetMute)(
330 IAudioEndpointVolume *This,
331 WINBOOL *bMute);
332
333 HRESULT (STDMETHODCALLTYPE *GetVolumeStepInfo)(
334 IAudioEndpointVolume *This,
335 UINT *pnStep,
336 UINT *pnStepCount);
337
338 HRESULT (STDMETHODCALLTYPE *VolumeStepUp)(
339 IAudioEndpointVolume *This,
340 LPCGUID pguidEventContext);
341
342 HRESULT (STDMETHODCALLTYPE *VolumeStepDown)(
343 IAudioEndpointVolume *This,
344 LPCGUID pguidEventContext);
345
346 HRESULT (STDMETHODCALLTYPE *QueryHardwareSupport)(
347 IAudioEndpointVolume *This,
348 DWORD *pdwHardwareSupportMask);
349
350 HRESULT (STDMETHODCALLTYPE *GetVolumeRange)(
351 IAudioEndpointVolume *This,
352 FLOAT *pflVolumeMindB,
353 FLOAT *pflVolumeMaxdB,
354 FLOAT *pflVolumeIncrementdB);
355
356 END_INTERFACE
357} IAudioEndpointVolumeVtbl;
358
359interface IAudioEndpointVolume {
360 CONST_VTBL IAudioEndpointVolumeVtbl* lpVtbl;
361};
362
363#ifdef COBJMACROS
364#ifndef WIDL_C_INLINE_WRAPPERS
365/*** IUnknown methods ***/
366#define IAudioEndpointVolume_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
367#define IAudioEndpointVolume_AddRef(This) (This)->lpVtbl->AddRef(This)
368#define IAudioEndpointVolume_Release(This) (This)->lpVtbl->Release(This)
369/*** IAudioEndpointVolume methods ***/
370#define IAudioEndpointVolume_RegisterControlChangeNotify(This,pNotify) (This)->lpVtbl->RegisterControlChangeNotify(This,pNotify)
371#define IAudioEndpointVolume_UnregisterControlChangeNotify(This,pNotify) (This)->lpVtbl->UnregisterControlChangeNotify(This,pNotify)
372#define IAudioEndpointVolume_GetChannelCount(This,pnChannelCount) (This)->lpVtbl->GetChannelCount(This,pnChannelCount)
373#define IAudioEndpointVolume_SetMasterVolumeLevel(This,fLevelDB,pguidEventContext) (This)->lpVtbl->SetMasterVolumeLevel(This,fLevelDB,pguidEventContext)
374#define IAudioEndpointVolume_SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext) (This)->lpVtbl->SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext)
375#define IAudioEndpointVolume_GetMasterVolumeLevel(This,fLevelDB) (This)->lpVtbl->GetMasterVolumeLevel(This,fLevelDB)
376#define IAudioEndpointVolume_GetMasterVolumeLevelScalar(This,fLevel) (This)->lpVtbl->GetMasterVolumeLevelScalar(This,fLevel)
377#define IAudioEndpointVolume_SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext) (This)->lpVtbl->SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext)
378#define IAudioEndpointVolume_SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext) (This)->lpVtbl->SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext)
379#define IAudioEndpointVolume_GetChannelVolumeLevel(This,nChannel,fLevelDB) (This)->lpVtbl->GetChannelVolumeLevel(This,nChannel,fLevelDB)
380#define IAudioEndpointVolume_GetChannelVolumeLevelScalar(This,nChannel,fLevel) (This)->lpVtbl->GetChannelVolumeLevelScalar(This,nChannel,fLevel)
381#define IAudioEndpointVolume_SetMute(This,bMute,pguidEventContext) (This)->lpVtbl->SetMute(This,bMute,pguidEventContext)
382#define IAudioEndpointVolume_GetMute(This,bMute) (This)->lpVtbl->GetMute(This,bMute)
383#define IAudioEndpointVolume_GetVolumeStepInfo(This,pnStep,pnStepCount) (This)->lpVtbl->GetVolumeStepInfo(This,pnStep,pnStepCount)
384#define IAudioEndpointVolume_VolumeStepUp(This,pguidEventContext) (This)->lpVtbl->VolumeStepUp(This,pguidEventContext)
385#define IAudioEndpointVolume_VolumeStepDown(This,pguidEventContext) (This)->lpVtbl->VolumeStepDown(This,pguidEventContext)
386#define IAudioEndpointVolume_QueryHardwareSupport(This,pdwHardwareSupportMask) (This)->lpVtbl->QueryHardwareSupport(This,pdwHardwareSupportMask)
387#define IAudioEndpointVolume_GetVolumeRange(This,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB) (This)->lpVtbl->GetVolumeRange(This,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB)
388#else
389/*** IUnknown methods ***/
390static FORCEINLINE HRESULT IAudioEndpointVolume_QueryInterface(IAudioEndpointVolume* This,REFIID riid,void **ppvObject) {
391 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
392}
393static FORCEINLINE ULONG IAudioEndpointVolume_AddRef(IAudioEndpointVolume* This) {
394 return This->lpVtbl->AddRef(This);
395}
396static FORCEINLINE ULONG IAudioEndpointVolume_Release(IAudioEndpointVolume* This) {
397 return This->lpVtbl->Release(This);
398}
399/*** IAudioEndpointVolume methods ***/
400static FORCEINLINE HRESULT IAudioEndpointVolume_RegisterControlChangeNotify(IAudioEndpointVolume* This,IAudioEndpointVolumeCallback *pNotify) {
401 return This->lpVtbl->RegisterControlChangeNotify(This,pNotify);
402}
403static FORCEINLINE HRESULT IAudioEndpointVolume_UnregisterControlChangeNotify(IAudioEndpointVolume* This,IAudioEndpointVolumeCallback *pNotify) {
404 return This->lpVtbl->UnregisterControlChangeNotify(This,pNotify);
405}
406static FORCEINLINE HRESULT IAudioEndpointVolume_GetChannelCount(IAudioEndpointVolume* This,UINT *pnChannelCount) {
407 return This->lpVtbl->GetChannelCount(This,pnChannelCount);
408}
409static FORCEINLINE HRESULT IAudioEndpointVolume_SetMasterVolumeLevel(IAudioEndpointVolume* This,FLOAT fLevelDB,LPCGUID pguidEventContext) {
410 return This->lpVtbl->SetMasterVolumeLevel(This,fLevelDB,pguidEventContext);
411}
412static FORCEINLINE HRESULT IAudioEndpointVolume_SetMasterVolumeLevelScalar(IAudioEndpointVolume* This,FLOAT fLevel,LPCGUID pguidEventContext) {
413 return This->lpVtbl->SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext);
414}
415static FORCEINLINE HRESULT IAudioEndpointVolume_GetMasterVolumeLevel(IAudioEndpointVolume* This,FLOAT *fLevelDB) {
416 return This->lpVtbl->GetMasterVolumeLevel(This,fLevelDB);
417}
418static FORCEINLINE HRESULT IAudioEndpointVolume_GetMasterVolumeLevelScalar(IAudioEndpointVolume* This,FLOAT *fLevel) {
419 return This->lpVtbl->GetMasterVolumeLevelScalar(This,fLevel);
420}
421static FORCEINLINE HRESULT IAudioEndpointVolume_SetChannelVolumeLevel(IAudioEndpointVolume* This,UINT nChannel,FLOAT fLevelDB,LPCGUID pguidEventContext) {
422 return This->lpVtbl->SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext);
423}
424static FORCEINLINE HRESULT IAudioEndpointVolume_SetChannelVolumeLevelScalar(IAudioEndpointVolume* This,UINT nChannel,FLOAT fLevel,LPCGUID pguidEventContext) {
425 return This->lpVtbl->SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext);
426}
427static FORCEINLINE HRESULT IAudioEndpointVolume_GetChannelVolumeLevel(IAudioEndpointVolume* This,UINT nChannel,FLOAT *fLevelDB) {
428 return This->lpVtbl->GetChannelVolumeLevel(This,nChannel,fLevelDB);
429}
430static FORCEINLINE HRESULT IAudioEndpointVolume_GetChannelVolumeLevelScalar(IAudioEndpointVolume* This,UINT nChannel,FLOAT *fLevel) {
431 return This->lpVtbl->GetChannelVolumeLevelScalar(This,nChannel,fLevel);
432}
433static FORCEINLINE HRESULT IAudioEndpointVolume_SetMute(IAudioEndpointVolume* This,WINBOOL bMute,LPCGUID pguidEventContext) {
434 return This->lpVtbl->SetMute(This,bMute,pguidEventContext);
435}
436static FORCEINLINE HRESULT IAudioEndpointVolume_GetMute(IAudioEndpointVolume* This,WINBOOL *bMute) {
437 return This->lpVtbl->GetMute(This,bMute);
438}
439static FORCEINLINE HRESULT IAudioEndpointVolume_GetVolumeStepInfo(IAudioEndpointVolume* This,UINT *pnStep,UINT *pnStepCount) {
440 return This->lpVtbl->GetVolumeStepInfo(This,pnStep,pnStepCount);
441}
442static FORCEINLINE HRESULT IAudioEndpointVolume_VolumeStepUp(IAudioEndpointVolume* This,LPCGUID pguidEventContext) {
443 return This->lpVtbl->VolumeStepUp(This,pguidEventContext);
444}
445static FORCEINLINE HRESULT IAudioEndpointVolume_VolumeStepDown(IAudioEndpointVolume* This,LPCGUID pguidEventContext) {
446 return This->lpVtbl->VolumeStepDown(This,pguidEventContext);
447}
448static FORCEINLINE HRESULT IAudioEndpointVolume_QueryHardwareSupport(IAudioEndpointVolume* This,DWORD *pdwHardwareSupportMask) {
449 return This->lpVtbl->QueryHardwareSupport(This,pdwHardwareSupportMask);
450}
451static FORCEINLINE HRESULT IAudioEndpointVolume_GetVolumeRange(IAudioEndpointVolume* This,FLOAT *pflVolumeMindB,FLOAT *pflVolumeMaxdB,FLOAT *pflVolumeIncrementdB) {
452 return This->lpVtbl->GetVolumeRange(This,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB);
453}
454#endif
455#endif
456
457#endif
458
459
460#endif /* __IAudioEndpointVolume_INTERFACE_DEFINED__ */
461
462/*****************************************************************************
463 * IAudioEndpointVolumeEx interface
464 */
465#ifndef __IAudioEndpointVolumeEx_INTERFACE_DEFINED__
466#define __IAudioEndpointVolumeEx_INTERFACE_DEFINED__
467
468DEFINE_GUID(IID_IAudioEndpointVolumeEx, 0x66e11784, 0xf695, 0x4f28, 0xa5,0x05, 0xa7,0x08,0x00,0x81,0xa7,0x8f);
469#if defined(__cplusplus) && !defined(CINTERFACE)
470MIDL_INTERFACE("66e11784-f695-4f28-a505-a7080081a78f")
471IAudioEndpointVolumeEx : public IAudioEndpointVolume
472{
473 virtual HRESULT STDMETHODCALLTYPE GetVolumeRangeChannel(
474 UINT iChannel,
475 FLOAT *pflVolumeMindB,
476 FLOAT *pflVolumeMaxdB,
477 FLOAT *pflVolumeIncrementdB) = 0;
478
479};
480#ifdef __CRT_UUID_DECL
481__CRT_UUID_DECL(IAudioEndpointVolumeEx, 0x66e11784, 0xf695, 0x4f28, 0xa5,0x05, 0xa7,0x08,0x00,0x81,0xa7,0x8f)
482#endif
483#else
484typedef struct IAudioEndpointVolumeExVtbl {
485 BEGIN_INTERFACE
486
487 /*** IUnknown methods ***/
488 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
489 IAudioEndpointVolumeEx *This,
490 REFIID riid,
491 void **ppvObject);
492
493 ULONG (STDMETHODCALLTYPE *AddRef)(
494 IAudioEndpointVolumeEx *This);
495
496 ULONG (STDMETHODCALLTYPE *Release)(
497 IAudioEndpointVolumeEx *This);
498
499 /*** IAudioEndpointVolume methods ***/
500 HRESULT (STDMETHODCALLTYPE *RegisterControlChangeNotify)(
501 IAudioEndpointVolumeEx *This,
502 IAudioEndpointVolumeCallback *pNotify);
503
504 HRESULT (STDMETHODCALLTYPE *UnregisterControlChangeNotify)(
505 IAudioEndpointVolumeEx *This,
506 IAudioEndpointVolumeCallback *pNotify);
507
508 HRESULT (STDMETHODCALLTYPE *GetChannelCount)(
509 IAudioEndpointVolumeEx *This,
510 UINT *pnChannelCount);
511
512 HRESULT (STDMETHODCALLTYPE *SetMasterVolumeLevel)(
513 IAudioEndpointVolumeEx *This,
514 FLOAT fLevelDB,
515 LPCGUID pguidEventContext);
516
517 HRESULT (STDMETHODCALLTYPE *SetMasterVolumeLevelScalar)(
518 IAudioEndpointVolumeEx *This,
519 FLOAT fLevel,
520 LPCGUID pguidEventContext);
521
522 HRESULT (STDMETHODCALLTYPE *GetMasterVolumeLevel)(
523 IAudioEndpointVolumeEx *This,
524 FLOAT *fLevelDB);
525
526 HRESULT (STDMETHODCALLTYPE *GetMasterVolumeLevelScalar)(
527 IAudioEndpointVolumeEx *This,
528 FLOAT *fLevel);
529
530 HRESULT (STDMETHODCALLTYPE *SetChannelVolumeLevel)(
531 IAudioEndpointVolumeEx *This,
532 UINT nChannel,
533 FLOAT fLevelDB,
534 LPCGUID pguidEventContext);
535
536 HRESULT (STDMETHODCALLTYPE *SetChannelVolumeLevelScalar)(
537 IAudioEndpointVolumeEx *This,
538 UINT nChannel,
539 FLOAT fLevel,
540 LPCGUID pguidEventContext);
541
542 HRESULT (STDMETHODCALLTYPE *GetChannelVolumeLevel)(
543 IAudioEndpointVolumeEx *This,
544 UINT nChannel,
545 FLOAT *fLevelDB);
546
547 HRESULT (STDMETHODCALLTYPE *GetChannelVolumeLevelScalar)(
548 IAudioEndpointVolumeEx *This,
549 UINT nChannel,
550 FLOAT *fLevel);
551
552 HRESULT (STDMETHODCALLTYPE *SetMute)(
553 IAudioEndpointVolumeEx *This,
554 WINBOOL bMute,
555 LPCGUID pguidEventContext);
556
557 HRESULT (STDMETHODCALLTYPE *GetMute)(
558 IAudioEndpointVolumeEx *This,
559 WINBOOL *bMute);
560
561 HRESULT (STDMETHODCALLTYPE *GetVolumeStepInfo)(
562 IAudioEndpointVolumeEx *This,
563 UINT *pnStep,
564 UINT *pnStepCount);
565
566 HRESULT (STDMETHODCALLTYPE *VolumeStepUp)(
567 IAudioEndpointVolumeEx *This,
568 LPCGUID pguidEventContext);
569
570 HRESULT (STDMETHODCALLTYPE *VolumeStepDown)(
571 IAudioEndpointVolumeEx *This,
572 LPCGUID pguidEventContext);
573
574 HRESULT (STDMETHODCALLTYPE *QueryHardwareSupport)(
575 IAudioEndpointVolumeEx *This,
576 DWORD *pdwHardwareSupportMask);
577
578 HRESULT (STDMETHODCALLTYPE *GetVolumeRange)(
579 IAudioEndpointVolumeEx *This,
580 FLOAT *pflVolumeMindB,
581 FLOAT *pflVolumeMaxdB,
582 FLOAT *pflVolumeIncrementdB);
583
584 /*** IAudioEndpointVolumeEx methods ***/
585 HRESULT (STDMETHODCALLTYPE *GetVolumeRangeChannel)(
586 IAudioEndpointVolumeEx *This,
587 UINT iChannel,
588 FLOAT *pflVolumeMindB,
589 FLOAT *pflVolumeMaxdB,
590 FLOAT *pflVolumeIncrementdB);
591
592 END_INTERFACE
593} IAudioEndpointVolumeExVtbl;
594
595interface IAudioEndpointVolumeEx {
596 CONST_VTBL IAudioEndpointVolumeExVtbl* lpVtbl;
597};
598
599#ifdef COBJMACROS
600#ifndef WIDL_C_INLINE_WRAPPERS
601/*** IUnknown methods ***/
602#define IAudioEndpointVolumeEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
603#define IAudioEndpointVolumeEx_AddRef(This) (This)->lpVtbl->AddRef(This)
604#define IAudioEndpointVolumeEx_Release(This) (This)->lpVtbl->Release(This)
605/*** IAudioEndpointVolume methods ***/
606#define IAudioEndpointVolumeEx_RegisterControlChangeNotify(This,pNotify) (This)->lpVtbl->RegisterControlChangeNotify(This,pNotify)
607#define IAudioEndpointVolumeEx_UnregisterControlChangeNotify(This,pNotify) (This)->lpVtbl->UnregisterControlChangeNotify(This,pNotify)
608#define IAudioEndpointVolumeEx_GetChannelCount(This,pnChannelCount) (This)->lpVtbl->GetChannelCount(This,pnChannelCount)
609#define IAudioEndpointVolumeEx_SetMasterVolumeLevel(This,fLevelDB,pguidEventContext) (This)->lpVtbl->SetMasterVolumeLevel(This,fLevelDB,pguidEventContext)
610#define IAudioEndpointVolumeEx_SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext) (This)->lpVtbl->SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext)
611#define IAudioEndpointVolumeEx_GetMasterVolumeLevel(This,fLevelDB) (This)->lpVtbl->GetMasterVolumeLevel(This,fLevelDB)
612#define IAudioEndpointVolumeEx_GetMasterVolumeLevelScalar(This,fLevel) (This)->lpVtbl->GetMasterVolumeLevelScalar(This,fLevel)
613#define IAudioEndpointVolumeEx_SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext) (This)->lpVtbl->SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext)
614#define IAudioEndpointVolumeEx_SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext) (This)->lpVtbl->SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext)
615#define IAudioEndpointVolumeEx_GetChannelVolumeLevel(This,nChannel,fLevelDB) (This)->lpVtbl->GetChannelVolumeLevel(This,nChannel,fLevelDB)
616#define IAudioEndpointVolumeEx_GetChannelVolumeLevelScalar(This,nChannel,fLevel) (This)->lpVtbl->GetChannelVolumeLevelScalar(This,nChannel,fLevel)
617#define IAudioEndpointVolumeEx_SetMute(This,bMute,pguidEventContext) (This)->lpVtbl->SetMute(This,bMute,pguidEventContext)
618#define IAudioEndpointVolumeEx_GetMute(This,bMute) (This)->lpVtbl->GetMute(This,bMute)
619#define IAudioEndpointVolumeEx_GetVolumeStepInfo(This,pnStep,pnStepCount) (This)->lpVtbl->GetVolumeStepInfo(This,pnStep,pnStepCount)
620#define IAudioEndpointVolumeEx_VolumeStepUp(This,pguidEventContext) (This)->lpVtbl->VolumeStepUp(This,pguidEventContext)
621#define IAudioEndpointVolumeEx_VolumeStepDown(This,pguidEventContext) (This)->lpVtbl->VolumeStepDown(This,pguidEventContext)
622#define IAudioEndpointVolumeEx_QueryHardwareSupport(This,pdwHardwareSupportMask) (This)->lpVtbl->QueryHardwareSupport(This,pdwHardwareSupportMask)
623#define IAudioEndpointVolumeEx_GetVolumeRange(This,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB) (This)->lpVtbl->GetVolumeRange(This,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB)
624/*** IAudioEndpointVolumeEx methods ***/
625#define IAudioEndpointVolumeEx_GetVolumeRangeChannel(This,iChannel,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB) (This)->lpVtbl->GetVolumeRangeChannel(This,iChannel,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB)
626#else
627/*** IUnknown methods ***/
628static FORCEINLINE HRESULT IAudioEndpointVolumeEx_QueryInterface(IAudioEndpointVolumeEx* This,REFIID riid,void **ppvObject) {
629 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
630}
631static FORCEINLINE ULONG IAudioEndpointVolumeEx_AddRef(IAudioEndpointVolumeEx* This) {
632 return This->lpVtbl->AddRef(This);
633}
634static FORCEINLINE ULONG IAudioEndpointVolumeEx_Release(IAudioEndpointVolumeEx* This) {
635 return This->lpVtbl->Release(This);
636}
637/*** IAudioEndpointVolume methods ***/
638static FORCEINLINE HRESULT IAudioEndpointVolumeEx_RegisterControlChangeNotify(IAudioEndpointVolumeEx* This,IAudioEndpointVolumeCallback *pNotify) {
639 return This->lpVtbl->RegisterControlChangeNotify(This,pNotify);
640}
641static FORCEINLINE HRESULT IAudioEndpointVolumeEx_UnregisterControlChangeNotify(IAudioEndpointVolumeEx* This,IAudioEndpointVolumeCallback *pNotify) {
642 return This->lpVtbl->UnregisterControlChangeNotify(This,pNotify);
643}
644static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetChannelCount(IAudioEndpointVolumeEx* This,UINT *pnChannelCount) {
645 return This->lpVtbl->GetChannelCount(This,pnChannelCount);
646}
647static FORCEINLINE HRESULT IAudioEndpointVolumeEx_SetMasterVolumeLevel(IAudioEndpointVolumeEx* This,FLOAT fLevelDB,LPCGUID pguidEventContext) {
648 return This->lpVtbl->SetMasterVolumeLevel(This,fLevelDB,pguidEventContext);
649}
650static FORCEINLINE HRESULT IAudioEndpointVolumeEx_SetMasterVolumeLevelScalar(IAudioEndpointVolumeEx* This,FLOAT fLevel,LPCGUID pguidEventContext) {
651 return This->lpVtbl->SetMasterVolumeLevelScalar(This,fLevel,pguidEventContext);
652}
653static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetMasterVolumeLevel(IAudioEndpointVolumeEx* This,FLOAT *fLevelDB) {
654 return This->lpVtbl->GetMasterVolumeLevel(This,fLevelDB);
655}
656static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetMasterVolumeLevelScalar(IAudioEndpointVolumeEx* This,FLOAT *fLevel) {
657 return This->lpVtbl->GetMasterVolumeLevelScalar(This,fLevel);
658}
659static FORCEINLINE HRESULT IAudioEndpointVolumeEx_SetChannelVolumeLevel(IAudioEndpointVolumeEx* This,UINT nChannel,FLOAT fLevelDB,LPCGUID pguidEventContext) {
660 return This->lpVtbl->SetChannelVolumeLevel(This,nChannel,fLevelDB,pguidEventContext);
661}
662static FORCEINLINE HRESULT IAudioEndpointVolumeEx_SetChannelVolumeLevelScalar(IAudioEndpointVolumeEx* This,UINT nChannel,FLOAT fLevel,LPCGUID pguidEventContext) {
663 return This->lpVtbl->SetChannelVolumeLevelScalar(This,nChannel,fLevel,pguidEventContext);
664}
665static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetChannelVolumeLevel(IAudioEndpointVolumeEx* This,UINT nChannel,FLOAT *fLevelDB) {
666 return This->lpVtbl->GetChannelVolumeLevel(This,nChannel,fLevelDB);
667}
668static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetChannelVolumeLevelScalar(IAudioEndpointVolumeEx* This,UINT nChannel,FLOAT *fLevel) {
669 return This->lpVtbl->GetChannelVolumeLevelScalar(This,nChannel,fLevel);
670}
671static FORCEINLINE HRESULT IAudioEndpointVolumeEx_SetMute(IAudioEndpointVolumeEx* This,WINBOOL bMute,LPCGUID pguidEventContext) {
672 return This->lpVtbl->SetMute(This,bMute,pguidEventContext);
673}
674static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetMute(IAudioEndpointVolumeEx* This,WINBOOL *bMute) {
675 return This->lpVtbl->GetMute(This,bMute);
676}
677static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetVolumeStepInfo(IAudioEndpointVolumeEx* This,UINT *pnStep,UINT *pnStepCount) {
678 return This->lpVtbl->GetVolumeStepInfo(This,pnStep,pnStepCount);
679}
680static FORCEINLINE HRESULT IAudioEndpointVolumeEx_VolumeStepUp(IAudioEndpointVolumeEx* This,LPCGUID pguidEventContext) {
681 return This->lpVtbl->VolumeStepUp(This,pguidEventContext);
682}
683static FORCEINLINE HRESULT IAudioEndpointVolumeEx_VolumeStepDown(IAudioEndpointVolumeEx* This,LPCGUID pguidEventContext) {
684 return This->lpVtbl->VolumeStepDown(This,pguidEventContext);
685}
686static FORCEINLINE HRESULT IAudioEndpointVolumeEx_QueryHardwareSupport(IAudioEndpointVolumeEx* This,DWORD *pdwHardwareSupportMask) {
687 return This->lpVtbl->QueryHardwareSupport(This,pdwHardwareSupportMask);
688}
689static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetVolumeRange(IAudioEndpointVolumeEx* This,FLOAT *pflVolumeMindB,FLOAT *pflVolumeMaxdB,FLOAT *pflVolumeIncrementdB) {
690 return This->lpVtbl->GetVolumeRange(This,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB);
691}
692/*** IAudioEndpointVolumeEx methods ***/
693static FORCEINLINE HRESULT IAudioEndpointVolumeEx_GetVolumeRangeChannel(IAudioEndpointVolumeEx* This,UINT iChannel,FLOAT *pflVolumeMindB,FLOAT *pflVolumeMaxdB,FLOAT *pflVolumeIncrementdB) {
694 return This->lpVtbl->GetVolumeRangeChannel(This,iChannel,pflVolumeMindB,pflVolumeMaxdB,pflVolumeIncrementdB);
695}
696#endif
697#endif
698
699#endif
700
701
702#endif /* __IAudioEndpointVolumeEx_INTERFACE_DEFINED__ */
703
704/* Begin additional prototypes for all interfaces */
705
706
707/* End additional prototypes */
708
709#ifdef __cplusplus
710}
711#endif
712
713#endif /* __endpointvolume_h__ */
Note: See TracBrowser for help on using the repository browser.