To check out this repository please hg clone the following URL, or open the URL using EasyMercurial or your preferred Mercurial client.

The primary repository for this project is hosted at https://github.com/sonic-visualiser/sv-dependency-builds .
This repository is a read-only copy which is updated automatically every hour.

Statistics Download as Zip
| Branch: | Tag: | Revision:

root / src / portaudio_20161030_catalina_patch / src / hostapi / wasapi / mingw-include / audioclient.h @ 162:d43aab368df9

History | View | Annotate | Download (34 KB)

1

    
2

    
3
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
4

    
5

    
6
 /* File created by MIDL compiler version 7.00.0499 */
7
/* Compiler settings for audioclient.idl:
8
    Oicf, W1, Zp8, env=Win32 (32b run)
9
    protocol : dce , ms_ext, c_ext, robust
10
    error checks: allocation ref bounds_check enum stub_data 
11
    VC __declspec() decoration level: 
12
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
13
         DECLSPEC_UUID(), MIDL_INTERFACE()
14
*/
15
//@@MIDL_FILE_HEADING(  )
16

    
17
#pragma warning( disable: 4049 )  /* more than 64k source lines */
18

    
19

    
20
/* verify that the <rpcndr.h> version is high enough to compile this file*/
21
#ifndef __REQUIRED_RPCNDR_H_VERSION__
22
#define __REQUIRED_RPCNDR_H_VERSION__ 500
23
#endif
24

    
25
/* verify that the <rpcsal.h> version is high enough to compile this file*/
26
#ifndef __REQUIRED_RPCSAL_H_VERSION__
27
#define __REQUIRED_RPCSAL_H_VERSION__ 100
28
#endif
29

    
30
#include "rpc.h"
31
#include "rpcndr.h"
32

    
33
#ifndef __RPCNDR_H_VERSION__
34
#error this stub requires an updated version of <rpcndr.h>
35
#endif // __RPCNDR_H_VERSION__
36

    
37
#ifndef COM_NO_WINDOWS_H
38
#include "windows.h"
39
#include "ole2.h"
40
#endif /*COM_NO_WINDOWS_H*/
41

    
42
#ifndef __audioclient_h__
43
#define __audioclient_h__
44

    
45
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
46
#pragma once
47
#endif
48

    
49
/* Forward Declarations */ 
50

    
51
#ifndef __IAudioClient_FWD_DEFINED__
52
#define __IAudioClient_FWD_DEFINED__
53
typedef interface IAudioClient IAudioClient;
54
#endif         /* __IAudioClient_FWD_DEFINED__ */
55

    
56

    
57
#ifndef __IAudioRenderClient_FWD_DEFINED__
58
#define __IAudioRenderClient_FWD_DEFINED__
59
typedef interface IAudioRenderClient IAudioRenderClient;
60
#endif         /* __IAudioRenderClient_FWD_DEFINED__ */
61

    
62

    
63
#ifndef __IAudioCaptureClient_FWD_DEFINED__
64
#define __IAudioCaptureClient_FWD_DEFINED__
65
typedef interface IAudioCaptureClient IAudioCaptureClient;
66
#endif         /* __IAudioCaptureClient_FWD_DEFINED__ */
67

    
68

    
69
#ifndef __IAudioClock_FWD_DEFINED__
70
#define __IAudioClock_FWD_DEFINED__
71
typedef interface IAudioClock IAudioClock;
72
#endif         /* __IAudioClock_FWD_DEFINED__ */
73

    
74

    
75
#ifndef __ISimpleAudioVolume_FWD_DEFINED__
76
#define __ISimpleAudioVolume_FWD_DEFINED__
77
typedef interface ISimpleAudioVolume ISimpleAudioVolume;
78
#endif         /* __ISimpleAudioVolume_FWD_DEFINED__ */
79

    
80

    
81
#ifndef __IAudioStreamVolume_FWD_DEFINED__
82
#define __IAudioStreamVolume_FWD_DEFINED__
83
typedef interface IAudioStreamVolume IAudioStreamVolume;
84
#endif         /* __IAudioStreamVolume_FWD_DEFINED__ */
85

    
86

    
87
#ifndef __IChannelAudioVolume_FWD_DEFINED__
88
#define __IChannelAudioVolume_FWD_DEFINED__
89
typedef interface IChannelAudioVolume IChannelAudioVolume;
90
#endif         /* __IChannelAudioVolume_FWD_DEFINED__ */
91

    
92

    
93
/* header files for imported files */
94
#include "wtypes.h"
95
#include "unknwn.h"
96
#include "AudioSessionTypes.h"
97

    
98
#ifdef __cplusplus
99
extern "C"{
100
#endif 
101

    
102

    
103
/* interface __MIDL_itf_audioclient_0000_0000 */
104
/* [local] */ 
105

    
106
#if 0
107
typedef /* [hidden][restricted] */ struct WAVEFORMATEX
108
    {
109
    WORD wFormatTag;
110
    WORD nChannels;
111
    DWORD nSamplesPerSec;
112
    DWORD nAvgBytesPerSec;
113
    WORD nBlockAlign;
114
    WORD wBitsPerSample;
115
    WORD cbSize;
116
    }         WAVEFORMATEX;
117

118
#else
119
#include <mmreg.h>
120
#endif
121
#if 0
122
typedef /* [hidden][restricted] */ LONGLONG REFERENCE_TIME;
123

124
#else
125
#define _IKsControl_
126
#include <ks.h>
127
#include <ksmedia.h>
128
#endif
129

    
130
enum _AUDCLNT_BUFFERFLAGS
131
    {        AUDCLNT_BUFFERFLAGS_DATA_DISCONTINUITY        = 0x1,
132
        AUDCLNT_BUFFERFLAGS_SILENT        = 0x2,
133
        AUDCLNT_BUFFERFLAGS_TIMESTAMP_ERROR        = 0x4
134
    } ;
135

    
136

    
137
extern RPC_IF_HANDLE __MIDL_itf_audioclient_0000_0000_v0_0_c_ifspec;
138
extern RPC_IF_HANDLE __MIDL_itf_audioclient_0000_0000_v0_0_s_ifspec;
139

    
140
#ifndef __IAudioClient_INTERFACE_DEFINED__
141
#define __IAudioClient_INTERFACE_DEFINED__
142

    
143
/* interface IAudioClient */
144
/* [local][unique][uuid][object] */ 
145

    
146

    
147
EXTERN_C const IID IID_IAudioClient;
148

    
149
#if defined(__cplusplus) && !defined(CINTERFACE)
150
    
151
    MIDL_INTERFACE("1CB9AD4C-DBFA-4c32-B178-C2F568A703B2")
152
    IAudioClient : public IUnknown
153
    {
154
    public:
155
        virtual HRESULT STDMETHODCALLTYPE Initialize( 
156
            /* [in] */ 
157
            __in  AUDCLNT_SHAREMODE ShareMode,
158
            /* [in] */ 
159
            __in  DWORD StreamFlags,
160
            /* [in] */ 
161
            __in  REFERENCE_TIME hnsBufferDuration,
162
            /* [in] */ 
163
            __in  REFERENCE_TIME hnsPeriodicity,
164
            /* [in] */ 
165
            __in  const WAVEFORMATEX *pFormat,
166
            /* [in] */ 
167
            __in_opt  LPCGUID AudioSessionGuid) = 0;
168
        
169
        virtual HRESULT STDMETHODCALLTYPE GetBufferSize( 
170
            /* [out] */ 
171
            __out  UINT32 *pNumBufferFrames) = 0;
172
        
173
        virtual HRESULT STDMETHODCALLTYPE GetStreamLatency( 
174
            /* [out] */ 
175
            __out  REFERENCE_TIME *phnsLatency) = 0;
176
        
177
        virtual HRESULT STDMETHODCALLTYPE GetCurrentPadding( 
178
            /* [out] */ 
179
            __out  UINT32 *pNumPaddingFrames) = 0;
180
        
181
        virtual HRESULT STDMETHODCALLTYPE IsFormatSupported( 
182
            /* [in] */ 
183
            __in  AUDCLNT_SHAREMODE ShareMode,
184
            /* [in] */ 
185
            __in  const WAVEFORMATEX *pFormat,
186
            /* [unique][out] */ 
187
            __out_opt  WAVEFORMATEX **ppClosestMatch) = 0;
188
        
189
        virtual HRESULT STDMETHODCALLTYPE GetMixFormat( 
190
            /* [out] */ 
191
            __out  WAVEFORMATEX **ppDeviceFormat) = 0;
192
        
193
        virtual HRESULT STDMETHODCALLTYPE GetDevicePeriod( 
194
            /* [out] */ 
195
            __out_opt  REFERENCE_TIME *phnsDefaultDevicePeriod,
196
            /* [out] */ 
197
            __out_opt  REFERENCE_TIME *phnsMinimumDevicePeriod) = 0;
198
        
199
        virtual HRESULT STDMETHODCALLTYPE Start( void) = 0;
200
        
201
        virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0;
202
        
203
        virtual HRESULT STDMETHODCALLTYPE Reset( void) = 0;
204
        
205
        virtual HRESULT STDMETHODCALLTYPE SetEventHandle( 
206
            /* [in] */ HANDLE eventHandle) = 0;
207
        
208
        virtual HRESULT STDMETHODCALLTYPE GetService( 
209
            /* [in] */ 
210
            __in  REFIID riid,
211
            /* [iid_is][out] */ 
212
            __out  void **ppv) = 0;
213
        
214
    };
215
    
216
#else         /* C style interface */
217

    
218
    typedef struct IAudioClientVtbl
219
    {
220
        BEGIN_INTERFACE
221
        
222
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
223
            IAudioClient * This,
224
            /* [in] */ REFIID riid,
225
            /* [iid_is][out] */ 
226
            __RPC__deref_out  void **ppvObject);
227
        
228
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
229
            IAudioClient * This);
230
        
231
        ULONG ( STDMETHODCALLTYPE *Release )( 
232
            IAudioClient * This);
233
        
234
        HRESULT ( STDMETHODCALLTYPE *Initialize )( 
235
            IAudioClient * This,
236
            /* [in] */ 
237
            __in  AUDCLNT_SHAREMODE ShareMode,
238
            /* [in] */ 
239
            __in  DWORD StreamFlags,
240
            /* [in] */ 
241
            __in  REFERENCE_TIME hnsBufferDuration,
242
            /* [in] */ 
243
            __in  REFERENCE_TIME hnsPeriodicity,
244
            /* [in] */ 
245
            __in  const WAVEFORMATEX *pFormat,
246
            /* [in] */ 
247
            __in_opt  LPCGUID AudioSessionGuid);
248
        
249
        HRESULT ( STDMETHODCALLTYPE *GetBufferSize )( 
250
            IAudioClient * This,
251
            /* [out] */ 
252
            __out  UINT32 *pNumBufferFrames);
253
        
254
        HRESULT ( STDMETHODCALLTYPE *GetStreamLatency )( 
255
            IAudioClient * This,
256
            /* [out] */ 
257
            __out  REFERENCE_TIME *phnsLatency);
258
        
259
        HRESULT ( STDMETHODCALLTYPE *GetCurrentPadding )( 
260
            IAudioClient * This,
261
            /* [out] */ 
262
            __out  UINT32 *pNumPaddingFrames);
263
        
264
        HRESULT ( STDMETHODCALLTYPE *IsFormatSupported )( 
265
            IAudioClient * This,
266
            /* [in] */ 
267
            __in  AUDCLNT_SHAREMODE ShareMode,
268
            /* [in] */ 
269
            __in  const WAVEFORMATEX *pFormat,
270
            /* [unique][out] */ 
271
            __out_opt  WAVEFORMATEX **ppClosestMatch);
272
        
273
        HRESULT ( STDMETHODCALLTYPE *GetMixFormat )( 
274
            IAudioClient * This,
275
            /* [out] */ 
276
            __out  WAVEFORMATEX **ppDeviceFormat);
277
        
278
        HRESULT ( STDMETHODCALLTYPE *GetDevicePeriod )( 
279
            IAudioClient * This,
280
            /* [out] */ 
281
            __out_opt  REFERENCE_TIME *phnsDefaultDevicePeriod,
282
            /* [out] */ 
283
            __out_opt  REFERENCE_TIME *phnsMinimumDevicePeriod);
284
        
285
        HRESULT ( STDMETHODCALLTYPE *Start )( 
286
            IAudioClient * This);
287
        
288
        HRESULT ( STDMETHODCALLTYPE *Stop )( 
289
            IAudioClient * This);
290
        
291
        HRESULT ( STDMETHODCALLTYPE *Reset )( 
292
            IAudioClient * This);
293
        
294
        HRESULT ( STDMETHODCALLTYPE *SetEventHandle )( 
295
            IAudioClient * This,
296
            /* [in] */ HANDLE eventHandle);
297
        
298
        HRESULT ( STDMETHODCALLTYPE *GetService )( 
299
            IAudioClient * This,
300
            /* [in] */ 
301
            __in  REFIID riid,
302
            /* [iid_is][out] */ 
303
            __out  void **ppv);
304
        
305
        END_INTERFACE
306
    } IAudioClientVtbl;
307

    
308
    interface IAudioClient
309
    {
310
        CONST_VTBL struct IAudioClientVtbl *lpVtbl;
311
    };
312

    
313
    
314

    
315
#ifdef COBJMACROS
316

    
317

    
318
#define IAudioClient_QueryInterface(This,riid,ppvObject)        \
319
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
320

    
321
#define IAudioClient_AddRef(This)        \
322
    ( (This)->lpVtbl -> AddRef(This) ) 
323

    
324
#define IAudioClient_Release(This)        \
325
    ( (This)->lpVtbl -> Release(This) ) 
326

    
327

    
328
#define IAudioClient_Initialize(This,ShareMode,StreamFlags,hnsBufferDuration,hnsPeriodicity,pFormat,AudioSessionGuid)        \
329
    ( (This)->lpVtbl -> Initialize(This,ShareMode,StreamFlags,hnsBufferDuration,hnsPeriodicity,pFormat,AudioSessionGuid) ) 
330

    
331
#define IAudioClient_GetBufferSize(This,pNumBufferFrames)        \
332
    ( (This)->lpVtbl -> GetBufferSize(This,pNumBufferFrames) ) 
333

    
334
#define IAudioClient_GetStreamLatency(This,phnsLatency)        \
335
    ( (This)->lpVtbl -> GetStreamLatency(This,phnsLatency) ) 
336

    
337
#define IAudioClient_GetCurrentPadding(This,pNumPaddingFrames)        \
338
    ( (This)->lpVtbl -> GetCurrentPadding(This,pNumPaddingFrames) ) 
339

    
340
#define IAudioClient_IsFormatSupported(This,ShareMode,pFormat,ppClosestMatch)        \
341
    ( (This)->lpVtbl -> IsFormatSupported(This,ShareMode,pFormat,ppClosestMatch) ) 
342

    
343
#define IAudioClient_GetMixFormat(This,ppDeviceFormat)        \
344
    ( (This)->lpVtbl -> GetMixFormat(This,ppDeviceFormat) ) 
345

    
346
#define IAudioClient_GetDevicePeriod(This,phnsDefaultDevicePeriod,phnsMinimumDevicePeriod)        \
347
    ( (This)->lpVtbl -> GetDevicePeriod(This,phnsDefaultDevicePeriod,phnsMinimumDevicePeriod) ) 
348

    
349
#define IAudioClient_Start(This)        \
350
    ( (This)->lpVtbl -> Start(This) ) 
351

    
352
#define IAudioClient_Stop(This)        \
353
    ( (This)->lpVtbl -> Stop(This) ) 
354

    
355
#define IAudioClient_Reset(This)        \
356
    ( (This)->lpVtbl -> Reset(This) ) 
357

    
358
#define IAudioClient_SetEventHandle(This,eventHandle)        \
359
    ( (This)->lpVtbl -> SetEventHandle(This,eventHandle) ) 
360

    
361
#define IAudioClient_GetService(This,riid,ppv)        \
362
    ( (This)->lpVtbl -> GetService(This,riid,ppv) ) 
363

    
364
#endif /* COBJMACROS */
365

    
366

    
367
#endif         /* C style interface */
368

    
369

    
370

    
371

    
372
#endif         /* __IAudioClient_INTERFACE_DEFINED__ */
373

    
374

    
375
#ifndef __IAudioRenderClient_INTERFACE_DEFINED__
376
#define __IAudioRenderClient_INTERFACE_DEFINED__
377

    
378
/* interface IAudioRenderClient */
379
/* [local][unique][helpstring][uuid][object] */ 
380

    
381

    
382
EXTERN_C const IID IID_IAudioRenderClient;
383

    
384
#if defined(__cplusplus) && !defined(CINTERFACE)
385
    
386
    MIDL_INTERFACE("F294ACFC-3146-4483-A7BF-ADDCA7C260E2")
387
    IAudioRenderClient : public IUnknown
388
    {
389
    public:
390
        virtual HRESULT STDMETHODCALLTYPE GetBuffer( 
391
            /* [in] */ 
392
            __in  UINT32 NumFramesRequested,
393
            /* [out] */ 
394
            __out  BYTE **ppData) = 0;
395
        
396
        virtual HRESULT STDMETHODCALLTYPE ReleaseBuffer( 
397
            /* [in] */ 
398
            __in  UINT32 NumFramesWritten,
399
            /* [in] */ 
400
            __in  DWORD dwFlags) = 0;
401
        
402
    };
403
    
404
#else         /* C style interface */
405

    
406
    typedef struct IAudioRenderClientVtbl
407
    {
408
        BEGIN_INTERFACE
409
        
410
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
411
            IAudioRenderClient * This,
412
            /* [in] */ REFIID riid,
413
            /* [iid_is][out] */ 
414
            __RPC__deref_out  void **ppvObject);
415
        
416
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
417
            IAudioRenderClient * This);
418
        
419
        ULONG ( STDMETHODCALLTYPE *Release )( 
420
            IAudioRenderClient * This);
421
        
422
        HRESULT ( STDMETHODCALLTYPE *GetBuffer )( 
423
            IAudioRenderClient * This,
424
            /* [in] */ 
425
            __in  UINT32 NumFramesRequested,
426
            /* [out] */ 
427
            __out  BYTE **ppData);
428
        
429
        HRESULT ( STDMETHODCALLTYPE *ReleaseBuffer )( 
430
            IAudioRenderClient * This,
431
            /* [in] */ 
432
            __in  UINT32 NumFramesWritten,
433
            /* [in] */ 
434
            __in  DWORD dwFlags);
435
        
436
        END_INTERFACE
437
    } IAudioRenderClientVtbl;
438

    
439
    interface IAudioRenderClient
440
    {
441
        CONST_VTBL struct IAudioRenderClientVtbl *lpVtbl;
442
    };
443

    
444
    
445

    
446
#ifdef COBJMACROS
447

    
448

    
449
#define IAudioRenderClient_QueryInterface(This,riid,ppvObject)        \
450
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
451

    
452
#define IAudioRenderClient_AddRef(This)        \
453
    ( (This)->lpVtbl -> AddRef(This) ) 
454

    
455
#define IAudioRenderClient_Release(This)        \
456
    ( (This)->lpVtbl -> Release(This) ) 
457

    
458

    
459
#define IAudioRenderClient_GetBuffer(This,NumFramesRequested,ppData)        \
460
    ( (This)->lpVtbl -> GetBuffer(This,NumFramesRequested,ppData) ) 
461

    
462
#define IAudioRenderClient_ReleaseBuffer(This,NumFramesWritten,dwFlags)        \
463
    ( (This)->lpVtbl -> ReleaseBuffer(This,NumFramesWritten,dwFlags) ) 
464

    
465
#endif /* COBJMACROS */
466

    
467

    
468
#endif         /* C style interface */
469

    
470

    
471

    
472

    
473
#endif         /* __IAudioRenderClient_INTERFACE_DEFINED__ */
474

    
475

    
476
#ifndef __IAudioCaptureClient_INTERFACE_DEFINED__
477
#define __IAudioCaptureClient_INTERFACE_DEFINED__
478

    
479
/* interface IAudioCaptureClient */
480
/* [local][unique][helpstring][uuid][object] */ 
481

    
482

    
483
EXTERN_C const IID IID_IAudioCaptureClient;
484

    
485
#if defined(__cplusplus) && !defined(CINTERFACE)
486
    
487
    MIDL_INTERFACE("C8ADBD64-E71E-48a0-A4DE-185C395CD317")
488
    IAudioCaptureClient : public IUnknown
489
    {
490
    public:
491
        virtual HRESULT STDMETHODCALLTYPE GetBuffer( 
492
            /* [out] */ 
493
            __out  BYTE **ppData,
494
            /* [out] */ 
495
            __out  UINT32 *pNumFramesToRead,
496
            /* [out] */ 
497
            __out  DWORD *pdwFlags,
498
            /* [unique][out] */ 
499
            __out_opt  UINT64 *pu64DevicePosition,
500
            /* [unique][out] */ 
501
            __out_opt  UINT64 *pu64QPCPosition) = 0;
502
        
503
        virtual HRESULT STDMETHODCALLTYPE ReleaseBuffer( 
504
            /* [in] */ 
505
            __in  UINT32 NumFramesRead) = 0;
506
        
507
        virtual HRESULT STDMETHODCALLTYPE GetNextPacketSize( 
508
            /* [out] */ 
509
            __out  UINT32 *pNumFramesInNextPacket) = 0;
510
        
511
    };
512
    
513
#else         /* C style interface */
514

    
515
    typedef struct IAudioCaptureClientVtbl
516
    {
517
        BEGIN_INTERFACE
518
        
519
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
520
            IAudioCaptureClient * This,
521
            /* [in] */ REFIID riid,
522
            /* [iid_is][out] */ 
523
            __RPC__deref_out  void **ppvObject);
524
        
525
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
526
            IAudioCaptureClient * This);
527
        
528
        ULONG ( STDMETHODCALLTYPE *Release )( 
529
            IAudioCaptureClient * This);
530
        
531
        HRESULT ( STDMETHODCALLTYPE *GetBuffer )( 
532
            IAudioCaptureClient * This,
533
            /* [out] */ 
534
            __out  BYTE **ppData,
535
            /* [out] */ 
536
            __out  UINT32 *pNumFramesToRead,
537
            /* [out] */ 
538
            __out  DWORD *pdwFlags,
539
            /* [unique][out] */ 
540
            __out_opt  UINT64 *pu64DevicePosition,
541
            /* [unique][out] */ 
542
            __out_opt  UINT64 *pu64QPCPosition);
543
        
544
        HRESULT ( STDMETHODCALLTYPE *ReleaseBuffer )( 
545
            IAudioCaptureClient * This,
546
            /* [in] */ 
547
            __in  UINT32 NumFramesRead);
548
        
549
        HRESULT ( STDMETHODCALLTYPE *GetNextPacketSize )( 
550
            IAudioCaptureClient * This,
551
            /* [out] */ 
552
            __out  UINT32 *pNumFramesInNextPacket);
553
        
554
        END_INTERFACE
555
    } IAudioCaptureClientVtbl;
556

    
557
    interface IAudioCaptureClient
558
    {
559
        CONST_VTBL struct IAudioCaptureClientVtbl *lpVtbl;
560
    };
561

    
562
    
563

    
564
#ifdef COBJMACROS
565

    
566

    
567
#define IAudioCaptureClient_QueryInterface(This,riid,ppvObject)        \
568
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
569

    
570
#define IAudioCaptureClient_AddRef(This)        \
571
    ( (This)->lpVtbl -> AddRef(This) ) 
572

    
573
#define IAudioCaptureClient_Release(This)        \
574
    ( (This)->lpVtbl -> Release(This) ) 
575

    
576

    
577
#define IAudioCaptureClient_GetBuffer(This,ppData,pNumFramesToRead,pdwFlags,pu64DevicePosition,pu64QPCPosition)        \
578
    ( (This)->lpVtbl -> GetBuffer(This,ppData,pNumFramesToRead,pdwFlags,pu64DevicePosition,pu64QPCPosition) ) 
579

    
580
#define IAudioCaptureClient_ReleaseBuffer(This,NumFramesRead)        \
581
    ( (This)->lpVtbl -> ReleaseBuffer(This,NumFramesRead) ) 
582

    
583
#define IAudioCaptureClient_GetNextPacketSize(This,pNumFramesInNextPacket)        \
584
    ( (This)->lpVtbl -> GetNextPacketSize(This,pNumFramesInNextPacket) ) 
585

    
586
#endif /* COBJMACROS */
587

    
588

    
589
#endif         /* C style interface */
590

    
591

    
592

    
593

    
594
#endif         /* __IAudioCaptureClient_INTERFACE_DEFINED__ */
595

    
596

    
597
/* interface __MIDL_itf_audioclient_0000_0003 */
598
/* [local] */ 
599

    
600
#define AUDIOCLOCK_CHARACTERISTIC_FIXED_FREQ  0x00000001
601

    
602

    
603
extern RPC_IF_HANDLE __MIDL_itf_audioclient_0000_0003_v0_0_c_ifspec;
604
extern RPC_IF_HANDLE __MIDL_itf_audioclient_0000_0003_v0_0_s_ifspec;
605

    
606
#ifndef __IAudioClock_INTERFACE_DEFINED__
607
#define __IAudioClock_INTERFACE_DEFINED__
608

    
609
/* interface IAudioClock */
610
/* [local][unique][uuid][object] */ 
611

    
612

    
613
EXTERN_C const IID IID_IAudioClock;
614

    
615
#if defined(__cplusplus) && !defined(CINTERFACE)
616
    
617
    MIDL_INTERFACE("CD63314F-3FBA-4a1b-812C-EF96358728E7")
618
    IAudioClock : public IUnknown
619
    {
620
    public:
621
        virtual HRESULT STDMETHODCALLTYPE GetFrequency( 
622
            /* [out] */ 
623
            __out  UINT64 *pu64Frequency) = 0;
624
        
625
        virtual HRESULT STDMETHODCALLTYPE GetPosition( 
626
            /* [out] */ 
627
            __out  UINT64 *pu64Position,
628
            /* [unique][out] */ 
629
            __out_opt  UINT64 *pu64QPCPosition) = 0;
630
        
631
        virtual HRESULT STDMETHODCALLTYPE GetCharacteristics( 
632
            /* [out] */ 
633
            __out  DWORD *pdwCharacteristics) = 0;
634
        
635
    };
636
    
637
#else         /* C style interface */
638

    
639
    typedef struct IAudioClockVtbl
640
    {
641
        BEGIN_INTERFACE
642
        
643
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
644
            IAudioClock * This,
645
            /* [in] */ REFIID riid,
646
            /* [iid_is][out] */ 
647
            __RPC__deref_out  void **ppvObject);
648
        
649
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
650
            IAudioClock * This);
651
        
652
        ULONG ( STDMETHODCALLTYPE *Release )( 
653
            IAudioClock * This);
654
        
655
        HRESULT ( STDMETHODCALLTYPE *GetFrequency )( 
656
            IAudioClock * This,
657
            /* [out] */ 
658
            __out  UINT64 *pu64Frequency);
659
        
660
        HRESULT ( STDMETHODCALLTYPE *GetPosition )( 
661
            IAudioClock * This,
662
            /* [out] */ 
663
            __out  UINT64 *pu64Position,
664
            /* [unique][out] */ 
665
            __out_opt  UINT64 *pu64QPCPosition);
666
        
667
        HRESULT ( STDMETHODCALLTYPE *GetCharacteristics )( 
668
            IAudioClock * This,
669
            /* [out] */ 
670
            __out  DWORD *pdwCharacteristics);
671
        
672
        END_INTERFACE
673
    } IAudioClockVtbl;
674

    
675
    interface IAudioClock
676
    {
677
        CONST_VTBL struct IAudioClockVtbl *lpVtbl;
678
    };
679

    
680
    
681

    
682
#ifdef COBJMACROS
683

    
684

    
685
#define IAudioClock_QueryInterface(This,riid,ppvObject)        \
686
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
687

    
688
#define IAudioClock_AddRef(This)        \
689
    ( (This)->lpVtbl -> AddRef(This) ) 
690

    
691
#define IAudioClock_Release(This)        \
692
    ( (This)->lpVtbl -> Release(This) ) 
693

    
694

    
695
#define IAudioClock_GetFrequency(This,pu64Frequency)        \
696
    ( (This)->lpVtbl -> GetFrequency(This,pu64Frequency) ) 
697

    
698
#define IAudioClock_GetPosition(This,pu64Position,pu64QPCPosition)        \
699
    ( (This)->lpVtbl -> GetPosition(This,pu64Position,pu64QPCPosition) ) 
700

    
701
#define IAudioClock_GetCharacteristics(This,pdwCharacteristics)        \
702
    ( (This)->lpVtbl -> GetCharacteristics(This,pdwCharacteristics) ) 
703

    
704
#endif /* COBJMACROS */
705

    
706

    
707
#endif         /* C style interface */
708

    
709

    
710

    
711

    
712
#endif         /* __IAudioClock_INTERFACE_DEFINED__ */
713

    
714

    
715
#ifndef __ISimpleAudioVolume_INTERFACE_DEFINED__
716
#define __ISimpleAudioVolume_INTERFACE_DEFINED__
717

    
718
/* interface ISimpleAudioVolume */
719
/* [local][unique][uuid][object] */ 
720

    
721

    
722
EXTERN_C const IID IID_ISimpleAudioVolume;
723

    
724
#if defined(__cplusplus) && !defined(CINTERFACE)
725
    
726
    MIDL_INTERFACE("87CE5498-68D6-44E5-9215-6DA47EF883D8")
727
    ISimpleAudioVolume : public IUnknown
728
    {
729
    public:
730
        virtual HRESULT STDMETHODCALLTYPE SetMasterVolume( 
731
            /* [in] */ 
732
            __in  float fLevel,
733
            /* [unique][in] */ LPCGUID EventContext) = 0;
734
        
735
        virtual HRESULT STDMETHODCALLTYPE GetMasterVolume( 
736
            /* [out] */ 
737
            __out  float *pfLevel) = 0;
738
        
739
        virtual HRESULT STDMETHODCALLTYPE SetMute( 
740
            /* [in] */ 
741
            __in  const BOOL bMute,
742
            /* [unique][in] */ LPCGUID EventContext) = 0;
743
        
744
        virtual HRESULT STDMETHODCALLTYPE GetMute( 
745
            /* [out] */ 
746
            __out  BOOL *pbMute) = 0;
747
        
748
    };
749
    
750
#else         /* C style interface */
751

    
752
    typedef struct ISimpleAudioVolumeVtbl
753
    {
754
        BEGIN_INTERFACE
755
        
756
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
757
            ISimpleAudioVolume * This,
758
            /* [in] */ REFIID riid,
759
            /* [iid_is][out] */ 
760
            __RPC__deref_out  void **ppvObject);
761
        
762
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
763
            ISimpleAudioVolume * This);
764
        
765
        ULONG ( STDMETHODCALLTYPE *Release )( 
766
            ISimpleAudioVolume * This);
767
        
