/* * austream.h Audio streaming interfaces * * ========================================================================= * * Open Watcom Project * * Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved. * * This file is automatically generated. Do not edit directly. * * ========================================================================= */ #include #include #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __austream_h__ #define __austream_h__ #ifndef _ENABLE_AUTODEPEND #pragma read_only_file; #endif #include #ifdef __cplusplus extern "C" { #endif /* Forward declarations */ typedef interface IAudioData IAudioData; typedef interface IAudioStreamSample IAudioStreamSample; /* GUIDs */ EXTERN_C const IID IID_IAudioMediaStream; EXTERN_C const IID IID_IAudioStreamSample; EXTERN_C const IID IID_IMemoryData; EXTERN_C const IID IID_IAudioData; /* IAudioMediaStream interface */ #undef INTERFACE #define INTERFACE IAudioMediaStream DECLARE_INTERFACE_( IAudioMediaStream, IMediaStream ) { /* IUnknown methods */ STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE; STDMETHOD_( ULONG, AddRef )( THIS ) PURE; STDMETHOD_( ULONG, Release )( THIS ) PURE; /* IMediaStream methods */ STDMETHOD( GetMultiMediaStream )( THIS_ IMultiMediaStream ** ) PURE; STDMETHOD( GetInformation )( THIS_ MSPID *, STREAM_TYPE * ) PURE; STDMETHOD( SetSameFormat )( THIS_ IMediaStream *, DWORD ) PURE; STDMETHOD( AllocateSample )( THIS_ DWORD, IStreamSample ** ) PURE; STDMETHOD( CreateSharedSample )( THIS_ IStreamSample *, DWORD, IStreamSample ** ) PURE; STDMETHOD( SendEndOfStream )( THIS_ DWORD ) PURE; /* IAudioMediaStream methods */ STDMETHOD( GetFormat )( THIS_ WAVEFORMATEX * ) PURE; STDMETHOD( SetFormat )( THIS_ const WAVEFORMATEX * ) PURE; STDMETHOD( CreateSample )( THIS_ IAudioData *, DWORD, IAudioStreamSample ** ) PURE; }; /* IAudioStreamSample interface */ #undef INTERFACE #define INTERFACE IAudioStreamSample DECLARE_INTERFACE_( IAudioStreamSample, IStreamSample ) { /* IUnknown methods */ STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE; STDMETHOD_( ULONG, AddRef )( THIS ) PURE; STDMETHOD_( ULONG, Release )( THIS ) PURE; /* IStreamSample methods */ STDMETHOD( GetMediaStream )( THIS_ IMediaStream ** ) PURE; STDMETHOD( GetSampleTimes )( THIS_ STREAM_TIME *, STREAM_TIME *, STREAM_TIME * ) PURE; STDMETHOD( SetSampleTimes )( THIS_ const STREAM_TIME *, const STREAM_TIME * ) PURE; STDMETHOD( Update )( THIS_ DWORD, HANDLE, PAPCFUNC, DWORD_PTR ) PURE; STDMETHOD( CompletionStatus )( DWORD, DWORD ) PURE; /* IAudioStreamSample methods */ STDMETHOD( GetAudioData )( THIS_ IAudioData ** ) PURE; }; /* IMemoryData interface */ #undef INTERFACE #define INTERFACE IMemoryData DECLARE_INTERFACE_( IMemoryData, IUnknown ) { /* IUnknown methods */ STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE; STDMETHOD_( ULONG, AddRef )( THIS ) PURE; STDMETHOD_( ULONG, Release )( THIS ) PURE; /* IMemoryData methods */ STDMETHOD( SetBuffer )( THIS_ DWORD, BYTE *, DWORD ) PURE; STDMETHOD( GetInfo )( THIS_ DWORD *, BYTE **, DWORD * ) PURE; STDMETHOD( SetActual )( THIS_ DWORD ) PURE; }; /* IAudioData interface */ #undef INTERFACE #define INTERFACE IAudioData DECLARE_INTERFACE_( IAudioData, IMemoryData ) { /* IUnknown methods */ STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE; STDMETHOD_( ULONG, AddRef )( THIS ) PURE; STDMETHOD_( ULONG, Release )( THIS ) PURE; /* IMemoryData methods */ STDMETHOD( SetBuffer )( THIS_ DWORD, BYTE *, DWORD ) PURE; STDMETHOD( GetInfo )( THIS_ DWORD *, BYTE **, DWORD * ) PURE; STDMETHOD( SetActual )( THIS_ DWORD ) PURE; /* IAudioData methods */ STDMETHOD( GetFormat )( THIS_ WAVEFORMATEX * ) PURE; STDMETHOD( SetFormat )( THIS_ const WAVEFORMATEX * ) PURE; }; /* C object macros */ #if (!defined( __cplusplus ) || defined( CINTERFACE )) && defined( COBJMACROS ) #define IAudioMediaStream_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IAudioMediaStream_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IAudioMediaStream_Release( x ) \ (x)->lpVtbl->Release( x ) #define IAudioMediaStream_GetMultiMediaStream( x, p ) \ (x)->lpVtbl->GetMultiMediaStream( x, p ) #define IAudioMediaStream_GetInformation( x, p1, p2 ) \ (x)->lpVtbl->GetInformation( x, p1, p2 ) #define IAudioMediaStream_SetSameFormat( x, p1, p2 ) \ (x)->lpVtbl->SetSameFormat( x, p1, p2 ) #define IAudioMediaStream_AllocateSample( x, p1, p2 ) \ (x)->lpVtbl->AllocateSample( x, p1, p2 ) #define IAudioMediaStream_CreateSharedSample( x, p1, p2, p3 ) \ (x)->lpVtbl->CreateSharedSample( x, p1, p2, p3 ) #define IAudioMediaStream_SendEndOfStream( x, p ) \ (x)->lpVtbl->SendEndOfStream( x, p ) #define IAudioMediaStream_GetFormat( x, p ) \ (x)->lpVtbl->GetFormat( x, p ) #define IAudioMediaStream_SetFormat( x, p ) \ (x)->lpVtbl->SetFormat( x, p ) #define IAudioMediaStream_CreateSample( x, p1, p2, p3 ) \ (x)->lpVtbl->CreateSample( x, p1, p2, p3 ) #define IAudioStreamSample_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IAudioStreamSample_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IAudioStreamSample_Release( x ) \ (x)->lpVtbl->Release( x ) #define IAudioStreamSample_GetMediaStream( x, p ) \ (x)->lpVtbl->GetMediaStream( x, p ) #define IAudioStreamSample_GetSampleTimes( x, p1, p2, p3 ) \ (x)->lpVtbl->GetSampleTimes( x, p1, p2, p3 ) #define IAudioStreamSample_SetSampleTimes( x, p1, p2 ) \ (x)->lpVtbl->SetSampleTimes( x, p1, p2 ) \ #define IAudioStreamSample_Update( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->Update( x, p1, p2, p3, p4 ) #define IAudioStreamSample_CompletionStatus( x, p1, p2 ) \ (x)->lpVtbl->CompletionStatus( x, p1, p2 ) #define IAudioStreamSample_GetAudioData( x, p ) \ (x)->lpVtbl->GetAudioData( x, p ) #define IMemoryData_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IMemoryData_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IMemoryData_Release( x ) \ (x)->lpVtbl->Release( x ) #define IMemoryData_SetBuffer( x, p1, p2, p3 ) \ (x)->lpVtbl->SetBuffer( x, p1, p2, p3 ) #define IMemoryData_GetInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetInfo( x, p1, p2, p3 ) #define IMemoryData_SetActual( x, p ) \ (x)->lpVtbl->SetActual( x, p ) #define IAudioData_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IAudioData_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IAudioData_Release( x ) \ (x)->lpVtbl->Release( x ) #define IAudioData_SetBuffer( x, p1, p2, p3 ) \ (x)->lpVtbl->SetBuffer( x, p1, p2, p3 ) #define IAudioData_GetInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetInfo( x, p1, p2, p3 ) #define IAudioData_SetActual( x, p ) \ (x)->lpVtbl->SetActual( x, p ) #define IAudioData_GetFormat( x, p ) \ (x)->lpVtbl->GetFormat( x, p ) #define IAudioData_SetFormat( x, p ) \ (x)->lpVtbl->SetFormat( x, p ) #endif #ifdef __cplusplus } /* extern "C" */ #endif #endif /* __austream_h__ */