mirror of https://github.com/UMSKT/xpmgr.git
1462 lines
48 KiB
C++
1462 lines
48 KiB
C++
|
|
|
|
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
|
|
|
|
|
|
/* File created by MIDL compiler version 7.00.0555 */
|
|
/* Compiler settings for amstream.idl:
|
|
Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555
|
|
protocol : dce , ms_ext, c_ext, robust
|
|
error checks: allocation ref bounds_check enum stub_data
|
|
VC __declspec() decoration level:
|
|
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
|
|
DECLSPEC_UUID(), MIDL_INTERFACE()
|
|
*/
|
|
/* @@MIDL_FILE_HEADING( ) */
|
|
|
|
#pragma warning( disable: 4049 ) /* more than 64k source lines */
|
|
|
|
|
|
/* verify that the <rpcndr.h> version is high enough to compile this file*/
|
|
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
|
#define __REQUIRED_RPCNDR_H_VERSION__ 500
|
|
#endif
|
|
|
|
/* verify that the <rpcsal.h> version is high enough to compile this file*/
|
|
#ifndef __REQUIRED_RPCSAL_H_VERSION__
|
|
#define __REQUIRED_RPCSAL_H_VERSION__ 100
|
|
#endif
|
|
|
|
#include "rpc.h"
|
|
#include "rpcndr.h"
|
|
|
|
#ifndef __RPCNDR_H_VERSION__
|
|
#error this stub requires an updated version of <rpcndr.h>
|
|
#endif // __RPCNDR_H_VERSION__
|
|
|
|
#ifndef COM_NO_WINDOWS_H
|
|
#include "windows.h"
|
|
#include "ole2.h"
|
|
#endif /*COM_NO_WINDOWS_H*/
|
|
|
|
#ifndef __amstream_h__
|
|
#define __amstream_h__
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
|
#pragma once
|
|
#endif
|
|
|
|
/* Forward Declarations */
|
|
|
|
#ifndef __IAMMultiMediaStream_FWD_DEFINED__
|
|
#define __IAMMultiMediaStream_FWD_DEFINED__
|
|
typedef interface IAMMultiMediaStream IAMMultiMediaStream;
|
|
#endif /* __IAMMultiMediaStream_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IAMMediaStream_FWD_DEFINED__
|
|
#define __IAMMediaStream_FWD_DEFINED__
|
|
typedef interface IAMMediaStream IAMMediaStream;
|
|
#endif /* __IAMMediaStream_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMediaStreamFilter_FWD_DEFINED__
|
|
#define __IMediaStreamFilter_FWD_DEFINED__
|
|
typedef interface IMediaStreamFilter IMediaStreamFilter;
|
|
#endif /* __IMediaStreamFilter_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDirectDrawMediaSampleAllocator_FWD_DEFINED__
|
|
#define __IDirectDrawMediaSampleAllocator_FWD_DEFINED__
|
|
typedef interface IDirectDrawMediaSampleAllocator IDirectDrawMediaSampleAllocator;
|
|
#endif /* __IDirectDrawMediaSampleAllocator_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDirectDrawMediaSample_FWD_DEFINED__
|
|
#define __IDirectDrawMediaSample_FWD_DEFINED__
|
|
typedef interface IDirectDrawMediaSample IDirectDrawMediaSample;
|
|
#endif /* __IDirectDrawMediaSample_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IAMMediaTypeStream_FWD_DEFINED__
|
|
#define __IAMMediaTypeStream_FWD_DEFINED__
|
|
typedef interface IAMMediaTypeStream IAMMediaTypeStream;
|
|
#endif /* __IAMMediaTypeStream_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IAMMediaTypeSample_FWD_DEFINED__
|
|
#define __IAMMediaTypeSample_FWD_DEFINED__
|
|
typedef interface IAMMediaTypeSample IAMMediaTypeSample;
|
|
#endif /* __IAMMediaTypeSample_FWD_DEFINED__ */
|
|
|
|
|
|
/* header files for imported files */
|
|
#include "unknwn.h"
|
|
#include "mmstream.h"
|
|
#include "strmif.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"{
|
|
#endif
|
|
|
|
|
|
/* interface __MIDL_itf_amstream_0000_0000 */
|
|
/* [local] */
|
|
|
|
#include <ddraw.h>
|
|
#include <mmsystem.h>
|
|
#include <mmstream.h>
|
|
#include <ddstream.h>
|
|
#include <austream.h>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
enum __MIDL___MIDL_itf_amstream_0000_0000_0001
|
|
{ AMMSF_NOGRAPHTHREAD = 0x1
|
|
} ;
|
|
|
|
enum __MIDL___MIDL_itf_amstream_0000_0000_0002
|
|
{ AMMSF_ADDDEFAULTRENDERER = 0x1,
|
|
AMMSF_CREATEPEER = 0x2,
|
|
AMMSF_STOPIFNOSAMPLES = 0x4,
|
|
AMMSF_NOSTALL = 0x8
|
|
} ;
|
|
|
|
enum __MIDL___MIDL_itf_amstream_0000_0000_0003
|
|
{ AMMSF_RENDERTYPEMASK = 0x3,
|
|
AMMSF_RENDERTOEXISTING = 0,
|
|
AMMSF_RENDERALLSTREAMS = 0x1,
|
|
AMMSF_NORENDER = 0x2,
|
|
AMMSF_NOCLOCK = 0x4,
|
|
AMMSF_RUN = 0x8
|
|
} ;
|
|
typedef /* [public][v1_enum] */
|
|
enum __MIDL___MIDL_itf_amstream_0000_0000_0004
|
|
{ Disabled = 0,
|
|
ReadData = 1,
|
|
RenderData = 2
|
|
} OUTPUT_STATE;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_amstream_0000_0000_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_amstream_0000_0000_v0_0_s_ifspec;
|
|
|
|
#ifndef __IAMMultiMediaStream_INTERFACE_DEFINED__
|
|
#define __IAMMultiMediaStream_INTERFACE_DEFINED__
|
|
|
|
/* interface IAMMultiMediaStream */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IAMMultiMediaStream;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("BEBE595C-9A6F-11d0-8FDE-00C04FD9189D")
|
|
IAMMultiMediaStream : public IMultiMediaStream
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ STREAM_TYPE StreamType,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [in] */ __RPC__in_opt IGraphBuilder *pFilterGraph) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFilterGraph(
|
|
/* [out] */ __RPC__deref_out_opt IGraphBuilder **ppGraphBuilder) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetFilter(
|
|
/* [out] */ __RPC__deref_out_opt IMediaStreamFilter **ppFilter) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE AddMediaStream(
|
|
/* [in] */ __RPC__in_opt IUnknown *pStreamObject,
|
|
/* [in] */ __RPC__in const MSPID *PurposeId,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [out] */ __RPC__deref_out_opt IMediaStream **ppNewStream) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE OpenFile(
|
|
/* [in] */ __RPC__in LPCWSTR pszFileName,
|
|
/* [in] */ DWORD dwFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE OpenMoniker(
|
|
/* [in] */ __RPC__in_opt IBindCtx *pCtx,
|
|
/* [in] */ __RPC__in_opt IMoniker *pMoniker,
|
|
/* [in] */ DWORD dwFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Render(
|
|
/* [in] */ DWORD dwFlags) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IAMMultiMediaStreamVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IAMMultiMediaStream * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IAMMultiMediaStream * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInformation )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [out] */ __RPC__out DWORD *pdwFlags,
|
|
/* [out] */ __RPC__out STREAM_TYPE *pStreamType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMediaStream )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ __RPC__in REFMSPID idPurpose,
|
|
/* [out] */ __RPC__deref_out_opt IMediaStream **ppMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnumMediaStreams )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ long Index,
|
|
/* [out] */ __RPC__deref_out_opt IMediaStream **ppMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetState )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [out] */ __RPC__out STREAM_STATE *pCurrentState);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetState )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ STREAM_STATE NewState);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTime )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [out] */ __RPC__out STREAM_TIME *pCurrentTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDuration )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [out] */ __RPC__out STREAM_TIME *pDuration);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Seek )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ STREAM_TIME SeekTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetEndOfStreamEventHandle )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [out] */ __RPC__deref_out_opt HANDLE *phEOS);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ STREAM_TYPE StreamType,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [in] */ __RPC__in_opt IGraphBuilder *pFilterGraph);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFilterGraph )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [out] */ __RPC__deref_out_opt IGraphBuilder **ppGraphBuilder);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFilter )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [out] */ __RPC__deref_out_opt IMediaStreamFilter **ppFilter);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AddMediaStream )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ __RPC__in_opt IUnknown *pStreamObject,
|
|
/* [in] */ __RPC__in const MSPID *PurposeId,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [out] */ __RPC__deref_out_opt IMediaStream **ppNewStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OpenFile )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ __RPC__in LPCWSTR pszFileName,
|
|
/* [in] */ DWORD dwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OpenMoniker )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ __RPC__in_opt IBindCtx *pCtx,
|
|
/* [in] */ __RPC__in_opt IMoniker *pMoniker,
|
|
/* [in] */ DWORD dwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Render )(
|
|
__RPC__in IAMMultiMediaStream * This,
|
|
/* [in] */ DWORD dwFlags);
|
|
|
|
END_INTERFACE
|
|
} IAMMultiMediaStreamVtbl;
|
|
|
|
interface IAMMultiMediaStream
|
|
{
|
|
CONST_VTBL struct IAMMultiMediaStreamVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IAMMultiMediaStream_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IAMMultiMediaStream_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IAMMultiMediaStream_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IAMMultiMediaStream_GetInformation(This,pdwFlags,pStreamType) \
|
|
( (This)->lpVtbl -> GetInformation(This,pdwFlags,pStreamType) )
|
|
|
|
#define IAMMultiMediaStream_GetMediaStream(This,idPurpose,ppMediaStream) \
|
|
( (This)->lpVtbl -> GetMediaStream(This,idPurpose,ppMediaStream) )
|
|
|
|
#define IAMMultiMediaStream_EnumMediaStreams(This,Index,ppMediaStream) \
|
|
( (This)->lpVtbl -> EnumMediaStreams(This,Index,ppMediaStream) )
|
|
|
|
#define IAMMultiMediaStream_GetState(This,pCurrentState) \
|
|
( (This)->lpVtbl -> GetState(This,pCurrentState) )
|
|
|
|
#define IAMMultiMediaStream_SetState(This,NewState) \
|
|
( (This)->lpVtbl -> SetState(This,NewState) )
|
|
|
|
#define IAMMultiMediaStream_GetTime(This,pCurrentTime) \
|
|
( (This)->lpVtbl -> GetTime(This,pCurrentTime) )
|
|
|
|
#define IAMMultiMediaStream_GetDuration(This,pDuration) \
|
|
( (This)->lpVtbl -> GetDuration(This,pDuration) )
|
|
|
|
#define IAMMultiMediaStream_Seek(This,SeekTime) \
|
|
( (This)->lpVtbl -> Seek(This,SeekTime) )
|
|
|
|
#define IAMMultiMediaStream_GetEndOfStreamEventHandle(This,phEOS) \
|
|
( (This)->lpVtbl -> GetEndOfStreamEventHandle(This,phEOS) )
|
|
|
|
|
|
#define IAMMultiMediaStream_Initialize(This,StreamType,dwFlags,pFilterGraph) \
|
|
( (This)->lpVtbl -> Initialize(This,StreamType,dwFlags,pFilterGraph) )
|
|
|
|
#define IAMMultiMediaStream_GetFilterGraph(This,ppGraphBuilder) \
|
|
( (This)->lpVtbl -> GetFilterGraph(This,ppGraphBuilder) )
|
|
|
|
#define IAMMultiMediaStream_GetFilter(This,ppFilter) \
|
|
( (This)->lpVtbl -> GetFilter(This,ppFilter) )
|
|
|
|
#define IAMMultiMediaStream_AddMediaStream(This,pStreamObject,PurposeId,dwFlags,ppNewStream) \
|
|
( (This)->lpVtbl -> AddMediaStream(This,pStreamObject,PurposeId,dwFlags,ppNewStream) )
|
|
|
|
#define IAMMultiMediaStream_OpenFile(This,pszFileName,dwFlags) \
|
|
( (This)->lpVtbl -> OpenFile(This,pszFileName,dwFlags) )
|
|
|
|
#define IAMMultiMediaStream_OpenMoniker(This,pCtx,pMoniker,dwFlags) \
|
|
( (This)->lpVtbl -> OpenMoniker(This,pCtx,pMoniker,dwFlags) )
|
|
|
|
#define IAMMultiMediaStream_Render(This,dwFlags) \
|
|
( (This)->lpVtbl -> Render(This,dwFlags) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IAMMultiMediaStream_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IAMMediaStream_INTERFACE_DEFINED__
|
|
#define __IAMMediaStream_INTERFACE_DEFINED__
|
|
|
|
/* interface IAMMediaStream */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IAMMediaStream;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("BEBE595D-9A6F-11d0-8FDE-00C04FD9189D")
|
|
IAMMediaStream : public IMediaStream
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Initialize(
|
|
/* [in] */ __RPC__in_opt IUnknown *pSourceObject,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [in] */ __RPC__in REFMSPID PurposeId,
|
|
/* [in] */ const STREAM_TYPE StreamType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetState(
|
|
/* [in] */ FILTER_STATE State) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE JoinAMMultiMediaStream(
|
|
/* [in] */ __RPC__in_opt IAMMultiMediaStream *pAMMultiMediaStream) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE JoinFilter(
|
|
/* [in] */ __RPC__in_opt IMediaStreamFilter *pMediaStreamFilter) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE JoinFilterGraph(
|
|
/* [in] */ __RPC__in_opt IFilterGraph *pFilterGraph) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IAMMediaStreamVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IAMMediaStream * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IAMMediaStream * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMultiMediaStream )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [out] */ __RPC__deref_out_opt IMultiMediaStream **ppMultiMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInformation )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [out] */ __RPC__out MSPID *pPurposeId,
|
|
/* [out] */ __RPC__out STREAM_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSameFormat )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ __RPC__in_opt IMediaStream *pStreamThatHasDesiredFormat,
|
|
/* [in] */ DWORD dwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AllocateSample )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [out] */ __RPC__deref_out_opt IStreamSample **ppSample);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateSharedSample )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ __RPC__in_opt IStreamSample *pExistingSample,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [out] */ __RPC__deref_out_opt IStreamSample **ppNewSample);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SendEndOfStream )(
|
|
__RPC__in IAMMediaStream * This,
|
|
DWORD dwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Initialize )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ __RPC__in_opt IUnknown *pSourceObject,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [in] */ __RPC__in REFMSPID PurposeId,
|
|
/* [in] */ const STREAM_TYPE StreamType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetState )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ FILTER_STATE State);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *JoinAMMultiMediaStream )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ __RPC__in_opt IAMMultiMediaStream *pAMMultiMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *JoinFilter )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ __RPC__in_opt IMediaStreamFilter *pMediaStreamFilter);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *JoinFilterGraph )(
|
|
__RPC__in IAMMediaStream * This,
|
|
/* [in] */ __RPC__in_opt IFilterGraph *pFilterGraph);
|
|
|
|
END_INTERFACE
|
|
} IAMMediaStreamVtbl;
|
|
|
|
interface IAMMediaStream
|
|
{
|
|
CONST_VTBL struct IAMMediaStreamVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IAMMediaStream_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IAMMediaStream_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IAMMediaStream_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IAMMediaStream_GetMultiMediaStream(This,ppMultiMediaStream) \
|
|
( (This)->lpVtbl -> GetMultiMediaStream(This,ppMultiMediaStream) )
|
|
|
|
#define IAMMediaStream_GetInformation(This,pPurposeId,pType) \
|
|
( (This)->lpVtbl -> GetInformation(This,pPurposeId,pType) )
|
|
|
|
#define IAMMediaStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) \
|
|
( (This)->lpVtbl -> SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) )
|
|
|
|
#define IAMMediaStream_AllocateSample(This,dwFlags,ppSample) \
|
|
( (This)->lpVtbl -> AllocateSample(This,dwFlags,ppSample) )
|
|
|
|
#define IAMMediaStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) \
|
|
( (This)->lpVtbl -> CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) )
|
|
|
|
#define IAMMediaStream_SendEndOfStream(This,dwFlags) \
|
|
( (This)->lpVtbl -> SendEndOfStream(This,dwFlags) )
|
|
|
|
|
|
#define IAMMediaStream_Initialize(This,pSourceObject,dwFlags,PurposeId,StreamType) \
|
|
( (This)->lpVtbl -> Initialize(This,pSourceObject,dwFlags,PurposeId,StreamType) )
|
|
|
|
#define IAMMediaStream_SetState(This,State) \
|
|
( (This)->lpVtbl -> SetState(This,State) )
|
|
|
|
#define IAMMediaStream_JoinAMMultiMediaStream(This,pAMMultiMediaStream) \
|
|
( (This)->lpVtbl -> JoinAMMultiMediaStream(This,pAMMultiMediaStream) )
|
|
|
|
#define IAMMediaStream_JoinFilter(This,pMediaStreamFilter) \
|
|
( (This)->lpVtbl -> JoinFilter(This,pMediaStreamFilter) )
|
|
|
|
#define IAMMediaStream_JoinFilterGraph(This,pFilterGraph) \
|
|
( (This)->lpVtbl -> JoinFilterGraph(This,pFilterGraph) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IAMMediaStream_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMediaStreamFilter_INTERFACE_DEFINED__
|
|
#define __IMediaStreamFilter_INTERFACE_DEFINED__
|
|
|
|
/* interface IMediaStreamFilter */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMediaStreamFilter;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("BEBE595E-9A6F-11d0-8FDE-00C04FD9189D")
|
|
IMediaStreamFilter : public IBaseFilter
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE AddMediaStream(
|
|
/* [in] */ IAMMediaStream *pAMMediaStream) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetMediaStream(
|
|
/* [in] */ REFMSPID idPurpose,
|
|
/* [out] */ IMediaStream **ppMediaStream) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EnumMediaStreams(
|
|
/* [in] */ long Index,
|
|
/* [out] */ IMediaStream **ppMediaStream) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SupportSeeking(
|
|
/* [in] */ BOOL bRenderer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ReferenceTimeToStreamTime(
|
|
/* [out][in] */ REFERENCE_TIME *pTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCurrentStreamTime(
|
|
/* [out] */ REFERENCE_TIME *pCurrentStreamTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE WaitUntil(
|
|
/* [in] */ REFERENCE_TIME WaitStreamTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Flush(
|
|
/* [in] */ BOOL bCancelEOS) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndOfStream( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMediaStreamFilterVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMediaStreamFilter * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMediaStreamFilter * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMediaStreamFilter * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetClassID )(
|
|
IMediaStreamFilter * This,
|
|
/* [out] */ CLSID *pClassID);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Stop )(
|
|
IMediaStreamFilter * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Pause )(
|
|
IMediaStreamFilter * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Run )(
|
|
IMediaStreamFilter * This,
|
|
REFERENCE_TIME tStart);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetState )(
|
|
IMediaStreamFilter * This,
|
|
/* [in] */ DWORD dwMilliSecsTimeout,
|
|
/* [annotation][out] */
|
|
__out FILTER_STATE *State);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSyncSource )(
|
|
IMediaStreamFilter * This,
|
|
/* [annotation][in] */
|
|
__in_opt IReferenceClock *pClock);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetSyncSource )(
|
|
IMediaStreamFilter * This,
|
|
/* [annotation][out] */
|
|
__deref_out_opt IReferenceClock **pClock);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnumPins )(
|
|
IMediaStreamFilter * This,
|
|
/* [annotation][out] */
|
|
__out IEnumPins **ppEnum);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FindPin )(
|
|
IMediaStreamFilter * This,
|
|
/* [string][in] */ LPCWSTR Id,
|
|
/* [annotation][out] */
|
|
__out IPin **ppPin);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryFilterInfo )(
|
|
IMediaStreamFilter * This,
|
|
/* [annotation][out] */
|
|
__out FILTER_INFO *pInfo);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *JoinFilterGraph )(
|
|
IMediaStreamFilter * This,
|
|
/* [annotation][in] */
|
|
__in_opt IFilterGraph *pGraph,
|
|
/* [annotation][string][in] */
|
|
__in_opt LPCWSTR pName);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryVendorInfo )(
|
|
IMediaStreamFilter * This,
|
|
/* [annotation][string][out] */
|
|
__out LPWSTR *pVendorInfo);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AddMediaStream )(
|
|
IMediaStreamFilter * This,
|
|
/* [in] */ IAMMediaStream *pAMMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMediaStream )(
|
|
IMediaStreamFilter * This,
|
|
/* [in] */ REFMSPID idPurpose,
|
|
/* [out] */ IMediaStream **ppMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EnumMediaStreams )(
|
|
IMediaStreamFilter * This,
|
|
/* [in] */ long Index,
|
|
/* [out] */ IMediaStream **ppMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SupportSeeking )(
|
|
IMediaStreamFilter * This,
|
|
/* [in] */ BOOL bRenderer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ReferenceTimeToStreamTime )(
|
|
IMediaStreamFilter * This,
|
|
/* [out][in] */ REFERENCE_TIME *pTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCurrentStreamTime )(
|
|
IMediaStreamFilter * This,
|
|
/* [out] */ REFERENCE_TIME *pCurrentStreamTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *WaitUntil )(
|
|
IMediaStreamFilter * This,
|
|
/* [in] */ REFERENCE_TIME WaitStreamTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Flush )(
|
|
IMediaStreamFilter * This,
|
|
/* [in] */ BOOL bCancelEOS);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EndOfStream )(
|
|
IMediaStreamFilter * This);
|
|
|
|
END_INTERFACE
|
|
} IMediaStreamFilterVtbl;
|
|
|
|
interface IMediaStreamFilter
|
|
{
|
|
CONST_VTBL struct IMediaStreamFilterVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMediaStreamFilter_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMediaStreamFilter_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMediaStreamFilter_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMediaStreamFilter_GetClassID(This,pClassID) \
|
|
( (This)->lpVtbl -> GetClassID(This,pClassID) )
|
|
|
|
|
|
#define IMediaStreamFilter_Stop(This) \
|
|
( (This)->lpVtbl -> Stop(This) )
|
|
|
|
#define IMediaStreamFilter_Pause(This) \
|
|
( (This)->lpVtbl -> Pause(This) )
|
|
|
|
#define IMediaStreamFilter_Run(This,tStart) \
|
|
( (This)->lpVtbl -> Run(This,tStart) )
|
|
|
|
#define IMediaStreamFilter_GetState(This,dwMilliSecsTimeout,State) \
|
|
( (This)->lpVtbl -> GetState(This,dwMilliSecsTimeout,State) )
|
|
|
|
#define IMediaStreamFilter_SetSyncSource(This,pClock) \
|
|
( (This)->lpVtbl -> SetSyncSource(This,pClock) )
|
|
|
|
#define IMediaStreamFilter_GetSyncSource(This,pClock) \
|
|
( (This)->lpVtbl -> GetSyncSource(This,pClock) )
|
|
|
|
|
|
#define IMediaStreamFilter_EnumPins(This,ppEnum) \
|
|
( (This)->lpVtbl -> EnumPins(This,ppEnum) )
|
|
|
|
#define IMediaStreamFilter_FindPin(This,Id,ppPin) \
|
|
( (This)->lpVtbl -> FindPin(This,Id,ppPin) )
|
|
|
|
#define IMediaStreamFilter_QueryFilterInfo(This,pInfo) \
|
|
( (This)->lpVtbl -> QueryFilterInfo(This,pInfo) )
|
|
|
|
#define IMediaStreamFilter_JoinFilterGraph(This,pGraph,pName) \
|
|
( (This)->lpVtbl -> JoinFilterGraph(This,pGraph,pName) )
|
|
|
|
#define IMediaStreamFilter_QueryVendorInfo(This,pVendorInfo) \
|
|
( (This)->lpVtbl -> QueryVendorInfo(This,pVendorInfo) )
|
|
|
|
|
|
#define IMediaStreamFilter_AddMediaStream(This,pAMMediaStream) \
|
|
( (This)->lpVtbl -> AddMediaStream(This,pAMMediaStream) )
|
|
|
|
#define IMediaStreamFilter_GetMediaStream(This,idPurpose,ppMediaStream) \
|
|
( (This)->lpVtbl -> GetMediaStream(This,idPurpose,ppMediaStream) )
|
|
|
|
#define IMediaStreamFilter_EnumMediaStreams(This,Index,ppMediaStream) \
|
|
( (This)->lpVtbl -> EnumMediaStreams(This,Index,ppMediaStream) )
|
|
|
|
#define IMediaStreamFilter_SupportSeeking(This,bRenderer) \
|
|
( (This)->lpVtbl -> SupportSeeking(This,bRenderer) )
|
|
|
|
#define IMediaStreamFilter_ReferenceTimeToStreamTime(This,pTime) \
|
|
( (This)->lpVtbl -> ReferenceTimeToStreamTime(This,pTime) )
|
|
|
|
#define IMediaStreamFilter_GetCurrentStreamTime(This,pCurrentStreamTime) \
|
|
( (This)->lpVtbl -> GetCurrentStreamTime(This,pCurrentStreamTime) )
|
|
|
|
#define IMediaStreamFilter_WaitUntil(This,WaitStreamTime) \
|
|
( (This)->lpVtbl -> WaitUntil(This,WaitStreamTime) )
|
|
|
|
#define IMediaStreamFilter_Flush(This,bCancelEOS) \
|
|
( (This)->lpVtbl -> Flush(This,bCancelEOS) )
|
|
|
|
#define IMediaStreamFilter_EndOfStream(This) \
|
|
( (This)->lpVtbl -> EndOfStream(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMediaStreamFilter_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDirectDrawMediaSampleAllocator_INTERFACE_DEFINED__
|
|
#define __IDirectDrawMediaSampleAllocator_INTERFACE_DEFINED__
|
|
|
|
/* interface IDirectDrawMediaSampleAllocator */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDirectDrawMediaSampleAllocator;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("AB6B4AFC-F6E4-11d0-900D-00C04FD9189D")
|
|
IDirectDrawMediaSampleAllocator : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetDirectDraw(
|
|
IDirectDraw **ppDirectDraw) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDirectDrawMediaSampleAllocatorVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDirectDrawMediaSampleAllocator * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDirectDrawMediaSampleAllocator * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDirectDrawMediaSampleAllocator * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDirectDraw )(
|
|
IDirectDrawMediaSampleAllocator * This,
|
|
IDirectDraw **ppDirectDraw);
|
|
|
|
END_INTERFACE
|
|
} IDirectDrawMediaSampleAllocatorVtbl;
|
|
|
|
interface IDirectDrawMediaSampleAllocator
|
|
{
|
|
CONST_VTBL struct IDirectDrawMediaSampleAllocatorVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDirectDrawMediaSampleAllocator_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDirectDrawMediaSampleAllocator_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDirectDrawMediaSampleAllocator_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDirectDrawMediaSampleAllocator_GetDirectDraw(This,ppDirectDraw) \
|
|
( (This)->lpVtbl -> GetDirectDraw(This,ppDirectDraw) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDirectDrawMediaSampleAllocator_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IDirectDrawMediaSample_INTERFACE_DEFINED__
|
|
#define __IDirectDrawMediaSample_INTERFACE_DEFINED__
|
|
|
|
/* interface IDirectDrawMediaSample */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IDirectDrawMediaSample;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("AB6B4AFE-F6E4-11d0-900D-00C04FD9189D")
|
|
IDirectDrawMediaSample : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetSurfaceAndReleaseLock(
|
|
/* [out] */ IDirectDrawSurface **ppDirectDrawSurface,
|
|
/* [out] */ RECT *pRect) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE LockMediaSamplePointer( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IDirectDrawMediaSampleVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IDirectDrawMediaSample * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IDirectDrawMediaSample * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IDirectDrawMediaSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetSurfaceAndReleaseLock )(
|
|
IDirectDrawMediaSample * This,
|
|
/* [out] */ IDirectDrawSurface **ppDirectDrawSurface,
|
|
/* [out] */ RECT *pRect);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LockMediaSamplePointer )(
|
|
IDirectDrawMediaSample * This);
|
|
|
|
END_INTERFACE
|
|
} IDirectDrawMediaSampleVtbl;
|
|
|
|
interface IDirectDrawMediaSample
|
|
{
|
|
CONST_VTBL struct IDirectDrawMediaSampleVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IDirectDrawMediaSample_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IDirectDrawMediaSample_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IDirectDrawMediaSample_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IDirectDrawMediaSample_GetSurfaceAndReleaseLock(This,ppDirectDrawSurface,pRect) \
|
|
( (This)->lpVtbl -> GetSurfaceAndReleaseLock(This,ppDirectDrawSurface,pRect) )
|
|
|
|
#define IDirectDrawMediaSample_LockMediaSamplePointer(This) \
|
|
( (This)->lpVtbl -> LockMediaSamplePointer(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IDirectDrawMediaSample_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IAMMediaTypeStream_INTERFACE_DEFINED__
|
|
#define __IAMMediaTypeStream_INTERFACE_DEFINED__
|
|
|
|
/* interface IAMMediaTypeStream */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IAMMediaTypeStream;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("AB6B4AFA-F6E4-11d0-900D-00C04FD9189D")
|
|
IAMMediaTypeStream : public IMediaStream
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetFormat(
|
|
/* [out] */ AM_MEDIA_TYPE *pMediaType,
|
|
/* [in] */ DWORD dwFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetFormat(
|
|
/* [in] */ AM_MEDIA_TYPE *pMediaType,
|
|
/* [in] */ DWORD dwFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateSample(
|
|
/* [in] */ long lSampleSize,
|
|
/* [in] */ BYTE *pbBuffer,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [in] */ IUnknown *pUnkOuter,
|
|
/* [out] */ IAMMediaTypeSample **ppAMMediaTypeSample) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStreamAllocatorRequirements(
|
|
/* [out] */ ALLOCATOR_PROPERTIES *pProps) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetStreamAllocatorRequirements(
|
|
/* [in] */ ALLOCATOR_PROPERTIES *pProps) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IAMMediaTypeStreamVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IAMMediaTypeStream * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IAMMediaTypeStream * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IAMMediaTypeStream * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMultiMediaStream )(
|
|
IAMMediaTypeStream * This,
|
|
/* [out] */ IMultiMediaStream **ppMultiMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetInformation )(
|
|
IAMMediaTypeStream * This,
|
|
/* [out] */ MSPID *pPurposeId,
|
|
/* [out] */ STREAM_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSameFormat )(
|
|
IAMMediaTypeStream * This,
|
|
/* [in] */ IMediaStream *pStreamThatHasDesiredFormat,
|
|
/* [in] */ DWORD dwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AllocateSample )(
|
|
IAMMediaTypeStream * This,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [out] */ IStreamSample **ppSample);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateSharedSample )(
|
|
IAMMediaTypeStream * This,
|
|
/* [in] */ IStreamSample *pExistingSample,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [out] */ IStreamSample **ppNewSample);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SendEndOfStream )(
|
|
IAMMediaTypeStream * This,
|
|
DWORD dwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetFormat )(
|
|
IAMMediaTypeStream * This,
|
|
/* [out] */ AM_MEDIA_TYPE *pMediaType,
|
|
/* [in] */ DWORD dwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetFormat )(
|
|
IAMMediaTypeStream * This,
|
|
/* [in] */ AM_MEDIA_TYPE *pMediaType,
|
|
/* [in] */ DWORD dwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateSample )(
|
|
IAMMediaTypeStream * This,
|
|
/* [in] */ long lSampleSize,
|
|
/* [in] */ BYTE *pbBuffer,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [in] */ IUnknown *pUnkOuter,
|
|
/* [out] */ IAMMediaTypeSample **ppAMMediaTypeSample);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStreamAllocatorRequirements )(
|
|
IAMMediaTypeStream * This,
|
|
/* [out] */ ALLOCATOR_PROPERTIES *pProps);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetStreamAllocatorRequirements )(
|
|
IAMMediaTypeStream * This,
|
|
/* [in] */ ALLOCATOR_PROPERTIES *pProps);
|
|
|
|
END_INTERFACE
|
|
} IAMMediaTypeStreamVtbl;
|
|
|
|
interface IAMMediaTypeStream
|
|
{
|
|
CONST_VTBL struct IAMMediaTypeStreamVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IAMMediaTypeStream_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IAMMediaTypeStream_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IAMMediaTypeStream_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IAMMediaTypeStream_GetMultiMediaStream(This,ppMultiMediaStream) \
|
|
( (This)->lpVtbl -> GetMultiMediaStream(This,ppMultiMediaStream) )
|
|
|
|
#define IAMMediaTypeStream_GetInformation(This,pPurposeId,pType) \
|
|
( (This)->lpVtbl -> GetInformation(This,pPurposeId,pType) )
|
|
|
|
#define IAMMediaTypeStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) \
|
|
( (This)->lpVtbl -> SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) )
|
|
|
|
#define IAMMediaTypeStream_AllocateSample(This,dwFlags,ppSample) \
|
|
( (This)->lpVtbl -> AllocateSample(This,dwFlags,ppSample) )
|
|
|
|
#define IAMMediaTypeStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) \
|
|
( (This)->lpVtbl -> CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) )
|
|
|
|
#define IAMMediaTypeStream_SendEndOfStream(This,dwFlags) \
|
|
( (This)->lpVtbl -> SendEndOfStream(This,dwFlags) )
|
|
|
|
|
|
#define IAMMediaTypeStream_GetFormat(This,pMediaType,dwFlags) \
|
|
( (This)->lpVtbl -> GetFormat(This,pMediaType,dwFlags) )
|
|
|
|
#define IAMMediaTypeStream_SetFormat(This,pMediaType,dwFlags) \
|
|
( (This)->lpVtbl -> SetFormat(This,pMediaType,dwFlags) )
|
|
|
|
#define IAMMediaTypeStream_CreateSample(This,lSampleSize,pbBuffer,dwFlags,pUnkOuter,ppAMMediaTypeSample) \
|
|
( (This)->lpVtbl -> CreateSample(This,lSampleSize,pbBuffer,dwFlags,pUnkOuter,ppAMMediaTypeSample) )
|
|
|
|
#define IAMMediaTypeStream_GetStreamAllocatorRequirements(This,pProps) \
|
|
( (This)->lpVtbl -> GetStreamAllocatorRequirements(This,pProps) )
|
|
|
|
#define IAMMediaTypeStream_SetStreamAllocatorRequirements(This,pProps) \
|
|
( (This)->lpVtbl -> SetStreamAllocatorRequirements(This,pProps) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IAMMediaTypeStream_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IAMMediaTypeSample_INTERFACE_DEFINED__
|
|
#define __IAMMediaTypeSample_INTERFACE_DEFINED__
|
|
|
|
/* interface IAMMediaTypeSample */
|
|
/* [unique][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IAMMediaTypeSample;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("AB6B4AFB-F6E4-11d0-900D-00C04FD9189D")
|
|
IAMMediaTypeSample : public IStreamSample
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE SetPointer(
|
|
/* [size_is][in] */ BYTE *pBuffer,
|
|
/* [in] */ long lSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetPointer(
|
|
/* [out] */ BYTE **ppBuffer) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetSize( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTime(
|
|
/* [out] */ REFERENCE_TIME *pTimeStart,
|
|
/* [out] */ REFERENCE_TIME *pTimeEnd) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetTime(
|
|
/* [in] */ REFERENCE_TIME *pTimeStart,
|
|
/* [in] */ REFERENCE_TIME *pTimeEnd) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsSyncPoint( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetSyncPoint(
|
|
BOOL bIsSyncPoint) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsPreroll( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetPreroll(
|
|
BOOL bIsPreroll) = 0;
|
|
|
|
virtual long STDMETHODCALLTYPE GetActualDataLength( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetActualDataLength(
|
|
long __MIDL__IAMMediaTypeSample0000) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetMediaType(
|
|
/* [out] */ AM_MEDIA_TYPE **ppMediaType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetMediaType(
|
|
/* [in] */ AM_MEDIA_TYPE *pMediaType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsDiscontinuity( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetDiscontinuity(
|
|
BOOL bDiscontinuity) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetMediaTime(
|
|
/* [out] */ LONGLONG *pTimeStart,
|
|
/* [out] */ LONGLONG *pTimeEnd) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetMediaTime(
|
|
/* [in] */ LONGLONG *pTimeStart,
|
|
/* [in] */ LONGLONG *pTimeEnd) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IAMMediaTypeSampleVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IAMMediaTypeSample * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IAMMediaTypeSample * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IAMMediaTypeSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMediaStream )(
|
|
IAMMediaTypeSample * This,
|
|
/* [in] */ IMediaStream **ppMediaStream);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetSampleTimes )(
|
|
IAMMediaTypeSample * This,
|
|
/* [out] */ STREAM_TIME *pStartTime,
|
|
/* [out] */ STREAM_TIME *pEndTime,
|
|
/* [out] */ STREAM_TIME *pCurrentTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSampleTimes )(
|
|
IAMMediaTypeSample * This,
|
|
/* [in] */ const STREAM_TIME *pStartTime,
|
|
/* [in] */ const STREAM_TIME *pEndTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Update )(
|
|
IAMMediaTypeSample * This,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [in] */ HANDLE hEvent,
|
|
/* [in] */ PAPCFUNC pfnAPC,
|
|
/* [in] */ DWORD_PTR dwAPCData);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CompletionStatus )(
|
|
IAMMediaTypeSample * This,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [in] */ DWORD dwMilliseconds);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetPointer )(
|
|
IAMMediaTypeSample * This,
|
|
/* [size_is][in] */ BYTE *pBuffer,
|
|
/* [in] */ long lSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPointer )(
|
|
IAMMediaTypeSample * This,
|
|
/* [out] */ BYTE **ppBuffer);
|
|
|
|
long ( STDMETHODCALLTYPE *GetSize )(
|
|
IAMMediaTypeSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTime )(
|
|
IAMMediaTypeSample * This,
|
|
/* [out] */ REFERENCE_TIME *pTimeStart,
|
|
/* [out] */ REFERENCE_TIME *pTimeEnd);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetTime )(
|
|
IAMMediaTypeSample * This,
|
|
/* [in] */ REFERENCE_TIME *pTimeStart,
|
|
/* [in] */ REFERENCE_TIME *pTimeEnd);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsSyncPoint )(
|
|
IAMMediaTypeSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSyncPoint )(
|
|
IAMMediaTypeSample * This,
|
|
BOOL bIsSyncPoint);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsPreroll )(
|
|
IAMMediaTypeSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetPreroll )(
|
|
IAMMediaTypeSample * This,
|
|
BOOL bIsPreroll);
|
|
|
|
long ( STDMETHODCALLTYPE *GetActualDataLength )(
|
|
IAMMediaTypeSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetActualDataLength )(
|
|
IAMMediaTypeSample * This,
|
|
long __MIDL__IAMMediaTypeSample0000);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMediaType )(
|
|
IAMMediaTypeSample * This,
|
|
/* [out] */ AM_MEDIA_TYPE **ppMediaType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetMediaType )(
|
|
IAMMediaTypeSample * This,
|
|
/* [in] */ AM_MEDIA_TYPE *pMediaType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsDiscontinuity )(
|
|
IAMMediaTypeSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDiscontinuity )(
|
|
IAMMediaTypeSample * This,
|
|
BOOL bDiscontinuity);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMediaTime )(
|
|
IAMMediaTypeSample * This,
|
|
/* [out] */ LONGLONG *pTimeStart,
|
|
/* [out] */ LONGLONG *pTimeEnd);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetMediaTime )(
|
|
IAMMediaTypeSample * This,
|
|
/* [in] */ LONGLONG *pTimeStart,
|
|
/* [in] */ LONGLONG *pTimeEnd);
|
|
|
|
END_INTERFACE
|
|
} IAMMediaTypeSampleVtbl;
|
|
|
|
interface IAMMediaTypeSample
|
|
{
|
|
CONST_VTBL struct IAMMediaTypeSampleVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IAMMediaTypeSample_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IAMMediaTypeSample_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IAMMediaTypeSample_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IAMMediaTypeSample_GetMediaStream(This,ppMediaStream) \
|
|
( (This)->lpVtbl -> GetMediaStream(This,ppMediaStream) )
|
|
|
|
#define IAMMediaTypeSample_GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime) \
|
|
( (This)->lpVtbl -> GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime) )
|
|
|
|
#define IAMMediaTypeSample_SetSampleTimes(This,pStartTime,pEndTime) \
|
|
( (This)->lpVtbl -> SetSampleTimes(This,pStartTime,pEndTime) )
|
|
|
|
#define IAMMediaTypeSample_Update(This,dwFlags,hEvent,pfnAPC,dwAPCData) \
|
|
( (This)->lpVtbl -> Update(This,dwFlags,hEvent,pfnAPC,dwAPCData) )
|
|
|
|
#define IAMMediaTypeSample_CompletionStatus(This,dwFlags,dwMilliseconds) \
|
|
( (This)->lpVtbl -> CompletionStatus(This,dwFlags,dwMilliseconds) )
|
|
|
|
|
|
#define IAMMediaTypeSample_SetPointer(This,pBuffer,lSize) \
|
|
( (This)->lpVtbl -> SetPointer(This,pBuffer,lSize) )
|
|
|
|
#define IAMMediaTypeSample_GetPointer(This,ppBuffer) \
|
|
( (This)->lpVtbl -> GetPointer(This,ppBuffer) )
|
|
|
|
#define IAMMediaTypeSample_GetSize(This) \
|
|
( (This)->lpVtbl -> GetSize(This) )
|
|
|
|
#define IAMMediaTypeSample_GetTime(This,pTimeStart,pTimeEnd) \
|
|
( (This)->lpVtbl -> GetTime(This,pTimeStart,pTimeEnd) )
|
|
|
|
#define IAMMediaTypeSample_SetTime(This,pTimeStart,pTimeEnd) \
|
|
( (This)->lpVtbl -> SetTime(This,pTimeStart,pTimeEnd) )
|
|
|
|
#define IAMMediaTypeSample_IsSyncPoint(This) \
|
|
( (This)->lpVtbl -> IsSyncPoint(This) )
|
|
|
|
#define IAMMediaTypeSample_SetSyncPoint(This,bIsSyncPoint) \
|
|
( (This)->lpVtbl -> SetSyncPoint(This,bIsSyncPoint) )
|
|
|
|
#define IAMMediaTypeSample_IsPreroll(This) \
|
|
( (This)->lpVtbl -> IsPreroll(This) )
|
|
|
|
#define IAMMediaTypeSample_SetPreroll(This,bIsPreroll) \
|
|
( (This)->lpVtbl -> SetPreroll(This,bIsPreroll) )
|
|
|
|
#define IAMMediaTypeSample_GetActualDataLength(This) \
|
|
( (This)->lpVtbl -> GetActualDataLength(This) )
|
|
|
|
#define IAMMediaTypeSample_SetActualDataLength(This,__MIDL__IAMMediaTypeSample0000) \
|
|
( (This)->lpVtbl -> SetActualDataLength(This,__MIDL__IAMMediaTypeSample0000) )
|
|
|
|
#define IAMMediaTypeSample_GetMediaType(This,ppMediaType) \
|
|
( (This)->lpVtbl -> GetMediaType(This,ppMediaType) )
|
|
|
|
#define IAMMediaTypeSample_SetMediaType(This,pMediaType) \
|
|
( (This)->lpVtbl -> SetMediaType(This,pMediaType) )
|
|
|
|
#define IAMMediaTypeSample_IsDiscontinuity(This) \
|
|
( (This)->lpVtbl -> IsDiscontinuity(This) )
|
|
|
|
#define IAMMediaTypeSample_SetDiscontinuity(This,bDiscontinuity) \
|
|
( (This)->lpVtbl -> SetDiscontinuity(This,bDiscontinuity) )
|
|
|
|
#define IAMMediaTypeSample_GetMediaTime(This,pTimeStart,pTimeEnd) \
|
|
( (This)->lpVtbl -> GetMediaTime(This,pTimeStart,pTimeEnd) )
|
|
|
|
#define IAMMediaTypeSample_SetMediaTime(This,pTimeStart,pTimeEnd) \
|
|
( (This)->lpVtbl -> SetMediaTime(This,pTimeStart,pTimeEnd) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IAMMediaTypeSample_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_amstream_0000_0007 */
|
|
/* [local] */
|
|
|
|
DEFINE_GUID(CLSID_AMMultiMediaStream, /* 49c47ce5-9ba4-11d0-8212-00c04fc32c45 */
|
|
0x49c47ce5, 0x9ba4, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);
|
|
DEFINE_GUID(CLSID_AMDirectDrawStream, /* 49c47ce4-9ba4-11d0-8212-00c04fc32c45 */
|
|
0x49c47ce4, 0x9ba4, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);
|
|
DEFINE_GUID(CLSID_AMAudioStream, /* 8496e040-af4c-11d0-8212-00c04fc32c45 */
|
|
0x8496e040, 0xaf4c, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);
|
|
DEFINE_GUID(CLSID_AMAudioData, /* f2468580-af8a-11d0-8212-00c04fc32c45 */
|
|
0xf2468580, 0xaf8a, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);
|
|
DEFINE_GUID(CLSID_AMMediaTypeStream, /* CF0F2F7C-F7BF-11d0-900D-00C04FD9189D */
|
|
0xcf0f2f7c, 0xf7bf, 0x11d0, 0x90, 0xd, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_amstream_0000_0007_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_amstream_0000_0007_v0_0_s_ifspec;
|
|
|
|
/* Additional Prototypes for ALL interfaces */
|
|
|
|
/* end of Additional Prototypes */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|