768
        HRESULT ( STDMETHODCALLTYPE *SetMasterVolume )( 
769
            ISimpleAudioVolume * This,
770
            /* [in] */ 
771
            __in  float fLevel,
772
            /* [unique][in] */ LPCGUID EventContext);
773
        
774
        HRESULT ( STDMETHODCALLTYPE *GetMasterVolume )( 
775
            ISimpleAudioVolume * This,
776
            /* [out] */ 
777
            __out  float *pfLevel);
778
        
779
        HRESULT ( STDMETHODCALLTYPE *SetMute )( 
780
            ISimpleAudioVolume * This,
781
            /* [in] */ 
782
            __in  const BOOL bMute,
783
            /* [unique][in] */ LPCGUID EventContext);
784
        
785
        HRESULT ( STDMETHODCALLTYPE *GetMute )( 
786
            ISimpleAudioVolume * This,
787
            /* [out] */ 
788
            __out  BOOL *pbMute);
789
        
790
        END_INTERFACE
791
    } ISimpleAudioVolumeVtbl;
792

    
793
    interface ISimpleAudioVolume
794
    {
795
        CONST_VTBL struct ISimpleAudioVolumeVtbl *lpVtbl;
796
    };
797

    
798
    
799

    
800
#ifdef COBJMACROS
801

    
802

    
803
#define ISimpleAudioVolume_QueryInterface(This,riid,ppvObject)        \
804
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
805

    
806
#define ISimpleAudioVolume_AddRef(This)        \
807
    ( (This)->lpVtbl -> AddRef(This) ) 
808

    
809
#define ISimpleAudioVolume_Release(This)        \
810
    ( (This)->lpVtbl -> Release(This) ) 
811

    
812

    
813
#define ISimpleAudioVolume_SetMasterVolume(This,fLevel,EventContext)        \
814
    ( (This)->lpVtbl -> SetMasterVolume(This,fLevel,EventContext) ) 
815

    
816
#define ISimpleAudioVolume_GetMasterVolume(This,pfLevel)        \
817
    ( (This)->lpVtbl -> GetMasterVolume(This,pfLevel) ) 
818

    
819
#define ISimpleAudioVolume_SetMute(This,bMute,EventContext)        \
820
    ( (This)->lpVtbl -> SetMute(This,bMute,EventContext) ) 
821

    
822
#define ISimpleAudioVolume_GetMute(This,pbMute)        \
823
    ( (This)->lpVtbl -> GetMute(This,pbMute) ) 
824

    
825
#endif /* COBJMACROS */
826

    
827

    
828
#endif         /* C style interface */
829

    
830

    
831

    
832

    
833
#endif         /* __ISimpleAudioVolume_INTERFACE_DEFINED__ */
834

    
835

    
836
#ifndef __IAudioStreamVolume_INTERFACE_DEFINED__
837
#define __IAudioStreamVolume_INTERFACE_DEFINED__
838

    
839
/* interface IAudioStreamVolume */
840
/* [local][unique][uuid][object] */ 
841

    
842

    
843
EXTERN_C const IID IID_IAudioStreamVolume;
844

    
845
#if defined(__cplusplus) && !defined(CINTERFACE)
846
    
847
    MIDL_INTERFACE("93014887-242D-4068-8A15-CF5E93B90FE3")
848
    IAudioStreamVolume : public IUnknown
849
    {
850
    public:
851
        virtual HRESULT STDMETHODCALLTYPE GetChannelCount( 
852
            /* [out] */ 
853
            __out  UINT32 *pdwCount) = 0;
854
        
855
        virtual HRESULT STDMETHODCALLTYPE SetChannelVolume( 
856
            /* [in] */ 
857
            __in  UINT32 dwIndex,
858
            /* [in] */ 
859
            __in  const float fLevel) = 0;
860
        
861
        virtual HRESULT STDMETHODCALLTYPE GetChannelVolume( 
862
            /* [in] */ 
863
            __in  UINT32 dwIndex,
864
            /* [out] */ 
865
            __out  float *pfLevel) = 0;
866
        
867
        virtual HRESULT STDMETHODCALLTYPE SetAllVolumes( 
868
            /* [in] */ 
869
            __in  UINT32 dwCount,
870
            /* [size_is][in] */ 
871
            __in_ecount(dwCount)  const float *pfVolumes) = 0;
872
        
873
        virtual HRESULT STDMETHODCALLTYPE GetAllVolumes( 
874
            /* [in] */ 
875
            __in  UINT32 dwCount,
876
            /* [size_is][out] */ 
877
            __out_ecount(dwCount)  float *pfVolumes) = 0;
878
        
879
    };
880
    
881
#else         /* C style interface */
882

    
883
    typedef struct IAudioStreamVolumeVtbl
884
    {
885
        BEGIN_INTERFACE
886
        
887
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
888
            IAudioStreamVolume * This,
889
            /* [in] */ REFIID riid,
890
            /* [iid_is][out] */ 
891
            __RPC__deref_out  void **ppvObject);
892
        
893
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
894
            IAudioStreamVolume * This);
895
        
896
        ULONG ( STDMETHODCALLTYPE *Release )( 
897
            IAudioStreamVolume * This);
898
        
899
        HRESULT ( STDMETHODCALLTYPE *GetChannelCount )( 
900
            IAudioStreamVolume * This,
901
            /* [out] */ 
902
            __out  UINT32 *pdwCount);
903
        
904
        HRESULT ( STDMETHODCALLTYPE *SetChannelVolume )( 
905
            IAudioStreamVolume * This,
906
            /* [in] */ 
907
            __in  UINT32 dwIndex,
908
            /* [in] */ 
909
            __in  const float fLevel);
910
        
911
        HRESULT ( STDMETHODCALLTYPE *GetChannelVolume )( 
912
            IAudioStreamVolume * This,
913
            /* [in] */ 
914
            __in  UINT32 dwIndex,
915
            /* [out] */ 
916
            __out  float *pfLevel);
917
        
918
        HRESULT ( STDMETHODCALLTYPE *SetAllVolumes )( 
919
            IAudioStreamVolume * This,
920
            /* [in] */ 
921
            __in  UINT32 dwCount,
922
            /* [size_is][in] */ 
923
            __in_ecount(dwCount)  const float *pfVolumes);
924
        
925
        HRESULT ( STDMETHODCALLTYPE *GetAllVolumes )( 
926
            IAudioStreamVolume * This,
927
            /* [in] */ 
928
            __in  UINT32 dwCount,
929
            /* [size_is][out] */ 
930
            __out_ecount(dwCount)  float *pfVolumes);
931
        
932
        END_INTERFACE
933
    } IAudioStreamVolumeVtbl;
934

    
935
    interface IAudioStreamVolume
936
    {
937
        CONST_VTBL struct IAudioStreamVolumeVtbl *lpVtbl;
938
    };
939

    
940
    
941

    
942
#ifdef COBJMACROS
943

    
944

    
945
#define IAudioStreamVolume_QueryInterface(This,riid,ppvObject)        \
946
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
947

    
948
#define IAudioStreamVolume_AddRef(This)        \
949
    ( (This)->lpVtbl -> AddRef(This) ) 
950

    
951
#define IAudioStreamVolume_Release(This)        \
952
    ( (This)->lpVtbl -> Release(This) ) 
953

    
954

    
955
#define IAudioStreamVolume_GetChannelCount(This,pdwCount)        \
956
    ( (This)->lpVtbl -> GetChannelCount(This,pdwCount) ) 
957

    
958
#define IAudioStreamVolume_SetChannelVolume(This,dwIndex,fLevel)        \
959
    ( (This)->lpVtbl -> SetChannelVolume(This,dwIndex,fLevel) ) 
960

    
961
#define IAudioStreamVolume_GetChannelVolume(This,dwIndex,pfLevel)        \
962
    ( (This)->lpVtbl -> GetChannelVolume(This,dwIndex,pfLevel) ) 
963

    
964
#define IAudioStreamVolume_SetAllVolumes(This,dwCount,pfVolumes)        \
965
    ( (This)->lpVtbl -> SetAllVolumes(This,dwCount,pfVolumes) ) 
966

    
967
#define IAudioStreamVolume_GetAllVolumes(This,dwCount,pfVolumes)        \
968
    ( (This)->lpVtbl -> GetAllVolumes(This,dwCount,pfVolumes) ) 
969

    
970
#endif /* COBJMACROS */
971

    
972

    
973
#endif         /* C style interface */
974

    
975

    
976

    
977

    
978
#endif         /* __IAudioStreamVolume_INTERFACE_DEFINED__ */
979

    
980

    
981
#ifndef __IChannelAudioVolume_INTERFACE_DEFINED__
982
#define __IChannelAudioVolume_INTERFACE_DEFINED__
983

    
984
/* interface IChannelAudioVolume */
985
/* [local][unique][uuid][object] */ 
986

    
987

    
988
EXTERN_C const IID IID_IChannelAudioVolume;
989

    
990
#if defined(__cplusplus) && !defined(CINTERFACE)
991
    
992
    MIDL_INTERFACE("1C158861-B533-4B30-B1CF-E853E51C59B8")
993
    IChannelAudioVolume : public IUnknown
994
    {
995
    public:
996
        virtual HRESULT STDMETHODCALLTYPE GetChannelCount( 
997
            /* [out] */ 
998
            __out  UINT32 *pdwCount) = 0;
999
        
1000
        virtual HRESULT STDMETHODCALLTYPE SetChannelVolume( 
1001
            /* [in] */ 
1002
            __in  UINT32 dwIndex,
1003
            /* [in] */ 
1004
            __in  const float fLevel,
1005
            /* [unique][in] */ LPCGUID EventContext) = 0;
1006
        
1007
        virtual HRESULT STDMETHODCALLTYPE GetChannelVolume( 
1008
            /* [in] */ 
1009
            __in  UINT32 dwIndex,
1010
            /* [out] */ 
1011
            __out  float *pfLevel) = 0;
1012
        
1013
        virtual HRESULT STDMETHODCALLTYPE SetAllVolumes( 
1014
            /* [in] */ 
1015
            __in  UINT32 dwCount,
1016
            /* [size_is][in] */ 
1017
            __in_ecount(dwCount)  const float *pfVolumes,
1018
            /* [unique][in] */ LPCGUID EventContext) = 0;
1019
        
1020
        virtual HRESULT STDMETHODCALLTYPE GetAllVolumes( 
1021
            /* [in] */ 
1022
            __in  UINT32 dwCount,
1023
            /* [size_is][out] */ 
1024
            __out_ecount(dwCount)  float *pfVolumes) = 0;
1025
        
1026
    };
1027
    
1028
#else         /* C style interface */
1029

    
1030
    typedef struct IChannelAudioVolumeVtbl
1031
    {
1032
        BEGIN_INTERFACE
1033
        
1034
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
1035
            IChannelAudioVolume * This,
1036
            /* [in] */ REFIID riid,
1037
            /* [iid_is][out] */ 
1038
            __RPC__deref_out  void **ppvObject);
1039
        
1040
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
1041
            IChannelAudioVolume * This);
1042
        
1043
        ULONG ( STDMETHODCALLTYPE *Release )( 
1044
            IChannelAudioVolume * This);
1045
        
1046
        HRESULT ( STDMETHODCALLTYPE *GetChannelCount )( 
1047
            IChannelAudioVolume * This,
1048
            /* [out] */ 
1049
            __out  UINT32 *pdwCount);
1050
        
1051
        HRESULT ( STDMETHODCALLTYPE *SetChannelVolume )( 
1052
            IChannelAudioVolume * This,
1053
            /* [in] */ 
1054
            __in  UINT32 dwIndex,
1055
            /* [in] */ 
1056
            __in  const float fLevel,
1057
            /* [unique][in] */ LPCGUID EventContext);
1058
        
1059
        HRESULT ( STDMETHODCALLTYPE *GetChannelVolume )( 
1060
            IChannelAudioVolume * This,
1061
            /* [in] */ 
1062
            __in  UINT32 dwIndex,
1063
            /* [out] */ 
1064
            __out  float *pfLevel);
1065
        
1066
        HRESULT ( STDMETHODCALLTYPE *SetAllVolumes )( 
1067
            IChannelAudioVolume * This,
1068
            /* [in] */ 
1069
            __in  UINT32 dwCount,
1070
            /* [size_is][in] */ 
1071
            __in_ecount(dwCount)  const float *pfVolumes,
1072
            /* [unique][in] */ LPCGUID EventContext);
1073
        
1074
        HRESULT ( STDMETHODCALLTYPE *GetAllVolumes )( 
1075
            IChannelAudioVolume * This,
1076
            /* [in] */ 
1077
            __in  UINT32 dwCount,
1078
            /* [size_is][out] */ 
1079
            __out_ecount(dwCount)  float *pfVolumes);
