2004-03-09 02:29:56 +01:00
|
|
|
/*** Autogenerated by WIDL 0.1 from austream.idl - Do not edit ***/
|
|
|
|
#include <rpc.h>
|
|
|
|
#include <rpcndr.h>
|
|
|
|
|
|
|
|
#ifndef __WIDL_AUSTREAM_H
|
|
|
|
#define __WIDL_AUSTREAM_H
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
#include <unknwn.h>
|
|
|
|
#include <mmstream.h>
|
|
|
|
#if 0
|
|
|
|
typedef struct tWAVEFORMATEX WAVEFORMATEX;
|
|
|
|
|
|
|
|
#endif
|
|
|
|
#ifndef __IAudioMediaStream_FWD_DEFINED__
|
|
|
|
#define __IAudioMediaStream_FWD_DEFINED__
|
|
|
|
typedef struct IAudioMediaStream IAudioMediaStream;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef __IAudioStreamSample_FWD_DEFINED__
|
|
|
|
#define __IAudioStreamSample_FWD_DEFINED__
|
|
|
|
typedef struct IAudioStreamSample IAudioStreamSample;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef __IMemoryData_FWD_DEFINED__
|
|
|
|
#define __IMemoryData_FWD_DEFINED__
|
|
|
|
typedef struct IMemoryData IMemoryData;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef __IAudioData_FWD_DEFINED__
|
|
|
|
#define __IAudioData_FWD_DEFINED__
|
|
|
|
typedef struct IAudioData IAudioData;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/*****************************************************************************
|
|
|
|
* IAudioMediaStream interface
|
|
|
|
*/
|
|
|
|
#ifndef __IAudioMediaStream_INTERFACE_DEFINED__
|
|
|
|
#define __IAudioMediaStream_INTERFACE_DEFINED__
|
|
|
|
|
|
|
|
DEFINE_GUID(IID_IAudioMediaStream, 0xf7537560, 0xa3be, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
struct IAudioMediaStream : public IMediaStream
|
|
|
|
{
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFormat(
|
|
|
|
WAVEFORMATEX* pWaveFormatCurrent) = 0;
|
|
|
|
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFormat(
|
|
|
|
const WAVEFORMATEX* lpWaveFormat) = 0;
|
|
|
|
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateSample(
|
|
|
|
IAudioData* pAudioData,
|
|
|
|
DWORD dwFlags,
|
|
|
|
IAudioStreamSample** ppSample) = 0;
|
|
|
|
|
|
|
|
};
|
|
|
|
#else
|
|
|
|
typedef struct IAudioMediaStreamVtbl IAudioMediaStreamVtbl;
|
|
|
|
struct IAudioMediaStream {
|
|
|
|
const IAudioMediaStreamVtbl* lpVtbl;
|
|
|
|
};
|
|
|
|
struct IAudioMediaStreamVtbl {
|
2004-08-22 04:25:05 +02:00
|
|
|
BEGIN_INTERFACE
|
2004-03-09 02:29:56 +01:00
|
|
|
|
|
|
|
/*** IUnknown methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
REFIID riid,
|
|
|
|
void** ppvObject);
|
|
|
|
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
|
|
IAudioMediaStream* This);
|
|
|
|
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
|
|
IAudioMediaStream* This);
|
|
|
|
|
|
|
|
/*** IMediaStream methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetMultiMediaStream)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
IMultiMediaStream** ppMultiMediaStream);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetInformation)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
MSPID* pPurposeId,
|
|
|
|
STREAM_TYPE* pType);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetSameFormat)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
IMediaStream* pStreamThatHasDesiredFormat,
|
|
|
|
DWORD dwFlags);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *AllocateSample)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
DWORD dwFlags,
|
|
|
|
IStreamSample** ppSample);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CreateSharedSample)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
IStreamSample* pExistingSample,
|
|
|
|
DWORD dwFlags,
|
|
|
|
IStreamSample** ppNewSample);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SendEndOfStream)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
DWORD dwFlags);
|
|
|
|
|
|
|
|
/*** IAudioMediaStream methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetFormat)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
WAVEFORMATEX* pWaveFormatCurrent);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetFormat)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
const WAVEFORMATEX* lpWaveFormat);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CreateSample)(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
IAudioData* pAudioData,
|
|
|
|
DWORD dwFlags,
|
|
|
|
IAudioStreamSample** ppSample);
|
|
|
|
|
2004-08-22 04:25:05 +02:00
|
|
|
END_INTERFACE
|
2004-03-09 02:29:56 +01:00
|
|
|
};
|
|
|
|
|
2004-08-11 21:43:45 +02:00
|
|
|
#ifdef COBJMACROS
|
2004-03-09 02:29:56 +01:00
|
|
|
/*** IUnknown methods ***/
|
|
|
|
#define IAudioMediaStream_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
|
|
|
#define IAudioMediaStream_AddRef(p) (p)->lpVtbl->AddRef(p)
|
|
|
|
#define IAudioMediaStream_Release(p) (p)->lpVtbl->Release(p)
|
|
|
|
/*** IMediaStream methods ***/
|
|
|
|
#define IAudioMediaStream_GetMultiMediaStream(p,a) (p)->lpVtbl->GetMultiMediaStream(p,a)
|
|
|
|
#define IAudioMediaStream_GetInformation(p,a,b) (p)->lpVtbl->GetInformation(p,a,b)
|
|
|
|
#define IAudioMediaStream_SetSameFormat(p,a,b) (p)->lpVtbl->SetSameFormat(p,a,b)
|
|
|
|
#define IAudioMediaStream_AllocateSample(p,a,b) (p)->lpVtbl->AllocateSample(p,a,b)
|
|
|
|
#define IAudioMediaStream_CreateSharedSample(p,a,b,c) (p)->lpVtbl->CreateSharedSample(p,a,b,c)
|
|
|
|
#define IAudioMediaStream_SendEndOfStream(p,a) (p)->lpVtbl->SendEndOfStream(p,a)
|
|
|
|
/*** IAudioMediaStream methods ***/
|
|
|
|
#define IAudioMediaStream_GetFormat(p,a) (p)->lpVtbl->GetFormat(p,a)
|
|
|
|
#define IAudioMediaStream_SetFormat(p,a) (p)->lpVtbl->SetFormat(p,a)
|
|
|
|
#define IAudioMediaStream_CreateSample(p,a,b,c) (p)->lpVtbl->CreateSample(p,a,b,c)
|
2004-08-11 21:43:45 +02:00
|
|
|
#endif
|
2004-03-09 02:29:56 +01:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define IAudioMediaStream_METHODS \
|
|
|
|
/*** IUnknown methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
|
|
|
|
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
|
|
|
|
STDMETHOD_(ULONG,Release)(THIS) PURE; \
|
|
|
|
/*** IMediaStream methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,GetMultiMediaStream)(THIS_ IMultiMediaStream** ppMultiMediaStream) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,GetInformation)(THIS_ MSPID* pPurposeId, STREAM_TYPE* pType) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,SetSameFormat)(THIS_ IMediaStream* pStreamThatHasDesiredFormat, DWORD dwFlags) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,AllocateSample)(THIS_ DWORD dwFlags, IStreamSample** ppSample) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,CreateSharedSample)(THIS_ IStreamSample* pExistingSample, DWORD dwFlags, IStreamSample** ppNewSample) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,SendEndOfStream)(THIS_ DWORD dwFlags) PURE; \
|
|
|
|
/*** IAudioMediaStream methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,GetFormat)(THIS_ WAVEFORMATEX* pWaveFormatCurrent) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,SetFormat)(THIS_ const WAVEFORMATEX* lpWaveFormat) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,CreateSample)(THIS_ IAudioData* pAudioData, DWORD dwFlags, IAudioStreamSample** ppSample) PURE;
|
|
|
|
|
|
|
|
HRESULT CALLBACK IAudioMediaStream_GetFormat_Proxy(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
WAVEFORMATEX* pWaveFormatCurrent);
|
|
|
|
void __RPC_STUB IAudioMediaStream_GetFormat_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
HRESULT CALLBACK IAudioMediaStream_SetFormat_Proxy(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
const WAVEFORMATEX* lpWaveFormat);
|
|
|
|
void __RPC_STUB IAudioMediaStream_SetFormat_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
HRESULT CALLBACK IAudioMediaStream_CreateSample_Proxy(
|
|
|
|
IAudioMediaStream* This,
|
|
|
|
IAudioData* pAudioData,
|
|
|
|
DWORD dwFlags,
|
|
|
|
IAudioStreamSample** ppSample);
|
|
|
|
void __RPC_STUB IAudioMediaStream_CreateSample_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
|
|
|
|
#endif /* __IAudioMediaStream_INTERFACE_DEFINED__ */
|
|
|
|
|
|
|
|
/*****************************************************************************
|
|
|
|
* IAudioStreamSample interface
|
|
|
|
*/
|
|
|
|
#ifndef __IAudioStreamSample_INTERFACE_DEFINED__
|
|
|
|
#define __IAudioStreamSample_INTERFACE_DEFINED__
|
|
|
|
|
|
|
|
DEFINE_GUID(IID_IAudioStreamSample, 0x345fee00, 0xaba5, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
struct IAudioStreamSample : public IStreamSample
|
|
|
|
{
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAudioData(
|
|
|
|
IAudioData** ppAudio) = 0;
|
|
|
|
|
|
|
|
};
|
|
|
|
#else
|
|
|
|
typedef struct IAudioStreamSampleVtbl IAudioStreamSampleVtbl;
|
|
|
|
struct IAudioStreamSample {
|
|
|
|
const IAudioStreamSampleVtbl* lpVtbl;
|
|
|
|
};
|
|
|
|
struct IAudioStreamSampleVtbl {
|
2004-08-22 04:25:05 +02:00
|
|
|
BEGIN_INTERFACE
|
2004-03-09 02:29:56 +01:00
|
|
|
|
|
|
|
/*** IUnknown methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
|
|
IAudioStreamSample* This,
|
|
|
|
REFIID riid,
|
|
|
|
void** ppvObject);
|
|
|
|
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
|
|
IAudioStreamSample* This);
|
|
|
|
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
|
|
IAudioStreamSample* This);
|
|
|
|
|
|
|
|
/*** IStreamSample methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetMediaStream)(
|
|
|
|
IAudioStreamSample* This,
|
|
|
|
IMediaStream** ppMediaStream);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetSampleTimes)(
|
|
|
|
IAudioStreamSample* This,
|
|
|
|
STREAM_TIME* pStartTime,
|
|
|
|
STREAM_TIME* pEndTime,
|
|
|
|
STREAM_TIME* pCurrentTime);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetSampleTimes)(
|
|
|
|
IAudioStreamSample* This,
|
|
|
|
const STREAM_TIME* pStartTime,
|
|
|
|
const STREAM_TIME* pEndTime);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Update)(
|
|
|
|
IAudioStreamSample* This,
|
|
|
|
DWORD dwFlags,
|
|
|
|
HANDLE hEvent,
|
|
|
|
PAPCFUNC pfnAPC,
|
|
|
|
DWORD dwAPCData);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CompletionStatus)(
|
|
|
|
IAudioStreamSample* This,
|
|
|
|
DWORD dwFlags,
|
|
|
|
DWORD dwMilliseconds);
|
|
|
|
|
|
|
|
/*** IAudioStreamSample methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAudioData)(
|
|
|
|
IAudioStreamSample* This,
|
|
|
|
IAudioData** ppAudio);
|
|
|
|
|
2004-08-22 04:25:05 +02:00
|
|
|
END_INTERFACE
|
2004-03-09 02:29:56 +01:00
|
|
|
};
|
|
|
|
|
2004-08-11 21:43:45 +02:00
|
|
|
#ifdef COBJMACROS
|
2004-03-09 02:29:56 +01:00
|
|
|
/*** IUnknown methods ***/
|
|
|
|
#define IAudioStreamSample_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
|
|
|
#define IAudioStreamSample_AddRef(p) (p)->lpVtbl->AddRef(p)
|
|
|
|
#define IAudioStreamSample_Release(p) (p)->lpVtbl->Release(p)
|
|
|
|
/*** IStreamSample methods ***/
|
|
|
|
#define IAudioStreamSample_GetMediaStream(p,a) (p)->lpVtbl->GetMediaStream(p,a)
|
|
|
|
#define IAudioStreamSample_GetSampleTimes(p,a,b,c) (p)->lpVtbl->GetSampleTimes(p,a,b,c)
|
|
|
|
#define IAudioStreamSample_SetSampleTimes(p,a,b) (p)->lpVtbl->SetSampleTimes(p,a,b)
|
|
|
|
#define IAudioStreamSample_Update(p,a,b,c,d) (p)->lpVtbl->Update(p,a,b,c,d)
|
|
|
|
#define IAudioStreamSample_CompletionStatus(p,a,b) (p)->lpVtbl->CompletionStatus(p,a,b)
|
|
|
|
/*** IAudioStreamSample methods ***/
|
|
|
|
#define IAudioStreamSample_GetAudioData(p,a) (p)->lpVtbl->GetAudioData(p,a)
|
2004-08-11 21:43:45 +02:00
|
|
|
#endif
|
2004-03-09 02:29:56 +01:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define IAudioStreamSample_METHODS \
|
|
|
|
/*** IUnknown methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
|
|
|
|
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
|
|
|
|
STDMETHOD_(ULONG,Release)(THIS) PURE; \
|
|
|
|
/*** IStreamSample methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,GetMediaStream)(THIS_ IMediaStream** ppMediaStream) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,GetSampleTimes)(THIS_ STREAM_TIME* pStartTime, STREAM_TIME* pEndTime, STREAM_TIME* pCurrentTime) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,SetSampleTimes)(THIS_ const STREAM_TIME* pStartTime, const STREAM_TIME* pEndTime) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,Update)(THIS_ DWORD dwFlags, HANDLE hEvent, PAPCFUNC pfnAPC, DWORD dwAPCData) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,CompletionStatus)(THIS_ DWORD dwFlags, DWORD dwMilliseconds) PURE; \
|
|
|
|
/*** IAudioStreamSample methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,GetAudioData)(THIS_ IAudioData** ppAudio) PURE;
|
|
|
|
|
|
|
|
HRESULT CALLBACK IAudioStreamSample_GetAudioData_Proxy(
|
|
|
|
IAudioStreamSample* This,
|
|
|
|
IAudioData** ppAudio);
|
|
|
|
void __RPC_STUB IAudioStreamSample_GetAudioData_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
|
|
|
|
#endif /* __IAudioStreamSample_INTERFACE_DEFINED__ */
|
|
|
|
|
|
|
|
/*****************************************************************************
|
|
|
|
* IMemoryData interface
|
|
|
|
*/
|
|
|
|
#ifndef __IMemoryData_INTERFACE_DEFINED__
|
|
|
|
#define __IMemoryData_INTERFACE_DEFINED__
|
|
|
|
|
|
|
|
DEFINE_GUID(IID_IMemoryData, 0x327fc560, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
struct IMemoryData : public IUnknown
|
|
|
|
{
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetBuffer(
|
|
|
|
DWORD cbSize,
|
|
|
|
BYTE* pbData,
|
|
|
|
DWORD dwFlags) = 0;
|
|
|
|
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetInfo(
|
|
|
|
DWORD* pdwLength,
|
|
|
|
BYTE** ppbData,
|
|
|
|
DWORD* pcbActualData) = 0;
|
|
|
|
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetActual(
|
|
|
|
DWORD cbDataValid) = 0;
|
|
|
|
|
|
|
|
};
|
|
|
|
#else
|
|
|
|
typedef struct IMemoryDataVtbl IMemoryDataVtbl;
|
|
|
|
struct IMemoryData {
|
|
|
|
const IMemoryDataVtbl* lpVtbl;
|
|
|
|
};
|
|
|
|
struct IMemoryDataVtbl {
|
2004-08-22 04:25:05 +02:00
|
|
|
BEGIN_INTERFACE
|
2004-03-09 02:29:56 +01:00
|
|
|
|
|
|
|
/*** IUnknown methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
|
|
IMemoryData* This,
|
|
|
|
REFIID riid,
|
|
|
|
void** ppvObject);
|
|
|
|
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
|
|
IMemoryData* This);
|
|
|
|
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
|
|
IMemoryData* This);
|
|
|
|
|
|
|
|
/*** IMemoryData methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBuffer)(
|
|
|
|
IMemoryData* This,
|
|
|
|
DWORD cbSize,
|
|
|
|
BYTE* pbData,
|
|
|
|
DWORD dwFlags);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetInfo)(
|
|
|
|
IMemoryData* This,
|
|
|
|
DWORD* pdwLength,
|
|
|
|
BYTE** ppbData,
|
|
|
|
DWORD* pcbActualData);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetActual)(
|
|
|
|
IMemoryData* This,
|
|
|
|
DWORD cbDataValid);
|
|
|
|
|
2004-08-22 04:25:05 +02:00
|
|
|
END_INTERFACE
|
2004-03-09 02:29:56 +01:00
|
|
|
};
|
|
|
|
|
2004-08-11 21:43:45 +02:00
|
|
|
#ifdef COBJMACROS
|
2004-03-09 02:29:56 +01:00
|
|
|
/*** IUnknown methods ***/
|
|
|
|
#define IMemoryData_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
|
|
|
#define IMemoryData_AddRef(p) (p)->lpVtbl->AddRef(p)
|
|
|
|
#define IMemoryData_Release(p) (p)->lpVtbl->Release(p)
|
|
|
|
/*** IMemoryData methods ***/
|
|
|
|
#define IMemoryData_SetBuffer(p,a,b,c) (p)->lpVtbl->SetBuffer(p,a,b,c)
|
|
|
|
#define IMemoryData_GetInfo(p,a,b,c) (p)->lpVtbl->GetInfo(p,a,b,c)
|
|
|
|
#define IMemoryData_SetActual(p,a) (p)->lpVtbl->SetActual(p,a)
|
2004-08-11 21:43:45 +02:00
|
|
|
#endif
|
2004-03-09 02:29:56 +01:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define IMemoryData_METHODS \
|
|
|
|
/*** IUnknown methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
|
|
|
|
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
|
|
|
|
STDMETHOD_(ULONG,Release)(THIS) PURE; \
|
|
|
|
/*** IMemoryData methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,SetBuffer)(THIS_ DWORD cbSize, BYTE* pbData, DWORD dwFlags) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,GetInfo)(THIS_ DWORD* pdwLength, BYTE** ppbData, DWORD* pcbActualData) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,SetActual)(THIS_ DWORD cbDataValid) PURE;
|
|
|
|
|
|
|
|
HRESULT CALLBACK IMemoryData_SetBuffer_Proxy(
|
|
|
|
IMemoryData* This,
|
|
|
|
DWORD cbSize,
|
|
|
|
BYTE* pbData,
|
|
|
|
DWORD dwFlags);
|
|
|
|
void __RPC_STUB IMemoryData_SetBuffer_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
HRESULT CALLBACK IMemoryData_GetInfo_Proxy(
|
|
|
|
IMemoryData* This,
|
|
|
|
DWORD* pdwLength,
|
|
|
|
BYTE** ppbData,
|
|
|
|
DWORD* pcbActualData);
|
|
|
|
void __RPC_STUB IMemoryData_GetInfo_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
HRESULT CALLBACK IMemoryData_SetActual_Proxy(
|
|
|
|
IMemoryData* This,
|
|
|
|
DWORD cbDataValid);
|
|
|
|
void __RPC_STUB IMemoryData_SetActual_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
|
|
|
|
#endif /* __IMemoryData_INTERFACE_DEFINED__ */
|
|
|
|
|
|
|
|
/*****************************************************************************
|
|
|
|
* IAudioData interface
|
|
|
|
*/
|
|
|
|
#ifndef __IAudioData_INTERFACE_DEFINED__
|
|
|
|
#define __IAudioData_INTERFACE_DEFINED__
|
|
|
|
|
|
|
|
DEFINE_GUID(IID_IAudioData, 0x54c719c0, 0xaf60, 0x11d0, 0x82,0x12, 0x00,0xc0,0x4f,0xc3,0x2c,0x45);
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
struct IAudioData : public IMemoryData
|
|
|
|
{
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFormat(
|
|
|
|
WAVEFORMATEX* pWaveFormatCurrent) = 0;
|
|
|
|
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFormat(
|
|
|
|
const WAVEFORMATEX* lpWaveFormat) = 0;
|
|
|
|
|
|
|
|
};
|
|
|
|
#else
|
|
|
|
typedef struct IAudioDataVtbl IAudioDataVtbl;
|
|
|
|
struct IAudioData {
|
|
|
|
const IAudioDataVtbl* lpVtbl;
|
|
|
|
};
|
|
|
|
struct IAudioDataVtbl {
|
2004-08-22 04:25:05 +02:00
|
|
|
BEGIN_INTERFACE
|
2004-03-09 02:29:56 +01:00
|
|
|
|
|
|
|
/*** IUnknown methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
|
|
IAudioData* This,
|
|
|
|
REFIID riid,
|
|
|
|
void** ppvObject);
|
|
|
|
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
|
|
IAudioData* This);
|
|
|
|
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
|
|
IAudioData* This);
|
|
|
|
|
|
|
|
/*** IMemoryData methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBuffer)(
|
|
|
|
IAudioData* This,
|
|
|
|
DWORD cbSize,
|
|
|
|
BYTE* pbData,
|
|
|
|
DWORD dwFlags);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetInfo)(
|
|
|
|
IAudioData* This,
|
|
|
|
DWORD* pdwLength,
|
|
|
|
BYTE** ppbData,
|
|
|
|
DWORD* pcbActualData);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetActual)(
|
|
|
|
IAudioData* This,
|
|
|
|
DWORD cbDataValid);
|
|
|
|
|
|
|
|
/*** IAudioData methods ***/
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetFormat)(
|
|
|
|
IAudioData* This,
|
|
|
|
WAVEFORMATEX* pWaveFormatCurrent);
|
|
|
|
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetFormat)(
|
|
|
|
IAudioData* This,
|
|
|
|
const WAVEFORMATEX* lpWaveFormat);
|
|
|
|
|
2004-08-22 04:25:05 +02:00
|
|
|
END_INTERFACE
|
2004-03-09 02:29:56 +01:00
|
|
|
};
|
|
|
|
|
2004-08-11 21:43:45 +02:00
|
|
|
#ifdef COBJMACROS
|
2004-03-09 02:29:56 +01:00
|
|
|
/*** IUnknown methods ***/
|
|
|
|
#define IAudioData_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
|
|
|
|
#define IAudioData_AddRef(p) (p)->lpVtbl->AddRef(p)
|
|
|
|
#define IAudioData_Release(p) (p)->lpVtbl->Release(p)
|
|
|
|
/*** IMemoryData methods ***/
|
|
|
|
#define IAudioData_SetBuffer(p,a,b,c) (p)->lpVtbl->SetBuffer(p,a,b,c)
|
|
|
|
#define IAudioData_GetInfo(p,a,b,c) (p)->lpVtbl->GetInfo(p,a,b,c)
|
|
|
|
#define IAudioData_SetActual(p,a) (p)->lpVtbl->SetActual(p,a)
|
|
|
|
/*** IAudioData methods ***/
|
|
|
|
#define IAudioData_GetFormat(p,a) (p)->lpVtbl->GetFormat(p,a)
|
|
|
|
#define IAudioData_SetFormat(p,a) (p)->lpVtbl->SetFormat(p,a)
|
2004-08-11 21:43:45 +02:00
|
|
|
#endif
|
2004-03-09 02:29:56 +01:00
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#define IAudioData_METHODS \
|
|
|
|
/*** IUnknown methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
|
|
|
|
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
|
|
|
|
STDMETHOD_(ULONG,Release)(THIS) PURE; \
|
|
|
|
/*** IMemoryData methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,SetBuffer)(THIS_ DWORD cbSize, BYTE* pbData, DWORD dwFlags) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,GetInfo)(THIS_ DWORD* pdwLength, BYTE** ppbData, DWORD* pcbActualData) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,SetActual)(THIS_ DWORD cbDataValid) PURE; \
|
|
|
|
/*** IAudioData methods ***/ \
|
|
|
|
STDMETHOD_(HRESULT,GetFormat)(THIS_ WAVEFORMATEX* pWaveFormatCurrent) PURE; \
|
|
|
|
STDMETHOD_(HRESULT,SetFormat)(THIS_ const WAVEFORMATEX* lpWaveFormat) PURE;
|
|
|
|
|
|
|
|
HRESULT CALLBACK IAudioData_GetFormat_Proxy(
|
|
|
|
IAudioData* This,
|
|
|
|
WAVEFORMATEX* pWaveFormatCurrent);
|
|
|
|
void __RPC_STUB IAudioData_GetFormat_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
HRESULT CALLBACK IAudioData_SetFormat_Proxy(
|
|
|
|
IAudioData* This,
|
|
|
|
const WAVEFORMATEX* lpWaveFormat);
|
|
|
|
void __RPC_STUB IAudioData_SetFormat_Stub(
|
|
|
|
struct IRpcStubBuffer* This,
|
|
|
|
struct IRpcChannelBuffer* pRpcChannelBuffer,
|
|
|
|
PRPC_MESSAGE pRpcMessage,
|
|
|
|
DWORD* pdwStubPhase);
|
|
|
|
|
|
|
|
#endif /* __IAudioData_INTERFACE_DEFINED__ */
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
#endif /* __WIDL_AUSTREAM_H */
|