📄 mmstream.h
字号:
/* interface IMediaStream */
/* [unique][uuid][object] */
EXTERN_C const IID IID_IMediaStream;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("B502D1BD-9A57-11d0-8FDE-00C04FD9189D")
IMediaStream : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetMultiMediaStream(
/* [out] */ IMultiMediaStream **ppMultiMediaStream) = 0;
virtual HRESULT STDMETHODCALLTYPE GetInformation(
/* [out] */ MSPID *pPurposeId,
/* [out] */ STREAM_TYPE *pType) = 0;
virtual HRESULT STDMETHODCALLTYPE SetSameFormat(
/* [in] */ IMediaStream *pStreamThatHasDesiredFormat,
/* [in] */ DWORD dwFlags) = 0;
virtual HRESULT STDMETHODCALLTYPE AllocateSample(
/* [in] */ DWORD dwFlags,
/* [out] */ IStreamSample **ppSample) = 0;
virtual HRESULT STDMETHODCALLTYPE CreateSharedSample(
/* [in] */ IStreamSample *pExistingSample,
/* [in] */ DWORD dwFlags,
/* [out] */ IStreamSample **ppNewSample) = 0;
virtual HRESULT STDMETHODCALLTYPE SendEndOfStream(
DWORD dwFlags) = 0;
};
#else /* C style interface */
typedef struct IMediaStreamVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IMediaStream * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IMediaStream * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IMediaStream * This);
HRESULT ( STDMETHODCALLTYPE *GetMultiMediaStream )(
IMediaStream * This,
/* [out] */ IMultiMediaStream **ppMultiMediaStream);
HRESULT ( STDMETHODCALLTYPE *GetInformation )(
IMediaStream * This,
/* [out] */ MSPID *pPurposeId,
/* [out] */ STREAM_TYPE *pType);
HRESULT ( STDMETHODCALLTYPE *SetSameFormat )(
IMediaStream * This,
/* [in] */ IMediaStream *pStreamThatHasDesiredFormat,
/* [in] */ DWORD dwFlags);
HRESULT ( STDMETHODCALLTYPE *AllocateSample )(
IMediaStream * This,
/* [in] */ DWORD dwFlags,
/* [out] */ IStreamSample **ppSample);
HRESULT ( STDMETHODCALLTYPE *CreateSharedSample )(
IMediaStream * This,
/* [in] */ IStreamSample *pExistingSample,
/* [in] */ DWORD dwFlags,
/* [out] */ IStreamSample **ppNewSample);
HRESULT ( STDMETHODCALLTYPE *SendEndOfStream )(
IMediaStream * This,
DWORD dwFlags);
END_INTERFACE
} IMediaStreamVtbl;
interface IMediaStream
{
CONST_VTBL struct IMediaStreamVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IMediaStream_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define IMediaStream_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define IMediaStream_Release(This) \
(This)->lpVtbl -> Release(This)
#define IMediaStream_GetMultiMediaStream(This,ppMultiMediaStream) \
(This)->lpVtbl -> GetMultiMediaStream(This,ppMultiMediaStream)
#define IMediaStream_GetInformation(This,pPurposeId,pType) \
(This)->lpVtbl -> GetInformation(This,pPurposeId,pType)
#define IMediaStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) \
(This)->lpVtbl -> SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)
#define IMediaStream_AllocateSample(This,dwFlags,ppSample) \
(This)->lpVtbl -> AllocateSample(This,dwFlags,ppSample)
#define IMediaStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) \
(This)->lpVtbl -> CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)
#define IMediaStream_SendEndOfStream(This,dwFlags) \
(This)->lpVtbl -> SendEndOfStream(This,dwFlags)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE IMediaStream_GetMultiMediaStream_Proxy(
IMediaStream * This,
/* [out] */ IMultiMediaStream **ppMultiMediaStream);
void __RPC_STUB IMediaStream_GetMultiMediaStream_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMediaStream_GetInformation_Proxy(
IMediaStream * This,
/* [out] */ MSPID *pPurposeId,
/* [out] */ STREAM_TYPE *pType);
void __RPC_STUB IMediaStream_GetInformation_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMediaStream_SetSameFormat_Proxy(
IMediaStream * This,
/* [in] */ IMediaStream *pStreamThatHasDesiredFormat,
/* [in] */ DWORD dwFlags);
void __RPC_STUB IMediaStream_SetSameFormat_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMediaStream_AllocateSample_Proxy(
IMediaStream * This,
/* [in] */ DWORD dwFlags,
/* [out] */ IStreamSample **ppSample);
void __RPC_STUB IMediaStream_AllocateSample_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMediaStream_CreateSharedSample_Proxy(
IMediaStream * This,
/* [in] */ IStreamSample *pExistingSample,
/* [in] */ DWORD dwFlags,
/* [out] */ IStreamSample **ppNewSample);
void __RPC_STUB IMediaStream_CreateSharedSample_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IMediaStream_SendEndOfStream_Proxy(
IMediaStream * This,
DWORD dwFlags);
void __RPC_STUB IMediaStream_SendEndOfStream_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __IMediaStream_INTERFACE_DEFINED__ */
#ifndef __IStreamSample_INTERFACE_DEFINED__
#define __IStreamSample_INTERFACE_DEFINED__
/* interface IStreamSample */
/* [unique][uuid][local][object] */
EXTERN_C const IID IID_IStreamSample;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("B502D1BE-9A57-11d0-8FDE-00C04FD9189D")
IStreamSample : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetMediaStream(
/* [in] */ IMediaStream **ppMediaStream) = 0;
virtual HRESULT STDMETHODCALLTYPE GetSampleTimes(
/* [out] */ STREAM_TIME *pStartTime,
/* [out] */ STREAM_TIME *pEndTime,
/* [out] */ STREAM_TIME *pCurrentTime) = 0;
virtual HRESULT STDMETHODCALLTYPE SetSampleTimes(
/* [in] */ const STREAM_TIME *pStartTime,
/* [in] */ const STREAM_TIME *pEndTime) = 0;
virtual HRESULT STDMETHODCALLTYPE Update(
/* [in] */ DWORD dwFlags,
/* [in] */ HANDLE hEvent,
/* [in] */ PAPCFUNC pfnAPC,
/* [in] */ DWORD_PTR dwAPCData) = 0;
virtual HRESULT STDMETHODCALLTYPE CompletionStatus(
/* [in] */ DWORD dwFlags,
/* [in] */ DWORD dwMilliseconds) = 0;
};
#else /* C style interface */
typedef struct IStreamSampleVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IStreamSample * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IStreamSample * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IStreamSample * This);
HRESULT ( STDMETHODCALLTYPE *GetMediaStream )(
IStreamSample * This,
/* [in] */ IMediaStream **ppMediaStream);
HRESULT ( STDMETHODCALLTYPE *GetSampleTimes )(
IStreamSample * This,
/* [out] */ STREAM_TIME *pStartTime,
/* [out] */ STREAM_TIME *pEndTime,
/* [out] */ STREAM_TIME *pCurrentTime);
HRESULT ( STDMETHODCALLTYPE *SetSampleTimes )(
IStreamSample * This,
/* [in] */ const STREAM_TIME *pStartTime,
/* [in] */ const STREAM_TIME *pEndTime);
HRESULT ( STDMETHODCALLTYPE *Update )(
IStreamSample * This,
/* [in] */ DWORD dwFlags,
/* [in] */ HANDLE hEvent,
/* [in] */ PAPCFUNC pfnAPC,
/* [in] */ DWORD_PTR dwAPCData);
HRESULT ( STDMETHODCALLTYPE *CompletionStatus )(
IStreamSample * This,
/* [in] */ DWORD dwFlags,
/* [in] */ DWORD dwMilliseconds);
END_INTERFACE
} IStreamSampleVtbl;
interface IStreamSample
{
CONST_VTBL struct IStreamSampleVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IStreamSample_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define IStreamSample_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define IStreamSample_Release(This) \
(This)->lpVtbl -> Release(This)
#define IStreamSample_GetMediaStream(This,ppMediaStream) \
(This)->lpVtbl -> GetMediaStream(This,ppMediaStream)
#define IStreamSample_GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime) \
(This)->lpVtbl -> GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)
#define IStreamSample_SetSampleTimes(This,pStartTime,pEndTime) \
(This)->lpVtbl -> SetSampleTimes(This,pStartTime,pEndTime)
#define IStreamSample_Update(This,dwFlags,hEvent,pfnAPC,dwAPCData) \
(This)->lpVtbl -> Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)
#define IStreamSample_CompletionStatus(This,dwFlags,dwMilliseconds) \
(This)->lpVtbl -> CompletionStatus(This,dwFlags,dwMilliseconds)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE IStreamSample_GetMediaStream_Proxy(
IStreamSample * This,
/* [in] */ IMediaStream **ppMediaStream);
void __RPC_STUB IStreamSample_GetMediaStream_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamSample_GetSampleTimes_Proxy(
IStreamSample * This,
/* [out] */ STREAM_TIME *pStartTime,
/* [out] */ STREAM_TIME *pEndTime,
/* [out] */ STREAM_TIME *pCurrentTime);
void __RPC_STUB IStreamSample_GetSampleTimes_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamSample_SetSampleTimes_Proxy(
IStreamSample * This,
/* [in] */ const STREAM_TIME *pStartTime,
/* [in] */ const STREAM_TIME *pEndTime);
void __RPC_STUB IStreamSample_SetSampleTimes_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamSample_Update_Proxy(
IStreamSample * This,
/* [in] */ DWORD dwFlags,
/* [in] */ HANDLE hEvent,
/* [in] */ PAPCFUNC pfnAPC,
/* [in] */ DWORD_PTR dwAPCData);
void __RPC_STUB IStreamSample_Update_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamSample_CompletionStatus_Proxy(
IStreamSample * This,
/* [in] */ DWORD dwFlags,
/* [in] */ DWORD dwMilliseconds);
void __RPC_STUB IStreamSample_CompletionStatus_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __IStreamSample_INTERFACE_DEFINED__ */
/* Additional Prototypes for ALL interfaces */
/* end of Additional Prototypes */
#ifdef __cplusplus
}
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -