ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/spatialaudioclient.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 39846 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /*** Autogenerated by WIDL 6.4 from include/spatialaudioclient.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 __spatialaudioclient_h__
17 #define __spatialaudioclient_h__
18
19 /* Forward declarations */
20
21 #ifndef __ISpatialAudioObjectRenderStreamNotify_FWD_DEFINED__
22 #define __ISpatialAudioObjectRenderStreamNotify_FWD_DEFINED__
23 typedef interface ISpatialAudioObjectRenderStreamNotify ISpatialAudioObjectRenderStreamNotify;
24 #ifdef __cplusplus
25 interface ISpatialAudioObjectRenderStreamNotify;
26 #endif /* __cplusplus */
27 #endif
28
29 #ifndef __IAudioFormatEnumerator_FWD_DEFINED__
30 #define __IAudioFormatEnumerator_FWD_DEFINED__
31 typedef interface IAudioFormatEnumerator IAudioFormatEnumerator;
32 #ifdef __cplusplus
33 interface IAudioFormatEnumerator;
34 #endif /* __cplusplus */
35 #endif
36
37 #ifndef __ISpatialAudioClient_FWD_DEFINED__
38 #define __ISpatialAudioClient_FWD_DEFINED__
39 typedef interface ISpatialAudioClient ISpatialAudioClient;
40 #ifdef __cplusplus
41 interface ISpatialAudioClient;
42 #endif /* __cplusplus */
43 #endif
44
45 #ifndef __ISpatialAudioObjectBase_FWD_DEFINED__
46 #define __ISpatialAudioObjectBase_FWD_DEFINED__
47 typedef interface ISpatialAudioObjectBase ISpatialAudioObjectBase;
48 #ifdef __cplusplus
49 interface ISpatialAudioObjectBase;
50 #endif /* __cplusplus */
51 #endif
52
53 #ifndef __ISpatialAudioObject_FWD_DEFINED__
54 #define __ISpatialAudioObject_FWD_DEFINED__
55 typedef interface ISpatialAudioObject ISpatialAudioObject;
56 #ifdef __cplusplus
57 interface ISpatialAudioObject;
58 #endif /* __cplusplus */
59 #endif
60
61 #ifndef __ISpatialAudioObjectRenderStreamBase_FWD_DEFINED__
62 #define __ISpatialAudioObjectRenderStreamBase_FWD_DEFINED__
63 typedef interface ISpatialAudioObjectRenderStreamBase ISpatialAudioObjectRenderStreamBase;
64 #ifdef __cplusplus
65 interface ISpatialAudioObjectRenderStreamBase;
66 #endif /* __cplusplus */
67 #endif
68
69 #ifndef __ISpatialAudioObjectRenderStream_FWD_DEFINED__
70 #define __ISpatialAudioObjectRenderStream_FWD_DEFINED__
71 typedef interface ISpatialAudioObjectRenderStream ISpatialAudioObjectRenderStream;
72 #ifdef __cplusplus
73 interface ISpatialAudioObjectRenderStream;
74 #endif /* __cplusplus */
75 #endif
76
77 /* Headers for imported files */
78
79 #include <unknwn.h>
80 #include <audioclient.h>
81 #include <propsys.h>
82
83 #ifdef __cplusplus
84 extern "C" {
85 #endif
86
87 typedef enum AudioObjectType {
88 AudioObjectType_None = 0,
89 AudioObjectType_Dynamic = 0x1,
90 AudioObjectType_FrontLeft = 0x2,
91 AudioObjectType_FrontRight = 0x4,
92 AudioObjectType_FrontCenter = 0x8,
93 AudioObjectType_LowFrequency = 0x10,
94 AudioObjectType_SideLeft = 0x20,
95 AudioObjectType_SideRight = 0x40,
96 AudioObjectType_BackLeft = 0x80,
97 AudioObjectType_BackRight = 0x100,
98 AudioObjectType_TopFrontLeft = 0x200,
99 AudioObjectType_TopFrontRight = 0x400,
100 AudioObjectType_TopBackLeft = 0x800,
101 AudioObjectType_TopBackRight = 0x1000,
102 AudioObjectType_BottomFrontLeft = 0x2000,
103 AudioObjectType_BottomFrontRight = 0x4000,
104 AudioObjectType_BottomBackLeft = 0x8000,
105 AudioObjectType_BottomBackRight = 0x10000,
106 AudioObjectType_BackCenter = 0x20000
107 } AudioObjectType;
108 #define SPTLAUDCLNT_E_DESTROYED AUDCLNT_ERR(0x100)
109 #define SPTLAUDCLNT_E_OUT_OF_ORDER AUDCLNT_ERR(0x101)
110 #define SPTLAUDCLNT_E_RESOURCES_INVALIDATED AUDCLNT_ERR(0x102)
111 #define SPTLAUDCLNT_E_NO_MORE_OBJECTS AUDCLNT_ERR(0x103)
112 #define SPTLAUDCLNT_E_PROPERTY_NOT_SUPPORTED AUDCLNT_ERR(0x104)
113 #define SPTLAUDCLNT_E_ERRORS_IN_OBJECT_CALLS AUDCLNT_ERR(0x105)
114 #define SPTLAUDCLNT_E_METADATA_FORMAT_NOT_SUPPORTED AUDCLNT_ERR(0x106)
115 #define SPTLAUDCLNT_E_STREAM_NOT_AVAILABLE AUDCLNT_ERR(0x107)
116 #define SPTLAUDCLNT_E_INVALID_LICENSE AUDCLNT_ERR(0x108)
117 #define SPTLAUDCLNT_E_STREAM_NOT_STOPPED AUDCLNT_ERR(0x10a)
118 #define SPTLAUDCLNT_E_STATIC_OBJECT_NOT_AVAILABLE AUDCLNT_ERR(0x10b)
119 #define SPTLAUDCLNT_E_OBJECT_ALREADY_ACTIVE AUDCLNT_ERR(0x10c)
120 #define SPTLAUDCLNT_E_INTERNAL AUDCLNT_ERR(0x10d)
121 #ifndef __ISpatialAudioObjectRenderStreamBase_FWD_DEFINED__
122 #define __ISpatialAudioObjectRenderStreamBase_FWD_DEFINED__
123 typedef interface ISpatialAudioObjectRenderStreamBase ISpatialAudioObjectRenderStreamBase;
124 #ifdef __cplusplus
125 interface ISpatialAudioObjectRenderStreamBase;
126 #endif /* __cplusplus */
127 #endif
128
129 /*****************************************************************************
130 * ISpatialAudioObjectRenderStreamNotify interface
131 */
132 #ifndef __ISpatialAudioObjectRenderStreamNotify_INTERFACE_DEFINED__
133 #define __ISpatialAudioObjectRenderStreamNotify_INTERFACE_DEFINED__
134
135 DEFINE_GUID(IID_ISpatialAudioObjectRenderStreamNotify, 0xdddf83e6, 0x68d7, 0x4c70, 0x88,0x3f, 0xa1,0x83,0x6a,0xfb,0x4a,0x50);
136 #if defined(__cplusplus) && !defined(CINTERFACE)
137 MIDL_INTERFACE("dddf83e6-68d7-4c70-883f-a1836afb4a50")
138 ISpatialAudioObjectRenderStreamNotify : public IUnknown
139 {
140 virtual HRESULT STDMETHODCALLTYPE OnAvailableDynamicObjectCountChange(
141 ISpatialAudioObjectRenderStreamBase *stream,
142 LONGLONG deadline,
143 UINT32 object_count) = 0;
144
145 };
146 #ifdef __CRT_UUID_DECL
147 __CRT_UUID_DECL(ISpatialAudioObjectRenderStreamNotify, 0xdddf83e6, 0x68d7, 0x4c70, 0x88,0x3f, 0xa1,0x83,0x6a,0xfb,0x4a,0x50)
148 #endif
149 #else
150 typedef struct ISpatialAudioObjectRenderStreamNotifyVtbl {
151 BEGIN_INTERFACE
152
153 /*** IUnknown methods ***/
154 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
155 ISpatialAudioObjectRenderStreamNotify *This,
156 REFIID riid,
157 void **ppvObject);
158
159 ULONG (STDMETHODCALLTYPE *AddRef)(
160 ISpatialAudioObjectRenderStreamNotify *This);
161
162 ULONG (STDMETHODCALLTYPE *Release)(
163 ISpatialAudioObjectRenderStreamNotify *This);
164
165 /*** ISpatialAudioObjectRenderStreamNotify methods ***/
166 HRESULT (STDMETHODCALLTYPE *OnAvailableDynamicObjectCountChange)(
167 ISpatialAudioObjectRenderStreamNotify *This,
168 ISpatialAudioObjectRenderStreamBase *stream,
169 LONGLONG deadline,
170 UINT32 object_count);
171
172 END_INTERFACE
173 } ISpatialAudioObjectRenderStreamNotifyVtbl;
174
175 interface ISpatialAudioObjectRenderStreamNotify {
176 CONST_VTBL ISpatialAudioObjectRenderStreamNotifyVtbl* lpVtbl;
177 };
178
179 #ifdef COBJMACROS
180 #ifndef WIDL_C_INLINE_WRAPPERS
181 /*** IUnknown methods ***/
182 #define ISpatialAudioObjectRenderStreamNotify_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
183 #define ISpatialAudioObjectRenderStreamNotify_AddRef(This) (This)->lpVtbl->AddRef(This)
184 #define ISpatialAudioObjectRenderStreamNotify_Release(This) (This)->lpVtbl->Release(This)
185 /*** ISpatialAudioObjectRenderStreamNotify methods ***/
186 #define ISpatialAudioObjectRenderStreamNotify_OnAvailableDynamicObjectCountChange(This,stream,deadline,object_count) (This)->lpVtbl->OnAvailableDynamicObjectCountChange(This,stream,deadline,object_count)
187 #else
188 /*** IUnknown methods ***/
189 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamNotify_QueryInterface(ISpatialAudioObjectRenderStreamNotify* This,REFIID riid,void **ppvObject) {
190 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
191 }
192 static FORCEINLINE ULONG ISpatialAudioObjectRenderStreamNotify_AddRef(ISpatialAudioObjectRenderStreamNotify* This) {
193 return This->lpVtbl->AddRef(This);
194 }
195 static FORCEINLINE ULONG ISpatialAudioObjectRenderStreamNotify_Release(ISpatialAudioObjectRenderStreamNotify* This) {
196 return This->lpVtbl->Release(This);
197 }
198 /*** ISpatialAudioObjectRenderStreamNotify methods ***/
199 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamNotify_OnAvailableDynamicObjectCountChange(ISpatialAudioObjectRenderStreamNotify* This,ISpatialAudioObjectRenderStreamBase *stream,LONGLONG deadline,UINT32 object_count) {
200 return This->lpVtbl->OnAvailableDynamicObjectCountChange(This,stream,deadline,object_count);
201 }
202 #endif
203 #endif
204
205 #endif
206
207
208 #endif /* __ISpatialAudioObjectRenderStreamNotify_INTERFACE_DEFINED__ */
209
210 typedef struct tagSpatialAudioObjectRenderStreamActivationParams {
211 const WAVEFORMATEX *ObjectFormat;
212 AudioObjectType StaticObjectTypeMask;
213 UINT32 MinDynamicObjectCount;
214 UINT32 MaxDynamicObjectCount;
215 AUDIO_STREAM_CATEGORY Category;
216 HANDLE EventHandle;
217 ISpatialAudioObjectRenderStreamNotify *NotifyObject;
218 } SpatialAudioObjectRenderStreamActivationParams;
219 /*****************************************************************************
220 * IAudioFormatEnumerator interface
221 */
222 #ifndef __IAudioFormatEnumerator_INTERFACE_DEFINED__
223 #define __IAudioFormatEnumerator_INTERFACE_DEFINED__
224
225 DEFINE_GUID(IID_IAudioFormatEnumerator, 0xdcdaa858, 0x895a, 0x4a22, 0xa5,0xeb, 0x67,0xbd,0xa5,0x06,0x09,0x6d);
226 #if defined(__cplusplus) && !defined(CINTERFACE)
227 MIDL_INTERFACE("dcdaa858-895a-4a22-a5eb-67bda506096d")
228 IAudioFormatEnumerator : public IUnknown
229 {
230 virtual HRESULT STDMETHODCALLTYPE GetCount(
231 UINT32 *count) = 0;
232
233 virtual HRESULT STDMETHODCALLTYPE GetFormat(
234 UINT32 index,
235 WAVEFORMATEX **format) = 0;
236
237 };
238 #ifdef __CRT_UUID_DECL
239 __CRT_UUID_DECL(IAudioFormatEnumerator, 0xdcdaa858, 0x895a, 0x4a22, 0xa5,0xeb, 0x67,0xbd,0xa5,0x06,0x09,0x6d)
240 #endif
241 #else
242 typedef struct IAudioFormatEnumeratorVtbl {
243 BEGIN_INTERFACE
244
245 /*** IUnknown methods ***/
246 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
247 IAudioFormatEnumerator *This,
248 REFIID riid,
249 void **ppvObject);
250
251 ULONG (STDMETHODCALLTYPE *AddRef)(
252 IAudioFormatEnumerator *This);
253
254 ULONG (STDMETHODCALLTYPE *Release)(
255 IAudioFormatEnumerator *This);
256
257 /*** IAudioFormatEnumerator methods ***/
258 HRESULT (STDMETHODCALLTYPE *GetCount)(
259 IAudioFormatEnumerator *This,
260 UINT32 *count);
261
262 HRESULT (STDMETHODCALLTYPE *GetFormat)(
263 IAudioFormatEnumerator *This,
264 UINT32 index,
265 WAVEFORMATEX **format);
266
267 END_INTERFACE
268 } IAudioFormatEnumeratorVtbl;
269
270 interface IAudioFormatEnumerator {
271 CONST_VTBL IAudioFormatEnumeratorVtbl* lpVtbl;
272 };
273
274 #ifdef COBJMACROS
275 #ifndef WIDL_C_INLINE_WRAPPERS
276 /*** IUnknown methods ***/
277 #define IAudioFormatEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
278 #define IAudioFormatEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This)
279 #define IAudioFormatEnumerator_Release(This) (This)->lpVtbl->Release(This)
280 /*** IAudioFormatEnumerator methods ***/
281 #define IAudioFormatEnumerator_GetCount(This,count) (This)->lpVtbl->GetCount(This,count)
282 #define IAudioFormatEnumerator_GetFormat(This,index,format) (This)->lpVtbl->GetFormat(This,index,format)
283 #else
284 /*** IUnknown methods ***/
285 static FORCEINLINE HRESULT IAudioFormatEnumerator_QueryInterface(IAudioFormatEnumerator* This,REFIID riid,void **ppvObject) {
286 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
287 }
288 static FORCEINLINE ULONG IAudioFormatEnumerator_AddRef(IAudioFormatEnumerator* This) {
289 return This->lpVtbl->AddRef(This);
290 }
291 static FORCEINLINE ULONG IAudioFormatEnumerator_Release(IAudioFormatEnumerator* This) {
292 return This->lpVtbl->Release(This);
293 }
294 /*** IAudioFormatEnumerator methods ***/
295 static FORCEINLINE HRESULT IAudioFormatEnumerator_GetCount(IAudioFormatEnumerator* This,UINT32 *count) {
296 return This->lpVtbl->GetCount(This,count);
297 }
298 static FORCEINLINE HRESULT IAudioFormatEnumerator_GetFormat(IAudioFormatEnumerator* This,UINT32 index,WAVEFORMATEX **format) {
299 return This->lpVtbl->GetFormat(This,index,format);
300 }
301 #endif
302 #endif
303
304 #endif
305
306
307 #endif /* __IAudioFormatEnumerator_INTERFACE_DEFINED__ */
308
309 /*****************************************************************************
310 * ISpatialAudioClient interface
311 */
312 #ifndef __ISpatialAudioClient_INTERFACE_DEFINED__
313 #define __ISpatialAudioClient_INTERFACE_DEFINED__
314
315 DEFINE_GUID(IID_ISpatialAudioClient, 0xbbf8e066, 0xaaaa, 0x49be, 0x9a,0x4d, 0xfd,0x2a,0x85,0x8e,0xa2,0x7f);
316 #if defined(__cplusplus) && !defined(CINTERFACE)
317 MIDL_INTERFACE("bbf8e066-aaaa-49be-9a4d-fd2a858ea27f")
318 ISpatialAudioClient : public IUnknown
319 {
320 virtual HRESULT STDMETHODCALLTYPE GetStaticObjectPosition(
321 AudioObjectType type,
322 float *x,
323 float *y,
324 float *z) = 0;
325
326 virtual HRESULT STDMETHODCALLTYPE GetNativeStaticObjectTypeMask(
327 AudioObjectType *mask) = 0;
328
329 virtual HRESULT STDMETHODCALLTYPE GetMaxDynamicObjectCount(
330 UINT32 *value) = 0;
331
332 virtual HRESULT STDMETHODCALLTYPE GetSupportedAudioObjectFormatEnumerator(
333 IAudioFormatEnumerator **enumerator) = 0;
334
335 virtual HRESULT STDMETHODCALLTYPE GetMaxFrameCount(
336 const WAVEFORMATEX *format,
337 UINT32 *count) = 0;
338
339 virtual HRESULT STDMETHODCALLTYPE IsAudioObjectFormatSupported(
340 const WAVEFORMATEX *format) = 0;
341
342 virtual HRESULT STDMETHODCALLTYPE IsSpatialAudioStreamAvailable(
343 REFIID stream_uuid,
344 const PROPVARIANT *info) = 0;
345
346 virtual HRESULT STDMETHODCALLTYPE ActivateSpatialAudioStream(
347 const PROPVARIANT *params,
348 REFIID riid,
349 void **stream) = 0;
350
351 };
352 #ifdef __CRT_UUID_DECL
353 __CRT_UUID_DECL(ISpatialAudioClient, 0xbbf8e066, 0xaaaa, 0x49be, 0x9a,0x4d, 0xfd,0x2a,0x85,0x8e,0xa2,0x7f)
354 #endif
355 #else
356 typedef struct ISpatialAudioClientVtbl {
357 BEGIN_INTERFACE
358
359 /*** IUnknown methods ***/
360 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
361 ISpatialAudioClient *This,
362 REFIID riid,
363 void **ppvObject);
364
365 ULONG (STDMETHODCALLTYPE *AddRef)(
366 ISpatialAudioClient *This);
367
368 ULONG (STDMETHODCALLTYPE *Release)(
369 ISpatialAudioClient *This);
370
371 /*** ISpatialAudioClient methods ***/
372 HRESULT (STDMETHODCALLTYPE *GetStaticObjectPosition)(
373 ISpatialAudioClient *This,
374 AudioObjectType type,
375 float *x,
376 float *y,
377 float *z);
378
379 HRESULT (STDMETHODCALLTYPE *GetNativeStaticObjectTypeMask)(
380 ISpatialAudioClient *This,
381 AudioObjectType *mask);
382
383 HRESULT (STDMETHODCALLTYPE *GetMaxDynamicObjectCount)(
384 ISpatialAudioClient *This,
385 UINT32 *value);
386
387 HRESULT (STDMETHODCALLTYPE *GetSupportedAudioObjectFormatEnumerator)(
388 ISpatialAudioClient *This,
389 IAudioFormatEnumerator **enumerator);
390
391 HRESULT (STDMETHODCALLTYPE *GetMaxFrameCount)(
392 ISpatialAudioClient *This,
393 const WAVEFORMATEX *format,
394 UINT32 *count);
395
396 HRESULT (STDMETHODCALLTYPE *IsAudioObjectFormatSupported)(
397 ISpatialAudioClient *This,
398 const WAVEFORMATEX *format);
399
400 HRESULT (STDMETHODCALLTYPE *IsSpatialAudioStreamAvailable)(
401 ISpatialAudioClient *This,
402 REFIID stream_uuid,
403 const PROPVARIANT *info);
404
405 HRESULT (STDMETHODCALLTYPE *ActivateSpatialAudioStream)(
406 ISpatialAudioClient *This,
407 const PROPVARIANT *params,
408 REFIID riid,
409 void **stream);
410
411 END_INTERFACE
412 } ISpatialAudioClientVtbl;
413
414 interface ISpatialAudioClient {
415 CONST_VTBL ISpatialAudioClientVtbl* lpVtbl;
416 };
417
418 #ifdef COBJMACROS
419 #ifndef WIDL_C_INLINE_WRAPPERS
420 /*** IUnknown methods ***/
421 #define ISpatialAudioClient_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
422 #define ISpatialAudioClient_AddRef(This) (This)->lpVtbl->AddRef(This)
423 #define ISpatialAudioClient_Release(This) (This)->lpVtbl->Release(This)
424 /*** ISpatialAudioClient methods ***/
425 #define ISpatialAudioClient_GetStaticObjectPosition(This,type,x,y,z) (This)->lpVtbl->GetStaticObjectPosition(This,type,x,y,z)
426 #define ISpatialAudioClient_GetNativeStaticObjectTypeMask(This,mask) (This)->lpVtbl->GetNativeStaticObjectTypeMask(This,mask)
427 #define ISpatialAudioClient_GetMaxDynamicObjectCount(This,value) (This)->lpVtbl->GetMaxDynamicObjectCount(This,value)
428 #define ISpatialAudioClient_GetSupportedAudioObjectFormatEnumerator(This,enumerator) (This)->lpVtbl->GetSupportedAudioObjectFormatEnumerator(This,enumerator)
429 #define ISpatialAudioClient_GetMaxFrameCount(This,format,count) (This)->lpVtbl->GetMaxFrameCount(This,format,count)
430 #define ISpatialAudioClient_IsAudioObjectFormatSupported(This,format) (This)->lpVtbl->IsAudioObjectFormatSupported(This,format)
431 #define ISpatialAudioClient_IsSpatialAudioStreamAvailable(This,stream_uuid,info) (This)->lpVtbl->IsSpatialAudioStreamAvailable(This,stream_uuid,info)
432 #define ISpatialAudioClient_ActivateSpatialAudioStream(This,params,riid,stream) (This)->lpVtbl->ActivateSpatialAudioStream(This,params,riid,stream)
433 #else
434 /*** IUnknown methods ***/
435 static FORCEINLINE HRESULT ISpatialAudioClient_QueryInterface(ISpatialAudioClient* This,REFIID riid,void **ppvObject) {
436 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
437 }
438 static FORCEINLINE ULONG ISpatialAudioClient_AddRef(ISpatialAudioClient* This) {
439 return This->lpVtbl->AddRef(This);
440 }
441 static FORCEINLINE ULONG ISpatialAudioClient_Release(ISpatialAudioClient* This) {
442 return This->lpVtbl->Release(This);
443 }
444 /*** ISpatialAudioClient methods ***/
445 static FORCEINLINE HRESULT ISpatialAudioClient_GetStaticObjectPosition(ISpatialAudioClient* This,AudioObjectType type,float *x,float *y,float *z) {
446 return This->lpVtbl->GetStaticObjectPosition(This,type,x,y,z);
447 }
448 static FORCEINLINE HRESULT ISpatialAudioClient_GetNativeStaticObjectTypeMask(ISpatialAudioClient* This,AudioObjectType *mask) {
449 return This->lpVtbl->GetNativeStaticObjectTypeMask(This,mask);
450 }
451 static FORCEINLINE HRESULT ISpatialAudioClient_GetMaxDynamicObjectCount(ISpatialAudioClient* This,UINT32 *value) {
452 return This->lpVtbl->GetMaxDynamicObjectCount(This,value);
453 }
454 static FORCEINLINE HRESULT ISpatialAudioClient_GetSupportedAudioObjectFormatEnumerator(ISpatialAudioClient* This,IAudioFormatEnumerator **enumerator) {
455 return This->lpVtbl->GetSupportedAudioObjectFormatEnumerator(This,enumerator);
456 }
457 static FORCEINLINE HRESULT ISpatialAudioClient_GetMaxFrameCount(ISpatialAudioClient* This,const WAVEFORMATEX *format,UINT32 *count) {
458 return This->lpVtbl->GetMaxFrameCount(This,format,count);
459 }
460 static FORCEINLINE HRESULT ISpatialAudioClient_IsAudioObjectFormatSupported(ISpatialAudioClient* This,const WAVEFORMATEX *format) {
461 return This->lpVtbl->IsAudioObjectFormatSupported(This,format);
462 }
463 static FORCEINLINE HRESULT ISpatialAudioClient_IsSpatialAudioStreamAvailable(ISpatialAudioClient* This,REFIID stream_uuid,const PROPVARIANT *info) {
464 return This->lpVtbl->IsSpatialAudioStreamAvailable(This,stream_uuid,info);
465 }
466 static FORCEINLINE HRESULT ISpatialAudioClient_ActivateSpatialAudioStream(ISpatialAudioClient* This,const PROPVARIANT *params,REFIID riid,void **stream) {
467 return This->lpVtbl->ActivateSpatialAudioStream(This,params,riid,stream);
468 }
469 #endif
470 #endif
471
472 #endif
473
474
475 #endif /* __ISpatialAudioClient_INTERFACE_DEFINED__ */
476
477 /*****************************************************************************
478 * ISpatialAudioObjectBase interface
479 */
480 #ifndef __ISpatialAudioObjectBase_INTERFACE_DEFINED__
481 #define __ISpatialAudioObjectBase_INTERFACE_DEFINED__
482
483 DEFINE_GUID(IID_ISpatialAudioObjectBase, 0xcce0b8f2, 0x8d4d, 0x4efb, 0xa8,0xcf, 0x3d,0x6e,0xcf,0x1c,0x30,0xe0);
484 #if defined(__cplusplus) && !defined(CINTERFACE)
485 MIDL_INTERFACE("cce0b8f2-8d4d-4efb-a8cf-3d6ecf1c30e0")
486 ISpatialAudioObjectBase : public IUnknown
487 {
488 virtual HRESULT STDMETHODCALLTYPE GetBuffer(
489 BYTE **buffer,
490 UINT32 *bytes) = 0;
491
492 virtual HRESULT STDMETHODCALLTYPE SetEndOfStream(
493 UINT32 frames) = 0;
494
495 virtual HRESULT STDMETHODCALLTYPE IsActive(
496 WINBOOL *active) = 0;
497
498 virtual HRESULT STDMETHODCALLTYPE GetAudioObjectType(
499 AudioObjectType *type) = 0;
500
501 };
502 #ifdef __CRT_UUID_DECL
503 __CRT_UUID_DECL(ISpatialAudioObjectBase, 0xcce0b8f2, 0x8d4d, 0x4efb, 0xa8,0xcf, 0x3d,0x6e,0xcf,0x1c,0x30,0xe0)
504 #endif
505 #else
506 typedef struct ISpatialAudioObjectBaseVtbl {
507 BEGIN_INTERFACE
508
509 /*** IUnknown methods ***/
510 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
511 ISpatialAudioObjectBase *This,
512 REFIID riid,
513 void **ppvObject);
514
515 ULONG (STDMETHODCALLTYPE *AddRef)(
516 ISpatialAudioObjectBase *This);
517
518 ULONG (STDMETHODCALLTYPE *Release)(
519 ISpatialAudioObjectBase *This);
520
521 /*** ISpatialAudioObjectBase methods ***/
522 HRESULT (STDMETHODCALLTYPE *GetBuffer)(
523 ISpatialAudioObjectBase *This,
524 BYTE **buffer,
525 UINT32 *bytes);
526
527 HRESULT (STDMETHODCALLTYPE *SetEndOfStream)(
528 ISpatialAudioObjectBase *This,
529 UINT32 frames);
530
531 HRESULT (STDMETHODCALLTYPE *IsActive)(
532 ISpatialAudioObjectBase *This,
533 WINBOOL *active);
534
535 HRESULT (STDMETHODCALLTYPE *GetAudioObjectType)(
536 ISpatialAudioObjectBase *This,
537 AudioObjectType *type);
538
539 END_INTERFACE
540 } ISpatialAudioObjectBaseVtbl;
541
542 interface ISpatialAudioObjectBase {
543 CONST_VTBL ISpatialAudioObjectBaseVtbl* lpVtbl;
544 };
545
546 #ifdef COBJMACROS
547 #ifndef WIDL_C_INLINE_WRAPPERS
548 /*** IUnknown methods ***/
549 #define ISpatialAudioObjectBase_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
550 #define ISpatialAudioObjectBase_AddRef(This) (This)->lpVtbl->AddRef(This)
551 #define ISpatialAudioObjectBase_Release(This) (This)->lpVtbl->Release(This)
552 /*** ISpatialAudioObjectBase methods ***/
553 #define ISpatialAudioObjectBase_GetBuffer(This,buffer,bytes) (This)->lpVtbl->GetBuffer(This,buffer,bytes)
554 #define ISpatialAudioObjectBase_SetEndOfStream(This,frames) (This)->lpVtbl->SetEndOfStream(This,frames)
555 #define ISpatialAudioObjectBase_IsActive(This,active) (This)->lpVtbl->IsActive(This,active)
556 #define ISpatialAudioObjectBase_GetAudioObjectType(This,type) (This)->lpVtbl->GetAudioObjectType(This,type)
557 #else
558 /*** IUnknown methods ***/
559 static FORCEINLINE HRESULT ISpatialAudioObjectBase_QueryInterface(ISpatialAudioObjectBase* This,REFIID riid,void **ppvObject) {
560 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
561 }
562 static FORCEINLINE ULONG ISpatialAudioObjectBase_AddRef(ISpatialAudioObjectBase* This) {
563 return This->lpVtbl->AddRef(This);
564 }
565 static FORCEINLINE ULONG ISpatialAudioObjectBase_Release(ISpatialAudioObjectBase* This) {
566 return This->lpVtbl->Release(This);
567 }
568 /*** ISpatialAudioObjectBase methods ***/
569 static FORCEINLINE HRESULT ISpatialAudioObjectBase_GetBuffer(ISpatialAudioObjectBase* This,BYTE **buffer,UINT32 *bytes) {
570 return This->lpVtbl->GetBuffer(This,buffer,bytes);
571 }
572 static FORCEINLINE HRESULT ISpatialAudioObjectBase_SetEndOfStream(ISpatialAudioObjectBase* This,UINT32 frames) {
573 return This->lpVtbl->SetEndOfStream(This,frames);
574 }
575 static FORCEINLINE HRESULT ISpatialAudioObjectBase_IsActive(ISpatialAudioObjectBase* This,WINBOOL *active) {
576 return This->lpVtbl->IsActive(This,active);
577 }
578 static FORCEINLINE HRESULT ISpatialAudioObjectBase_GetAudioObjectType(ISpatialAudioObjectBase* This,AudioObjectType *type) {
579 return This->lpVtbl->GetAudioObjectType(This,type);
580 }
581 #endif
582 #endif
583
584 #endif
585
586
587 #endif /* __ISpatialAudioObjectBase_INTERFACE_DEFINED__ */
588
589 /*****************************************************************************
590 * ISpatialAudioObject interface
591 */
592 #ifndef __ISpatialAudioObject_INTERFACE_DEFINED__
593 #define __ISpatialAudioObject_INTERFACE_DEFINED__
594
595 DEFINE_GUID(IID_ISpatialAudioObject, 0xdde28967, 0x521b, 0x46e5, 0x8f,0x00, 0xbd,0x6f,0x2b,0xc8,0xab,0x1d);
596 #if defined(__cplusplus) && !defined(CINTERFACE)
597 MIDL_INTERFACE("dde28967-521b-46e5-8f00-bd6f2bc8ab1d")
598 ISpatialAudioObject : public ISpatialAudioObjectBase
599 {
600 virtual HRESULT STDMETHODCALLTYPE SetPosition(
601 float x,
602 float y,
603 float z) = 0;
604
605 virtual HRESULT STDMETHODCALLTYPE SetVolume(
606 float vol) = 0;
607
608 };
609 #ifdef __CRT_UUID_DECL
610 __CRT_UUID_DECL(ISpatialAudioObject, 0xdde28967, 0x521b, 0x46e5, 0x8f,0x00, 0xbd,0x6f,0x2b,0xc8,0xab,0x1d)
611 #endif
612 #else
613 typedef struct ISpatialAudioObjectVtbl {
614 BEGIN_INTERFACE
615
616 /*** IUnknown methods ***/
617 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
618 ISpatialAudioObject *This,
619 REFIID riid,
620 void **ppvObject);
621
622 ULONG (STDMETHODCALLTYPE *AddRef)(
623 ISpatialAudioObject *This);
624
625 ULONG (STDMETHODCALLTYPE *Release)(
626 ISpatialAudioObject *This);
627
628 /*** ISpatialAudioObjectBase methods ***/
629 HRESULT (STDMETHODCALLTYPE *GetBuffer)(
630 ISpatialAudioObject *This,
631 BYTE **buffer,
632 UINT32 *bytes);
633
634 HRESULT (STDMETHODCALLTYPE *SetEndOfStream)(
635 ISpatialAudioObject *This,
636 UINT32 frames);
637
638 HRESULT (STDMETHODCALLTYPE *IsActive)(
639 ISpatialAudioObject *This,
640 WINBOOL *active);
641
642 HRESULT (STDMETHODCALLTYPE *GetAudioObjectType)(
643 ISpatialAudioObject *This,
644 AudioObjectType *type);
645
646 /*** ISpatialAudioObject methods ***/
647 HRESULT (STDMETHODCALLTYPE *SetPosition)(
648 ISpatialAudioObject *This,
649 float x,
650 float y,
651 float z);
652
653 HRESULT (STDMETHODCALLTYPE *SetVolume)(
654 ISpatialAudioObject *This,
655 float vol);
656
657 END_INTERFACE
658 } ISpatialAudioObjectVtbl;
659
660 interface ISpatialAudioObject {
661 CONST_VTBL ISpatialAudioObjectVtbl* lpVtbl;
662 };
663
664 #ifdef COBJMACROS
665 #ifndef WIDL_C_INLINE_WRAPPERS
666 /*** IUnknown methods ***/
667 #define ISpatialAudioObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
668 #define ISpatialAudioObject_AddRef(This) (This)->lpVtbl->AddRef(This)
669 #define ISpatialAudioObject_Release(This) (This)->lpVtbl->Release(This)
670 /*** ISpatialAudioObjectBase methods ***/
671 #define ISpatialAudioObject_GetBuffer(This,buffer,bytes) (This)->lpVtbl->GetBuffer(This,buffer,bytes)
672 #define ISpatialAudioObject_SetEndOfStream(This,frames) (This)->lpVtbl->SetEndOfStream(This,frames)
673 #define ISpatialAudioObject_IsActive(This,active) (This)->lpVtbl->IsActive(This,active)
674 #define ISpatialAudioObject_GetAudioObjectType(This,type) (This)->lpVtbl->GetAudioObjectType(This,type)
675 /*** ISpatialAudioObject methods ***/
676 #define ISpatialAudioObject_SetPosition(This,x,y,z) (This)->lpVtbl->SetPosition(This,x,y,z)
677 #define ISpatialAudioObject_SetVolume(This,vol) (This)->lpVtbl->SetVolume(This,vol)
678 #else
679 /*** IUnknown methods ***/
680 static FORCEINLINE HRESULT ISpatialAudioObject_QueryInterface(ISpatialAudioObject* This,REFIID riid,void **ppvObject) {
681 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
682 }
683 static FORCEINLINE ULONG ISpatialAudioObject_AddRef(ISpatialAudioObject* This) {
684 return This->lpVtbl->AddRef(This);
685 }
686 static FORCEINLINE ULONG ISpatialAudioObject_Release(ISpatialAudioObject* This) {
687 return This->lpVtbl->Release(This);
688 }
689 /*** ISpatialAudioObjectBase methods ***/
690 static FORCEINLINE HRESULT ISpatialAudioObject_GetBuffer(ISpatialAudioObject* This,BYTE **buffer,UINT32 *bytes) {
691 return This->lpVtbl->GetBuffer(This,buffer,bytes);
692 }
693 static FORCEINLINE HRESULT ISpatialAudioObject_SetEndOfStream(ISpatialAudioObject* This,UINT32 frames) {
694 return This->lpVtbl->SetEndOfStream(This,frames);
695 }
696 static FORCEINLINE HRESULT ISpatialAudioObject_IsActive(ISpatialAudioObject* This,WINBOOL *active) {
697 return This->lpVtbl->IsActive(This,active);
698 }
699 static FORCEINLINE HRESULT ISpatialAudioObject_GetAudioObjectType(ISpatialAudioObject* This,AudioObjectType *type) {
700 return This->lpVtbl->GetAudioObjectType(This,type);
701 }
702 /*** ISpatialAudioObject methods ***/
703 static FORCEINLINE HRESULT ISpatialAudioObject_SetPosition(ISpatialAudioObject* This,float x,float y,float z) {
704 return This->lpVtbl->SetPosition(This,x,y,z);
705 }
706 static FORCEINLINE HRESULT ISpatialAudioObject_SetVolume(ISpatialAudioObject* This,float vol) {
707 return This->lpVtbl->SetVolume(This,vol);
708 }
709 #endif
710 #endif
711
712 #endif
713
714
715 #endif /* __ISpatialAudioObject_INTERFACE_DEFINED__ */
716
717 /*****************************************************************************
718 * ISpatialAudioObjectRenderStreamBase interface
719 */
720 #ifndef __ISpatialAudioObjectRenderStreamBase_INTERFACE_DEFINED__
721 #define __ISpatialAudioObjectRenderStreamBase_INTERFACE_DEFINED__
722
723 DEFINE_GUID(IID_ISpatialAudioObjectRenderStreamBase, 0xfeaaf403, 0xc1d8, 0x450d, 0xaa,0x05, 0xe0,0xcc,0xee,0x75,0x02,0xa8);
724 #if defined(__cplusplus) && !defined(CINTERFACE)
725 MIDL_INTERFACE("feaaf403-c1d8-450d-aa05-e0ccee7502a8")
726 ISpatialAudioObjectRenderStreamBase : public IUnknown
727 {
728 virtual HRESULT STDMETHODCALLTYPE GetAvailableDynamicObjectCount(
729 UINT32 *count) = 0;
730
731 virtual HRESULT STDMETHODCALLTYPE GetService(
732 REFIID riid,
733 void **service) = 0;
734
735 virtual HRESULT STDMETHODCALLTYPE Start(
736 ) = 0;
737
738 virtual HRESULT STDMETHODCALLTYPE Stop(
739 ) = 0;
740
741 virtual HRESULT STDMETHODCALLTYPE Reset(
742 ) = 0;
743
744 virtual HRESULT STDMETHODCALLTYPE BeginUpdatingAudioObjects(
745 UINT32 *count,
746 UINT32 *frames) = 0;
747
748 virtual HRESULT STDMETHODCALLTYPE EndUpdatingAudioObjects(
749 ) = 0;
750
751 };
752 #ifdef __CRT_UUID_DECL
753 __CRT_UUID_DECL(ISpatialAudioObjectRenderStreamBase, 0xfeaaf403, 0xc1d8, 0x450d, 0xaa,0x05, 0xe0,0xcc,0xee,0x75,0x02,0xa8)
754 #endif
755 #else
756 typedef struct ISpatialAudioObjectRenderStreamBaseVtbl {
757 BEGIN_INTERFACE
758
759 /*** IUnknown methods ***/
760 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
761 ISpatialAudioObjectRenderStreamBase *This,
762 REFIID riid,
763 void **ppvObject);
764
765 ULONG (STDMETHODCALLTYPE *AddRef)(
766 ISpatialAudioObjectRenderStreamBase *This);
767
768 ULONG (STDMETHODCALLTYPE *Release)(
769 ISpatialAudioObjectRenderStreamBase *This);
770
771 /*** ISpatialAudioObjectRenderStreamBase methods ***/
772 HRESULT (STDMETHODCALLTYPE *GetAvailableDynamicObjectCount)(
773 ISpatialAudioObjectRenderStreamBase *This,
774 UINT32 *count);
775
776 HRESULT (STDMETHODCALLTYPE *GetService)(
777 ISpatialAudioObjectRenderStreamBase *This,
778 REFIID riid,
779 void **service);
780
781 HRESULT (STDMETHODCALLTYPE *Start)(
782 ISpatialAudioObjectRenderStreamBase *This);
783
784 HRESULT (STDMETHODCALLTYPE *Stop)(
785 ISpatialAudioObjectRenderStreamBase *This);
786
787 HRESULT (STDMETHODCALLTYPE *Reset)(
788 ISpatialAudioObjectRenderStreamBase *This);
789
790 HRESULT (STDMETHODCALLTYPE *BeginUpdatingAudioObjects)(
791 ISpatialAudioObjectRenderStreamBase *This,
792 UINT32 *count,
793 UINT32 *frames);
794
795 HRESULT (STDMETHODCALLTYPE *EndUpdatingAudioObjects)(
796 ISpatialAudioObjectRenderStreamBase *This);
797
798 END_INTERFACE
799 } ISpatialAudioObjectRenderStreamBaseVtbl;
800
801 interface ISpatialAudioObjectRenderStreamBase {
802 CONST_VTBL ISpatialAudioObjectRenderStreamBaseVtbl* lpVtbl;
803 };
804
805 #ifdef COBJMACROS
806 #ifndef WIDL_C_INLINE_WRAPPERS
807 /*** IUnknown methods ***/
808 #define ISpatialAudioObjectRenderStreamBase_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
809 #define ISpatialAudioObjectRenderStreamBase_AddRef(This) (This)->lpVtbl->AddRef(This)
810 #define ISpatialAudioObjectRenderStreamBase_Release(This) (This)->lpVtbl->Release(This)
811 /*** ISpatialAudioObjectRenderStreamBase methods ***/
812 #define ISpatialAudioObjectRenderStreamBase_GetAvailableDynamicObjectCount(This,count) (This)->lpVtbl->GetAvailableDynamicObjectCount(This,count)
813 #define ISpatialAudioObjectRenderStreamBase_GetService(This,riid,service) (This)->lpVtbl->GetService(This,riid,service)
814 #define ISpatialAudioObjectRenderStreamBase_Start(This) (This)->lpVtbl->Start(This)
815 #define ISpatialAudioObjectRenderStreamBase_Stop(This) (This)->lpVtbl->Stop(This)
816 #define ISpatialAudioObjectRenderStreamBase_Reset(This) (This)->lpVtbl->Reset(This)
817 #define ISpatialAudioObjectRenderStreamBase_BeginUpdatingAudioObjects(This,count,frames) (This)->lpVtbl->BeginUpdatingAudioObjects(This,count,frames)
818 #define ISpatialAudioObjectRenderStreamBase_EndUpdatingAudioObjects(This) (This)->lpVtbl->EndUpdatingAudioObjects(This)
819 #else
820 /*** IUnknown methods ***/
821 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamBase_QueryInterface(ISpatialAudioObjectRenderStreamBase* This,REFIID riid,void **ppvObject) {
822 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
823 }
824 static FORCEINLINE ULONG ISpatialAudioObjectRenderStreamBase_AddRef(ISpatialAudioObjectRenderStreamBase* This) {
825 return This->lpVtbl->AddRef(This);
826 }
827 static FORCEINLINE ULONG ISpatialAudioObjectRenderStreamBase_Release(ISpatialAudioObjectRenderStreamBase* This) {
828 return This->lpVtbl->Release(This);
829 }
830 /*** ISpatialAudioObjectRenderStreamBase methods ***/
831 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamBase_GetAvailableDynamicObjectCount(ISpatialAudioObjectRenderStreamBase* This,UINT32 *count) {
832 return This->lpVtbl->GetAvailableDynamicObjectCount(This,count);
833 }
834 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamBase_GetService(ISpatialAudioObjectRenderStreamBase* This,REFIID riid,void **service) {
835 return This->lpVtbl->GetService(This,riid,service);
836 }
837 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamBase_Start(ISpatialAudioObjectRenderStreamBase* This) {
838 return This->lpVtbl->Start(This);
839 }
840 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamBase_Stop(ISpatialAudioObjectRenderStreamBase* This) {
841 return This->lpVtbl->Stop(This);
842 }
843 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamBase_Reset(ISpatialAudioObjectRenderStreamBase* This) {
844 return This->lpVtbl->Reset(This);
845 }
846 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamBase_BeginUpdatingAudioObjects(ISpatialAudioObjectRenderStreamBase* This,UINT32 *count,UINT32 *frames) {
847 return This->lpVtbl->BeginUpdatingAudioObjects(This,count,frames);
848 }
849 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStreamBase_EndUpdatingAudioObjects(ISpatialAudioObjectRenderStreamBase* This) {
850 return This->lpVtbl->EndUpdatingAudioObjects(This);
851 }
852 #endif
853 #endif
854
855 #endif
856
857
858 #endif /* __ISpatialAudioObjectRenderStreamBase_INTERFACE_DEFINED__ */
859
860 /*****************************************************************************
861 * ISpatialAudioObjectRenderStream interface
862 */
863 #ifndef __ISpatialAudioObjectRenderStream_INTERFACE_DEFINED__
864 #define __ISpatialAudioObjectRenderStream_INTERFACE_DEFINED__
865
866 DEFINE_GUID(IID_ISpatialAudioObjectRenderStream, 0xbab5f473, 0xb423, 0x477b, 0x85,0xf5, 0xb5,0xa3,0x32,0xa0,0x41,0x53);
867 #if defined(__cplusplus) && !defined(CINTERFACE)
868 MIDL_INTERFACE("bab5f473-b423-477b-85f5-b5a332a04153")
869 ISpatialAudioObjectRenderStream : public ISpatialAudioObjectRenderStreamBase
870 {
871 virtual HRESULT STDMETHODCALLTYPE ActivateSpatialAudioObject(
872 AudioObjectType type,
873 ISpatialAudioObject **object) = 0;
874
875 };
876 #ifdef __CRT_UUID_DECL
877 __CRT_UUID_DECL(ISpatialAudioObjectRenderStream, 0xbab5f473, 0xb423, 0x477b, 0x85,0xf5, 0xb5,0xa3,0x32,0xa0,0x41,0x53)
878 #endif
879 #else
880 typedef struct ISpatialAudioObjectRenderStreamVtbl {
881 BEGIN_INTERFACE
882
883 /*** IUnknown methods ***/
884 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
885 ISpatialAudioObjectRenderStream *This,
886 REFIID riid,
887 void **ppvObject);
888
889 ULONG (STDMETHODCALLTYPE *AddRef)(
890 ISpatialAudioObjectRenderStream *This);
891
892 ULONG (STDMETHODCALLTYPE *Release)(
893 ISpatialAudioObjectRenderStream *This);
894
895 /*** ISpatialAudioObjectRenderStreamBase methods ***/
896 HRESULT (STDMETHODCALLTYPE *GetAvailableDynamicObjectCount)(
897 ISpatialAudioObjectRenderStream *This,
898 UINT32 *count);
899
900 HRESULT (STDMETHODCALLTYPE *GetService)(
901 ISpatialAudioObjectRenderStream *This,
902 REFIID riid,
903 void **service);
904
905 HRESULT (STDMETHODCALLTYPE *Start)(
906 ISpatialAudioObjectRenderStream *This);
907
908 HRESULT (STDMETHODCALLTYPE *Stop)(
909 ISpatialAudioObjectRenderStream *This);
910
911 HRESULT (STDMETHODCALLTYPE *Reset)(
912 ISpatialAudioObjectRenderStream *This);
913
914 HRESULT (STDMETHODCALLTYPE *BeginUpdatingAudioObjects)(
915 ISpatialAudioObjectRenderStream *This,
916 UINT32 *count,
917 UINT32 *frames);
918
919 HRESULT (STDMETHODCALLTYPE *EndUpdatingAudioObjects)(
920 ISpatialAudioObjectRenderStream *This);
921
922 /*** ISpatialAudioObjectRenderStream methods ***/
923 HRESULT (STDMETHODCALLTYPE *ActivateSpatialAudioObject)(
924 ISpatialAudioObjectRenderStream *This,
925 AudioObjectType type,
926 ISpatialAudioObject **object);
927
928 END_INTERFACE
929 } ISpatialAudioObjectRenderStreamVtbl;
930
931 interface ISpatialAudioObjectRenderStream {
932 CONST_VTBL ISpatialAudioObjectRenderStreamVtbl* lpVtbl;
933 };
934
935 #ifdef COBJMACROS
936 #ifndef WIDL_C_INLINE_WRAPPERS
937 /*** IUnknown methods ***/
938 #define ISpatialAudioObjectRenderStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
939 #define ISpatialAudioObjectRenderStream_AddRef(This) (This)->lpVtbl->AddRef(This)
940 #define ISpatialAudioObjectRenderStream_Release(This) (This)->lpVtbl->Release(This)
941 /*** ISpatialAudioObjectRenderStreamBase methods ***/
942 #define ISpatialAudioObjectRenderStream_GetAvailableDynamicObjectCount(This,count) (This)->lpVtbl->GetAvailableDynamicObjectCount(This,count)
943 #define ISpatialAudioObjectRenderStream_GetService(This,riid,service) (This)->lpVtbl->GetService(This,riid,service)
944 #define ISpatialAudioObjectRenderStream_Start(This) (This)->lpVtbl->Start(This)
945 #define ISpatialAudioObjectRenderStream_Stop(This) (This)->lpVtbl->Stop(This)
946 #define ISpatialAudioObjectRenderStream_Reset(This) (This)->lpVtbl->Reset(This)
947 #define ISpatialAudioObjectRenderStream_BeginUpdatingAudioObjects(This,count,frames) (This)->lpVtbl->BeginUpdatingAudioObjects(This,count,frames)
948 #define ISpatialAudioObjectRenderStream_EndUpdatingAudioObjects(This) (This)->lpVtbl->EndUpdatingAudioObjects(This)
949 /*** ISpatialAudioObjectRenderStream methods ***/
950 #define ISpatialAudioObjectRenderStream_ActivateSpatialAudioObject(This,type,object) (This)->lpVtbl->ActivateSpatialAudioObject(This,type,object)
951 #else
952 /*** IUnknown methods ***/
953 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_QueryInterface(ISpatialAudioObjectRenderStream* This,REFIID riid,void **ppvObject) {
954 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
955 }
956 static FORCEINLINE ULONG ISpatialAudioObjectRenderStream_AddRef(ISpatialAudioObjectRenderStream* This) {
957 return This->lpVtbl->AddRef(This);
958 }
959 static FORCEINLINE ULONG ISpatialAudioObjectRenderStream_Release(ISpatialAudioObjectRenderStream* This) {
960 return This->lpVtbl->Release(This);
961 }
962 /*** ISpatialAudioObjectRenderStreamBase methods ***/
963 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_GetAvailableDynamicObjectCount(ISpatialAudioObjectRenderStream* This,UINT32 *count) {
964 return This->lpVtbl->GetAvailableDynamicObjectCount(This,count);
965 }
966 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_GetService(ISpatialAudioObjectRenderStream* This,REFIID riid,void **service) {
967 return This->lpVtbl->GetService(This,riid,service);
968 }
969 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_Start(ISpatialAudioObjectRenderStream* This) {
970 return This->lpVtbl->Start(This);
971 }
972 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_Stop(ISpatialAudioObjectRenderStream* This) {
973 return This->lpVtbl->Stop(This);
974 }
975 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_Reset(ISpatialAudioObjectRenderStream* This) {
976 return This->lpVtbl->Reset(This);
977 }
978 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_BeginUpdatingAudioObjects(ISpatialAudioObjectRenderStream* This,UINT32 *count,UINT32 *frames) {
979 return This->lpVtbl->BeginUpdatingAudioObjects(This,count,frames);
980 }
981 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_EndUpdatingAudioObjects(ISpatialAudioObjectRenderStream* This) {
982 return This->lpVtbl->EndUpdatingAudioObjects(This);
983 }
984 /*** ISpatialAudioObjectRenderStream methods ***/
985 static FORCEINLINE HRESULT ISpatialAudioObjectRenderStream_ActivateSpatialAudioObject(ISpatialAudioObjectRenderStream* This,AudioObjectType type,ISpatialAudioObject **object) {
986 return This->lpVtbl->ActivateSpatialAudioObject(This,type,object);
987 }
988 #endif
989 #endif
990
991 #endif
992
993
994 #endif /* __ISpatialAudioObjectRenderStream_INTERFACE_DEFINED__ */
995
996 /* Begin additional prototypes for all interfaces */
997
998
999 /* End additional prototypes */
1000
1001 #ifdef __cplusplus
1002 }
1003 #endif
1004
1005 #endif /* __spatialaudioclient_h__ */