1080
        
1081
        END_INTERFACE
1082
    } IChannelAudioVolumeVtbl;
1083

    
1084
    interface IChannelAudioVolume
1085
    {
1086
        CONST_VTBL struct IChannelAudioVolumeVtbl *lpVtbl;
1087
    };
1088

    
1089
    
1090

    
1091
#ifdef COBJMACROS
1092

    
1093

    
1094
#define IChannelAudioVolume_QueryInterface(This,riid,ppvObject)        \
1095
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
1096

    
1097
#define IChannelAudioVolume_AddRef(This)        \
1098
    ( (This)->lpVtbl -> AddRef(This) ) 
1099

    
1100
#define IChannelAudioVolume_Release(This)        \
1101
    ( (This)->lpVtbl -> Release(This) ) 
1102

    
1103

    
1104
#define IChannelAudioVolume_GetChannelCount(This,pdwCount)        \
1105
    ( (This)->lpVtbl -> GetChannelCount(This,pdwCount) ) 
1106

    
1107
#define IChannelAudioVolume_SetChannelVolume(This,dwIndex,fLevel,EventContext)        \
1108
    ( (This)->lpVtbl -> SetChannelVolume(This,dwIndex,fLevel,EventContext) ) 
1109

    
1110
#define IChannelAudioVolume_GetChannelVolume(This,dwIndex,pfLevel)        \
1111
    ( (This)->lpVtbl -> GetChannelVolume(This,dwIndex,pfLevel) ) 
1112

    
1113
#define IChannelAudioVolume_SetAllVolumes(This,dwCount,pfVolumes,EventContext)        \
1114
    ( (This)->lpVtbl -> SetAllVolumes(This,dwCount,pfVolumes,EventContext) ) 
1115

    
1116
#define IChannelAudioVolume_GetAllVolumes(This,dwCount,pfVolumes)        \
1117
    ( (This)->lpVtbl -> GetAllVolumes(This,dwCount,pfVolumes) ) 
1118

    
1119
#endif /* COBJMACROS */
1120

    
1121

    
1122
#endif         /* C style interface */
1123

    
1124

    
1125

    
1126

    
1127
#endif         /* __IChannelAudioVolume_INTERFACE_DEFINED__ */
1128

    
1129

    
1130
/* interface __MIDL_itf_audioclient_0000_0007 */
1131
/* [local] */ 
1132

    
1133
#define FACILITY_AUDCLNT 0x889
1134
#define AUDCLNT_ERR(n) MAKE_HRESULT(SEVERITY_ERROR, FACILITY_AUDCLNT, n)
1135
#define AUDCLNT_SUCCESS(n) MAKE_SCODE(SEVERITY_SUCCESS, FACILITY_AUDCLNT, n)
1136
#define AUDCLNT_E_NOT_INITIALIZED            AUDCLNT_ERR(0x001)
1137
#define AUDCLNT_E_ALREADY_INITIALIZED        AUDCLNT_ERR(0x002)
1138
#define AUDCLNT_E_WRONG_ENDPOINT_TYPE        AUDCLNT_ERR(0x003)
1139
#define AUDCLNT_E_DEVICE_INVALIDATED         AUDCLNT_ERR(0x004)
1140
#define AUDCLNT_E_NOT_STOPPED                AUDCLNT_ERR(0x005)
1141
#define AUDCLNT_E_BUFFER_TOO_LARGE           AUDCLNT_ERR(0x006)
1142
#define AUDCLNT_E_OUT_OF_ORDER               AUDCLNT_ERR(0x007)
1143
#define AUDCLNT_E_UNSUPPORTED_FORMAT         AUDCLNT_ERR(0x008)
1144
#define AUDCLNT_E_INVALID_SIZE               AUDCLNT_ERR(0x009)
1145
#define AUDCLNT_E_DEVICE_IN_USE              AUDCLNT_ERR(0x00a)
1146
#define AUDCLNT_E_BUFFER_OPERATION_PENDING   AUDCLNT_ERR(0x00b)
1147
#define AUDCLNT_E_THREAD_NOT_REGISTERED      AUDCLNT_ERR(0x00c)
1148
#define AUDCLNT_E_EXCLUSIVE_MODE_NOT_ALLOWED AUDCLNT_ERR(0x00e)
1149
#define AUDCLNT_E_ENDPOINT_CREATE_FAILED     AUDCLNT_ERR(0x00f)
1150
#define AUDCLNT_E_SERVICE_NOT_RUNNING        AUDCLNT_ERR(0x010)
1151
#define AUDCLNT_E_EVENTHANDLE_NOT_EXPECTED     AUDCLNT_ERR(0x011)
1152
#define AUDCLNT_E_EXCLUSIVE_MODE_ONLY          AUDCLNT_ERR(0x012)
1153
#define AUDCLNT_E_BUFDURATION_PERIOD_NOT_EQUAL AUDCLNT_ERR(0x013)
1154
#define AUDCLNT_E_EVENTHANDLE_NOT_SET          AUDCLNT_ERR(0x014)
1155
#define AUDCLNT_E_INCORRECT_BUFFER_SIZE        AUDCLNT_ERR(0x015)
1156
#define AUDCLNT_E_BUFFER_SIZE_ERROR            AUDCLNT_ERR(0x016)
1157
#define AUDCLNT_E_CPUUSAGE_EXCEEDED            AUDCLNT_ERR(0x017)
1158
#define AUDCLNT_S_BUFFER_EMPTY              AUDCLNT_SUCCESS(0x001)
1159
#define AUDCLNT_S_THREAD_ALREADY_REGISTERED AUDCLNT_SUCCESS(0x002)
1160
#define AUDCLNT_S_POSITION_STALLED                   AUDCLNT_SUCCESS(0x003)
1161

    
1162

    
1163
extern RPC_IF_HANDLE __MIDL_itf_audioclient_0000_0007_v0_0_c_ifspec;
1164
extern RPC_IF_HANDLE __MIDL_itf_audioclient_0000_0007_v0_0_s_ifspec;
1165

    
1166
/* Additional Prototypes for ALL interfaces */
1167

    
1168
/* end of Additional Prototypes */
1169

    
1170
#ifdef __cplusplus
1171
}
1172
#endif
1173

    
1174
#endif
1175

    
1176

    
1177