ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/austream.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 21859 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/austream.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 __austream_h__
17 #define __austream_h__
18
19 /* Forward declarations */
20
21 #ifndef __IAudioMediaStream_FWD_DEFINED__
22 #define __IAudioMediaStream_FWD_DEFINED__
23 typedef interface IAudioMediaStream IAudioMediaStream;
24 #ifdef __cplusplus
25 interface IAudioMediaStream;
26 #endif /* __cplusplus */
27 #endif
28
29 #ifndef __IAudioStreamSample_FWD_DEFINED__
30 #define __IAudioStreamSample_FWD_DEFINED__
31 typedef interface IAudioStreamSample IAudioStreamSample;
32 #ifdef __cplusplus
33 interface IAudioStreamSample;
34 #endif /* __cplusplus */
35 #endif
36
37 #ifndef __IMemoryData_FWD_DEFINED__
38 #define __IMemoryData_FWD_DEFINED__
39 typedef interface IMemoryData IMemoryData;
40 #ifdef __cplusplus
41 interface IMemoryData;
42 #endif /* __cplusplus */
43 #endif
44
45 #ifndef __IAudioData_FWD_DEFINED__
46 #define __IAudioData_FWD_DEFINED__
47 typedef interface IAudioData IAudioData;
48 #ifdef __cplusplus
49 interface IAudioData;
50 #endif /* __cplusplus */
51 #endif
52
53 /* Headers for imported files */
54
55 #include <unknwn.h>
56 #include <mmstream.h>
57
58 #ifdef __cplusplus
59 extern "C" {
60 #endif
61
62 #if 0
63 typedef struct tWAVEFORMATEX WAVEFORMATEX;
64 #endif
65 #ifndef __IAudioMediaStream_FWD_DEFINED__
66 #define __IAudioMediaStream_FWD_DEFINED__
67 typedef interface IAudioMediaStream IAudioMediaStream;
68 #ifdef __cplusplus
69 interface IAudioMediaStream;
70 #endif /* __cplusplus */
71 #endif
72
73 #ifndef __IAudioStreamSample_FWD_DEFINED__
74 #define __IAudioStreamSample_FWD_DEFINED__
75 typedef interface IAudioStreamSample IAudioStreamSample;
76 #ifdef __cplusplus
77 interface IAudioStreamSample;
78 #endif /* __cplusplus */
79 #endif
80
81 #ifndef __IMemoryData_FWD_DEFINED__
82 #define __IMemoryData_FWD_DEFINED__
83 typedef interface IMemoryData IMemoryData;
84 #ifdef __cplusplus
85 interface IMemoryData;
86 #endif /* __cplusplus */
87 #endif
88
89 #ifndef __IAudioData_FWD_DEFINED__
90 #define __IAudioData_FWD_DEFINED__
91 typedef interface IAudioData IAudioData;
92 #ifdef __cplusplus
93 interface IAudioData;
94 #endif /* __cplusplus */
95 #endif
96
97 /*****************************************************************************
98 * IAudioMediaStream interface
99 */
100 #ifndef __IAudioMediaStream_INTERFACE_DEFINED__
101 #define __IAudioMediaStream_INTERFACE_DEFINED__
102
103 DEFINE_GUID(IID_IAudioMediaStream, 0xf7537560, 0xa3be, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
104 #if defined(__cplusplus) && !defined(CINTERFACE)
105 MIDL_INTERFACE("f7537560-a3be-11d0-8212-00c04fc32c45")
106 IAudioMediaStream : public IMediaStream
107 {
108 virtual HRESULT STDMETHODCALLTYPE GetFormat(
109 WAVEFORMATEX *pWaveFormatCurrent) = 0;
110
111 virtual HRESULT STDMETHODCALLTYPE SetFormat(
112 const WAVEFORMATEX *lpWaveFormat) = 0;
113
114 virtual HRESULT STDMETHODCALLTYPE CreateSample(
115 IAudioData *pAudioData,
116 DWORD dwFlags,
117 IAudioStreamSample **ppSample) = 0;
118
119 };
120 #ifdef __CRT_UUID_DECL
121 __CRT_UUID_DECL(IAudioMediaStream, 0xf7537560, 0xa3be, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45)
122 #endif
123 #else
124 typedef struct IAudioMediaStreamVtbl {
125 BEGIN_INTERFACE
126
127 /*** IUnknown methods ***/
128 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
129 IAudioMediaStream *This,
130 REFIID riid,
131 void **ppvObject);
132
133 ULONG (STDMETHODCALLTYPE *AddRef)(
134 IAudioMediaStream *This);
135
136 ULONG (STDMETHODCALLTYPE *Release)(
137 IAudioMediaStream *This);
138
139 /*** IMediaStream methods ***/
140 HRESULT (STDMETHODCALLTYPE *GetMultiMediaStream)(
141 IAudioMediaStream *This,
142 IMultiMediaStream **ppMultiMediaStream);
143
144 HRESULT (STDMETHODCALLTYPE *GetInformation)(
145 IAudioMediaStream *This,
146 MSPID *pPurposeId,
147 STREAM_TYPE *pType);
148
149 HRESULT (STDMETHODCALLTYPE *SetSameFormat)(
150 IAudioMediaStream *This,
151 IMediaStream *pStreamThatHasDesiredFormat,
152 DWORD dwFlags);
153
154 HRESULT (STDMETHODCALLTYPE *AllocateSample)(
155 IAudioMediaStream *This,
156 DWORD dwFlags,
157 IStreamSample **ppSample);
158
159 HRESULT (STDMETHODCALLTYPE *CreateSharedSample)(
160 IAudioMediaStream *This,
161 IStreamSample *pExistingSample,
162 DWORD dwFlags,
163 IStreamSample **ppNewSample);
164
165 HRESULT (STDMETHODCALLTYPE *SendEndOfStream)(
166 IAudioMediaStream *This,
167 DWORD dwFlags);
168
169 /*** IAudioMediaStream methods ***/
170 HRESULT (STDMETHODCALLTYPE *GetFormat)(
171 IAudioMediaStream *This,
172 WAVEFORMATEX *pWaveFormatCurrent);
173
174 HRESULT (STDMETHODCALLTYPE *SetFormat)(
175 IAudioMediaStream *This,
176 const WAVEFORMATEX *lpWaveFormat);
177
178 HRESULT (STDMETHODCALLTYPE *CreateSample)(
179 IAudioMediaStream *This,
180 IAudioData *pAudioData,
181 DWORD dwFlags,
182 IAudioStreamSample **ppSample);
183
184 END_INTERFACE
185 } IAudioMediaStreamVtbl;
186
187 interface IAudioMediaStream {
188 CONST_VTBL IAudioMediaStreamVtbl* lpVtbl;
189 };
190
191 #ifdef COBJMACROS
192 #ifndef WIDL_C_INLINE_WRAPPERS
193 /*** IUnknown methods ***/
194 #define IAudioMediaStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
195 #define IAudioMediaStream_AddRef(This) (This)->lpVtbl->AddRef(This)
196 #define IAudioMediaStream_Release(This) (This)->lpVtbl->Release(This)
197 /*** IMediaStream methods ***/
198 #define IAudioMediaStream_GetMultiMediaStream(This,ppMultiMediaStream) (This)->lpVtbl->GetMultiMediaStream(This,ppMultiMediaStream)
199 #define IAudioMediaStream_GetInformation(This,pPurposeId,pType) (This)->lpVtbl->GetInformation(This,pPurposeId,pType)
200 #define IAudioMediaStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) (This)->lpVtbl->SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)
201 #define IAudioMediaStream_AllocateSample(This,dwFlags,ppSample) (This)->lpVtbl->AllocateSample(This,dwFlags,ppSample)
202 #define IAudioMediaStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) (This)->lpVtbl->CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)
203 #define IAudioMediaStream_SendEndOfStream(This,dwFlags) (This)->lpVtbl->SendEndOfStream(This,dwFlags)
204 /*** IAudioMediaStream methods ***/
205 #define IAudioMediaStream_GetFormat(This,pWaveFormatCurrent) (This)->lpVtbl->GetFormat(This,pWaveFormatCurrent)
206 #define IAudioMediaStream_SetFormat(This,lpWaveFormat) (This)->lpVtbl->SetFormat(This,lpWaveFormat)
207 #define IAudioMediaStream_CreateSample(This,pAudioData,dwFlags,ppSample) (This)->lpVtbl->CreateSample(This,pAudioData,dwFlags,ppSample)
208 #else
209 /*** IUnknown methods ***/
210 static FORCEINLINE HRESULT IAudioMediaStream_QueryInterface(IAudioMediaStream* This,REFIID riid,void **ppvObject) {
211 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
212 }
213 static FORCEINLINE ULONG IAudioMediaStream_AddRef(IAudioMediaStream* This) {
214 return This->lpVtbl->AddRef(This);
215 }
216 static FORCEINLINE ULONG IAudioMediaStream_Release(IAudioMediaStream* This) {
217 return This->lpVtbl->Release(This);
218 }
219 /*** IMediaStream methods ***/
220 static FORCEINLINE HRESULT IAudioMediaStream_GetMultiMediaStream(IAudioMediaStream* This,IMultiMediaStream **ppMultiMediaStream) {
221 return This->lpVtbl->GetMultiMediaStream(This,ppMultiMediaStream);
222 }
223 static FORCEINLINE HRESULT IAudioMediaStream_GetInformation(IAudioMediaStream* This,MSPID *pPurposeId,STREAM_TYPE *pType) {
224 return This->lpVtbl->GetInformation(This,pPurposeId,pType);
225 }
226 static FORCEINLINE HRESULT IAudioMediaStream_SetSameFormat(IAudioMediaStream* This,IMediaStream *pStreamThatHasDesiredFormat,DWORD dwFlags) {
227 return This->lpVtbl->SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags);
228 }
229 static FORCEINLINE HRESULT IAudioMediaStream_AllocateSample(IAudioMediaStream* This,DWORD dwFlags,IStreamSample **ppSample) {
230 return This->lpVtbl->AllocateSample(This,dwFlags,ppSample);
231 }
232 static FORCEINLINE HRESULT IAudioMediaStream_CreateSharedSample(IAudioMediaStream* This,IStreamSample *pExistingSample,DWORD dwFlags,IStreamSample **ppNewSample) {
233 return This->lpVtbl->CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample);
234 }
235 static FORCEINLINE HRESULT IAudioMediaStream_SendEndOfStream(IAudioMediaStream* This,DWORD dwFlags) {
236 return This->lpVtbl->SendEndOfStream(This,dwFlags);
237 }
238 /*** IAudioMediaStream methods ***/
239 static FORCEINLINE HRESULT IAudioMediaStream_GetFormat(IAudioMediaStream* This,WAVEFORMATEX *pWaveFormatCurrent) {
240 return This->lpVtbl->GetFormat(This,pWaveFormatCurrent);
241 }
242 static FORCEINLINE HRESULT IAudioMediaStream_SetFormat(IAudioMediaStream* This,const WAVEFORMATEX *lpWaveFormat) {
243 return This->lpVtbl->SetFormat(This,lpWaveFormat);
244 }
245 static FORCEINLINE HRESULT IAudioMediaStream_CreateSample(IAudioMediaStream* This,IAudioData *pAudioData,DWORD dwFlags,IAudioStreamSample **ppSample) {
246 return This->lpVtbl->CreateSample(This,pAudioData,dwFlags,ppSample);
247 }
248 #endif
249 #endif
250
251 #endif
252
253
254 #endif /* __IAudioMediaStream_INTERFACE_DEFINED__ */
255
256 /*****************************************************************************
257 * IAudioStreamSample interface
258 */
259 #ifndef __IAudioStreamSample_INTERFACE_DEFINED__
260 #define __IAudioStreamSample_INTERFACE_DEFINED__
261
262 DEFINE_GUID(IID_IAudioStreamSample, 0x345fee00, 0xaba5, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
263 #if defined(__cplusplus) && !defined(CINTERFACE)
264 MIDL_INTERFACE("345fee00-aba5-11d0-8212-00c04fc32c45")
265 IAudioStreamSample : public IStreamSample
266 {
267 virtual HRESULT STDMETHODCALLTYPE GetAudioData(
268 IAudioData **ppAudio) = 0;
269
270 };
271 #ifdef __CRT_UUID_DECL
272 __CRT_UUID_DECL(IAudioStreamSample, 0x345fee00, 0xaba5, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45)
273 #endif
274 #else
275 typedef struct IAudioStreamSampleVtbl {
276 BEGIN_INTERFACE
277
278 /*** IUnknown methods ***/
279 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
280 IAudioStreamSample *This,
281 REFIID riid,
282 void **ppvObject);
283
284 ULONG (STDMETHODCALLTYPE *AddRef)(
285 IAudioStreamSample *This);
286
287 ULONG (STDMETHODCALLTYPE *Release)(
288 IAudioStreamSample *This);
289
290 /*** IStreamSample methods ***/
291 HRESULT (STDMETHODCALLTYPE *GetMediaStream)(
292 IAudioStreamSample *This,
293 IMediaStream **ppMediaStream);
294
295 HRESULT (STDMETHODCALLTYPE *GetSampleTimes)(
296 IAudioStreamSample *This,
297 STREAM_TIME *pStartTime,
298 STREAM_TIME *pEndTime,
299 STREAM_TIME *pCurrentTime);
300
301 HRESULT (STDMETHODCALLTYPE *SetSampleTimes)(
302 IAudioStreamSample *This,
303 const STREAM_TIME *pStartTime,
304 const STREAM_TIME *pEndTime);
305
306 HRESULT (STDMETHODCALLTYPE *Update)(
307 IAudioStreamSample *This,
308 DWORD dwFlags,
309 HANDLE hEvent,
310 PAPCFUNC pfnAPC,
311 DWORD dwAPCData);
312
313 HRESULT (STDMETHODCALLTYPE *CompletionStatus)(
314 IAudioStreamSample *This,
315 DWORD dwFlags,
316 DWORD dwMilliseconds);
317
318 /*** IAudioStreamSample methods ***/
319 HRESULT (STDMETHODCALLTYPE *GetAudioData)(
320 IAudioStreamSample *This,
321 IAudioData **ppAudio);
322
323 END_INTERFACE
324 } IAudioStreamSampleVtbl;
325
326 interface IAudioStreamSample {
327 CONST_VTBL IAudioStreamSampleVtbl* lpVtbl;
328 };
329
330 #ifdef COBJMACROS
331 #ifndef WIDL_C_INLINE_WRAPPERS
332 /*** IUnknown methods ***/
333 #define IAudioStreamSample_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
334 #define IAudioStreamSample_AddRef(This) (This)->lpVtbl->AddRef(This)
335 #define IAudioStreamSample_Release(This) (This)->lpVtbl->Release(This)
336 /*** IStreamSample methods ***/
337 #define IAudioStreamSample_GetMediaStream(This,ppMediaStream) (This)->lpVtbl->GetMediaStream(This,ppMediaStream)
338 #define IAudioStreamSample_GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime) (This)->lpVtbl->GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)
339 #define IAudioStreamSample_SetSampleTimes(This,pStartTime,pEndTime) (This)->lpVtbl->SetSampleTimes(This,pStartTime,pEndTime)
340 #define IAudioStreamSample_Update(This,dwFlags,hEvent,pfnAPC,dwAPCData) (This)->lpVtbl->Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)
341 #define IAudioStreamSample_CompletionStatus(This,dwFlags,dwMilliseconds) (This)->lpVtbl->CompletionStatus(This,dwFlags,dwMilliseconds)
342 /*** IAudioStreamSample methods ***/
343 #define IAudioStreamSample_GetAudioData(This,ppAudio) (This)->lpVtbl->GetAudioData(This,ppAudio)
344 #else
345 /*** IUnknown methods ***/
346 static FORCEINLINE HRESULT IAudioStreamSample_QueryInterface(IAudioStreamSample* This,REFIID riid,void **ppvObject) {
347 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
348 }
349 static FORCEINLINE ULONG IAudioStreamSample_AddRef(IAudioStreamSample* This) {
350 return This->lpVtbl->AddRef(This);
351 }
352 static FORCEINLINE ULONG IAudioStreamSample_Release(IAudioStreamSample* This) {
353 return This->lpVtbl->Release(This);
354 }
355 /*** IStreamSample methods ***/
356 static FORCEINLINE HRESULT IAudioStreamSample_GetMediaStream(IAudioStreamSample* This,IMediaStream **ppMediaStream) {
357 return This->lpVtbl->GetMediaStream(This,ppMediaStream);
358 }
359 static FORCEINLINE HRESULT IAudioStreamSample_GetSampleTimes(IAudioStreamSample* This,STREAM_TIME *pStartTime,STREAM_TIME *pEndTime,STREAM_TIME *pCurrentTime) {
360 return This->lpVtbl->GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime);
361 }
362 static FORCEINLINE HRESULT IAudioStreamSample_SetSampleTimes(IAudioStreamSample* This,const STREAM_TIME *pStartTime,const STREAM_TIME *pEndTime) {
363 return This->lpVtbl->SetSampleTimes(This,pStartTime,pEndTime);
364 }
365 static FORCEINLINE HRESULT IAudioStreamSample_Update(IAudioStreamSample* This,DWORD dwFlags,HANDLE hEvent,PAPCFUNC pfnAPC,DWORD dwAPCData) {
366 return This->lpVtbl->Update(This,dwFlags,hEvent,pfnAPC,dwAPCData);
367 }
368 static FORCEINLINE HRESULT IAudioStreamSample_CompletionStatus(IAudioStreamSample* This,DWORD dwFlags,DWORD dwMilliseconds) {
369 return This->lpVtbl->CompletionStatus(This,dwFlags,dwMilliseconds);
370 }
371 /*** IAudioStreamSample methods ***/
372 static FORCEINLINE HRESULT IAudioStreamSample_GetAudioData(IAudioStreamSample* This,IAudioData **ppAudio) {
373 return This->lpVtbl->GetAudioData(This,ppAudio);
374 }
375 #endif
376 #endif
377
378 #endif
379
380
381 #endif /* __IAudioStreamSample_INTERFACE_DEFINED__ */
382
383 /*****************************************************************************
384 * IMemoryData interface
385 */
386 #ifndef __IMemoryData_INTERFACE_DEFINED__
387 #define __IMemoryData_INTERFACE_DEFINED__
388
389 DEFINE_GUID(IID_IMemoryData, 0x327fc560, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
390 #if defined(__cplusplus) && !defined(CINTERFACE)
391 MIDL_INTERFACE("327fc560-af60-11d0-8212-00c04fc32c45")
392 IMemoryData : public IUnknown
393 {
394 virtual HRESULT STDMETHODCALLTYPE SetBuffer(
395 DWORD cbSize,
396 BYTE *pbData,
397 DWORD dwFlags) = 0;
398
399 virtual HRESULT STDMETHODCALLTYPE GetInfo(
400 DWORD *pdwLength,
401 BYTE **ppbData,
402 DWORD *pcbActualData) = 0;
403
404 virtual HRESULT STDMETHODCALLTYPE SetActual(
405 DWORD cbDataValid) = 0;
406
407 };
408 #ifdef __CRT_UUID_DECL
409 __CRT_UUID_DECL(IMemoryData, 0x327fc560, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45)
410 #endif
411 #else
412 typedef struct IMemoryDataVtbl {
413 BEGIN_INTERFACE
414
415 /*** IUnknown methods ***/
416 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
417 IMemoryData *This,
418 REFIID riid,
419 void **ppvObject);
420
421 ULONG (STDMETHODCALLTYPE *AddRef)(
422 IMemoryData *This);
423
424 ULONG (STDMETHODCALLTYPE *Release)(
425 IMemoryData *This);
426
427 /*** IMemoryData methods ***/
428 HRESULT (STDMETHODCALLTYPE *SetBuffer)(
429 IMemoryData *This,
430 DWORD cbSize,
431 BYTE *pbData,
432 DWORD dwFlags);
433
434 HRESULT (STDMETHODCALLTYPE *GetInfo)(
435 IMemoryData *This,
436 DWORD *pdwLength,
437 BYTE **ppbData,
438 DWORD *pcbActualData);
439
440 HRESULT (STDMETHODCALLTYPE *SetActual)(
441 IMemoryData *This,
442 DWORD cbDataValid);
443
444 END_INTERFACE
445 } IMemoryDataVtbl;
446
447 interface IMemoryData {
448 CONST_VTBL IMemoryDataVtbl* lpVtbl;
449 };
450
451 #ifdef COBJMACROS
452 #ifndef WIDL_C_INLINE_WRAPPERS
453 /*** IUnknown methods ***/
454 #define IMemoryData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
455 #define IMemoryData_AddRef(This) (This)->lpVtbl->AddRef(This)
456 #define IMemoryData_Release(This) (This)->lpVtbl->Release(This)
457 /*** IMemoryData methods ***/
458 #define IMemoryData_SetBuffer(This,cbSize,pbData,dwFlags) (This)->lpVtbl->SetBuffer(This,cbSize,pbData,dwFlags)
459 #define IMemoryData_GetInfo(This,pdwLength,ppbData,pcbActualData) (This)->lpVtbl->GetInfo(This,pdwLength,ppbData,pcbActualData)
460 #define IMemoryData_SetActual(This,cbDataValid) (This)->lpVtbl->SetActual(This,cbDataValid)
461 #else
462 /*** IUnknown methods ***/
463 static FORCEINLINE HRESULT IMemoryData_QueryInterface(IMemoryData* This,REFIID riid,void **ppvObject) {
464 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
465 }
466 static FORCEINLINE ULONG IMemoryData_AddRef(IMemoryData* This) {
467 return This->lpVtbl->AddRef(This);
468 }
469 static FORCEINLINE ULONG IMemoryData_Release(IMemoryData* This) {
470 return This->lpVtbl->Release(This);
471 }
472 /*** IMemoryData methods ***/
473 static FORCEINLINE HRESULT IMemoryData_SetBuffer(IMemoryData* This,DWORD cbSize,BYTE *pbData,DWORD dwFlags) {
474 return This->lpVtbl->SetBuffer(This,cbSize,pbData,dwFlags);
475 }
476 static FORCEINLINE HRESULT IMemoryData_GetInfo(IMemoryData* This,DWORD *pdwLength,BYTE **ppbData,DWORD *pcbActualData) {
477 return This->lpVtbl->GetInfo(This,pdwLength,ppbData,pcbActualData);
478 }
479 static FORCEINLINE HRESULT IMemoryData_SetActual(IMemoryData* This,DWORD cbDataValid) {
480 return This->lpVtbl->SetActual(This,cbDataValid);
481 }
482 #endif
483 #endif
484
485 #endif
486
487
488 #endif /* __IMemoryData_INTERFACE_DEFINED__ */
489
490 /*****************************************************************************
491 * IAudioData interface
492 */
493 #ifndef __IAudioData_INTERFACE_DEFINED__
494 #define __IAudioData_INTERFACE_DEFINED__
495
496 DEFINE_GUID(IID_IAudioData, 0x54c719c0, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
497 #if defined(__cplusplus) && !defined(CINTERFACE)
498 MIDL_INTERFACE("54c719c0-af60-11d0-8212-00c04fc32c45")
499 IAudioData : public IMemoryData
500 {
501 virtual HRESULT STDMETHODCALLTYPE GetFormat(
502 WAVEFORMATEX *pWaveFormatCurrent) = 0;
503
504 virtual HRESULT STDMETHODCALLTYPE SetFormat(
505 const WAVEFORMATEX *lpWaveFormat) = 0;
506
507 };
508 #ifdef __CRT_UUID_DECL
509 __CRT_UUID_DECL(IAudioData, 0x54c719c0, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45)
510 #endif
511 #else
512 typedef struct IAudioDataVtbl {
513 BEGIN_INTERFACE
514
515 /*** IUnknown methods ***/
516 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
517 IAudioData *This,
518 REFIID riid,
519 void **ppvObject);
520
521 ULONG (STDMETHODCALLTYPE *AddRef)(
522 IAudioData *This);
523
524 ULONG (STDMETHODCALLTYPE *Release)(
525 IAudioData *This);
526
527 /*** IMemoryData methods ***/
528 HRESULT (STDMETHODCALLTYPE *SetBuffer)(
529 IAudioData *This,
530 DWORD cbSize,
531 BYTE *pbData,
532 DWORD dwFlags);
533
534 HRESULT (STDMETHODCALLTYPE *GetInfo)(
535 IAudioData *This,
536 DWORD *pdwLength,
537 BYTE **ppbData,
538 DWORD *pcbActualData);
539
540 HRESULT (STDMETHODCALLTYPE *SetActual)(
541 IAudioData *This,
542 DWORD cbDataValid);
543
544 /*** IAudioData methods ***/
545 HRESULT (STDMETHODCALLTYPE *GetFormat)(
546 IAudioData *This,
547 WAVEFORMATEX *pWaveFormatCurrent);
548
549 HRESULT (STDMETHODCALLTYPE *SetFormat)(
550 IAudioData *This,
551 const WAVEFORMATEX *lpWaveFormat);
552
553 END_INTERFACE
554 } IAudioDataVtbl;
555
556 interface IAudioData {
557 CONST_VTBL IAudioDataVtbl* lpVtbl;
558 };
559
560 #ifdef COBJMACROS
561 #ifndef WIDL_C_INLINE_WRAPPERS
562 /*** IUnknown methods ***/
563 #define IAudioData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
564 #define IAudioData_AddRef(This) (This)->lpVtbl->AddRef(This)
565 #define IAudioData_Release(This) (This)->lpVtbl->Release(This)
566 /*** IMemoryData methods ***/
567 #define IAudioData_SetBuffer(This,cbSize,pbData,dwFlags) (This)->lpVtbl->SetBuffer(This,cbSize,pbData,dwFlags)
568 #define IAudioData_GetInfo(This,pdwLength,ppbData,pcbActualData) (This)->lpVtbl->GetInfo(This,pdwLength,ppbData,pcbActualData)
569 #define IAudioData_SetActual(This,cbDataValid) (This)->lpVtbl->SetActual(This,cbDataValid)
570 /*** IAudioData methods ***/
571 #define IAudioData_GetFormat(This,pWaveFormatCurrent) (This)->lpVtbl->GetFormat(This,pWaveFormatCurrent)
572 #define IAudioData_SetFormat(This,lpWaveFormat) (This)->lpVtbl->SetFormat(This,lpWaveFormat)
573 #else
574 /*** IUnknown methods ***/
575 static FORCEINLINE HRESULT IAudioData_QueryInterface(IAudioData* This,REFIID riid,void **ppvObject) {
576 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
577 }
578 static FORCEINLINE ULONG IAudioData_AddRef(IAudioData* This) {
579 return This->lpVtbl->AddRef(This);
580 }
581 static FORCEINLINE ULONG IAudioData_Release(IAudioData* This) {
582 return This->lpVtbl->Release(This);
583 }
584 /*** IMemoryData methods ***/
585 static FORCEINLINE HRESULT IAudioData_SetBuffer(IAudioData* This,DWORD cbSize,BYTE *pbData,DWORD dwFlags) {
586 return This->lpVtbl->SetBuffer(This,cbSize,pbData,dwFlags);
587 }
588 static FORCEINLINE HRESULT IAudioData_GetInfo(IAudioData* This,DWORD *pdwLength,BYTE **ppbData,DWORD *pcbActualData) {
589 return This->lpVtbl->GetInfo(This,pdwLength,ppbData,pcbActualData);
590 }
591 static FORCEINLINE HRESULT IAudioData_SetActual(IAudioData* This,DWORD cbDataValid) {
592 return This->lpVtbl->SetActual(This,cbDataValid);
593 }
594 /*** IAudioData methods ***/
595 static FORCEINLINE HRESULT IAudioData_GetFormat(IAudioData* This,WAVEFORMATEX *pWaveFormatCurrent) {
596 return This->lpVtbl->GetFormat(This,pWaveFormatCurrent);
597 }
598 static FORCEINLINE HRESULT IAudioData_SetFormat(IAudioData* This,const WAVEFORMATEX *lpWaveFormat) {
599 return This->lpVtbl->SetFormat(This,lpWaveFormat);
600 }
601 #endif
602 #endif
603
604 #endif
605
606
607 #endif /* __IAudioData_INTERFACE_DEFINED__ */
608
609 /* Begin additional prototypes for all interfaces */
610
611
612 /* End additional prototypes */
613
614 #ifdef __cplusplus
615 }
616 #endif
617
618 #endif /* __austream_h__ */