📄 strmif.h
字号:
ICreateDevEnum * This,
/* [in] */ REFCLSID clsidDeviceClass,
/* [out] */ IEnumMoniker **ppEnumMoniker,
/* [in] */ DWORD dwFlags);
void __RPC_STUB ICreateDevEnum_CreateClassEnumerator_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __ICreateDevEnum_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_strmif_0112 */
/* [local] */
#define CHARS_IN_GUID 39
typedef struct _AMMediaType
{
GUID majortype;
GUID subtype;
BOOL bFixedSizeSamples;
BOOL bTemporalCompression;
ULONG lSampleSize;
GUID formattype;
IUnknown *pUnk;
ULONG cbFormat;
/* [size_is] */ BYTE *pbFormat;
} AM_MEDIA_TYPE;
typedef
enum _PinDirection
{ PINDIR_INPUT = 0,
PINDIR_OUTPUT = PINDIR_INPUT + 1
} PIN_DIRECTION;
#define MAX_PIN_NAME 128
#define MAX_FILTER_NAME 128
typedef LONGLONG REFERENCE_TIME;
typedef double REFTIME;
typedef DWORD_PTR HSEMAPHORE;
typedef DWORD_PTR HEVENT;
typedef struct _AllocatorProperties
{
long cBuffers;
long cbBuffer;
long cbAlign;
long cbPrefix;
} ALLOCATOR_PROPERTIES;
extern RPC_IF_HANDLE __MIDL_itf_strmif_0112_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_strmif_0112_v0_0_s_ifspec;
#ifndef __IPin_INTERFACE_DEFINED__
#define __IPin_INTERFACE_DEFINED__
/* interface IPin */
/* [unique][uuid][object] */
typedef struct _PinInfo
{
IBaseFilter *pFilter;
PIN_DIRECTION dir;
WCHAR achName[ 128 ];
} PIN_INFO;
EXTERN_C const IID IID_IPin;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("56a86891-0ad4-11ce-b03a-0020af0ba770")
IPin : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE Connect(
/* [in] */ IPin *pReceivePin,
/* [in] */ const AM_MEDIA_TYPE *pmt) = 0;
virtual HRESULT STDMETHODCALLTYPE ReceiveConnection(
/* [in] */ IPin *pConnector,
/* [in] */ const AM_MEDIA_TYPE *pmt) = 0;
virtual HRESULT STDMETHODCALLTYPE Disconnect( void) = 0;
virtual HRESULT STDMETHODCALLTYPE ConnectedTo(
/* [out] */ IPin **pPin) = 0;
virtual HRESULT STDMETHODCALLTYPE ConnectionMediaType(
/* [out] */ AM_MEDIA_TYPE *pmt) = 0;
virtual HRESULT STDMETHODCALLTYPE QueryPinInfo(
/* [out] */ PIN_INFO *pInfo) = 0;
virtual HRESULT STDMETHODCALLTYPE QueryDirection(
/* [out] */ PIN_DIRECTION *pPinDir) = 0;
virtual HRESULT STDMETHODCALLTYPE QueryId(
/* [out] */ LPWSTR *Id) = 0;
virtual HRESULT STDMETHODCALLTYPE QueryAccept(
/* [in] */ const AM_MEDIA_TYPE *pmt) = 0;
virtual HRESULT STDMETHODCALLTYPE EnumMediaTypes(
/* [out] */ IEnumMediaTypes **ppEnum) = 0;
virtual HRESULT STDMETHODCALLTYPE QueryInternalConnections(
/* [out] */ IPin **apPin,
/* [out][in] */ ULONG *nPin) = 0;
virtual HRESULT STDMETHODCALLTYPE EndOfStream( void) = 0;
virtual HRESULT STDMETHODCALLTYPE BeginFlush( void) = 0;
virtual HRESULT STDMETHODCALLTYPE EndFlush( void) = 0;
virtual HRESULT STDMETHODCALLTYPE NewSegment(
/* [in] */ REFERENCE_TIME tStart,
/* [in] */ REFERENCE_TIME tStop,
/* [in] */ double dRate) = 0;
};
#else /* C style interface */
typedef struct IPinVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IPin * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IPin * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IPin * This);
HRESULT ( STDMETHODCALLTYPE *Connect )(
IPin * This,
/* [in] */ IPin *pReceivePin,
/* [in] */ const AM_MEDIA_TYPE *pmt);
HRESULT ( STDMETHODCALLTYPE *ReceiveConnection )(
IPin * This,
/* [in] */ IPin *pConnector,
/* [in] */ const AM_MEDIA_TYPE *pmt);
HRESULT ( STDMETHODCALLTYPE *Disconnect )(
IPin * This);
HRESULT ( STDMETHODCALLTYPE *ConnectedTo )(
IPin * This,
/* [out] */ IPin **pPin);
HRESULT ( STDMETHODCALLTYPE *ConnectionMediaType )(
IPin * This,
/* [out] */ AM_MEDIA_TYPE *pmt);
HRESULT ( STDMETHODCALLTYPE *QueryPinInfo )(
IPin * This,
/* [out] */ PIN_INFO *pInfo);
HRESULT ( STDMETHODCALLTYPE *QueryDirection )(
IPin * This,
/* [out] */ PIN_DIRECTION *pPinDir);
HRESULT ( STDMETHODCALLTYPE *QueryId )(
IPin * This,
/* [out] */ LPWSTR *Id);
HRESULT ( STDMETHODCALLTYPE *QueryAccept )(
IPin * This,
/* [in] */ const AM_MEDIA_TYPE *pmt);
HRESULT ( STDMETHODCALLTYPE *EnumMediaTypes )(
IPin * This,
/* [out] */ IEnumMediaTypes **ppEnum);
HRESULT ( STDMETHODCALLTYPE *QueryInternalConnections )(
IPin * This,
/* [out] */ IPin **apPin,
/* [out][in] */ ULONG *nPin);
HRESULT ( STDMETHODCALLTYPE *EndOfStream )(
IPin * This);
HRESULT ( STDMETHODCALLTYPE *BeginFlush )(
IPin * This);
HRESULT ( STDMETHODCALLTYPE *EndFlush )(
IPin * This);
HRESULT ( STDMETHODCALLTYPE *NewSegment )(
IPin * This,
/* [in] */ REFERENCE_TIME tStart,
/* [in] */ REFERENCE_TIME tStop,
/* [in] */ double dRate);
END_INTERFACE
} IPinVtbl;
interface IPin
{
CONST_VTBL struct IPinVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IPin_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define IPin_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define IPin_Release(This) \
(This)->lpVtbl -> Release(This)
#define IPin_Connect(This,pReceivePin,pmt) \
(This)->lpVtbl -> Connect(This,pReceivePin,pmt)
#define IPin_ReceiveConnection(This,pConnector,pmt) \
(This)->lpVtbl -> ReceiveConnection(This,pConnector,pmt)
#define IPin_Disconnect(This) \
(This)->lpVtbl -> Disconnect(This)
#define IPin_ConnectedTo(This,pPin) \
(This)->lpVtbl -> ConnectedTo(This,pPin)
#define IPin_ConnectionMediaType(This,pmt) \
(This)->lpVtbl -> ConnectionMediaType(This,pmt)
#define IPin_QueryPinInfo(This,pInfo) \
(This)->lpVtbl -> QueryPinInfo(This,pInfo)
#define IPin_QueryDirection(This,pPinDir) \
(This)->lpVtbl -> QueryDirection(This,pPinDir)
#define IPin_QueryId(This,Id) \
(This)->lpVtbl -> QueryId(This,Id)
#define IPin_QueryAccept(This,pmt) \
(This)->lpVtbl -> QueryAccept(This,pmt)
#define IPin_EnumMediaTypes(This,ppEnum) \
(This)->lpVtbl -> EnumMediaTypes(This,ppEnum)
#define IPin_QueryInternalConnections(This,apPin,nPin) \
(This)->lpVtbl -> QueryInternalConnections(This,apPin,nPin)
#define IPin_EndOfStream(This) \
(This)->lpVtbl -> EndOfStream(This)
#define IPin_BeginFlush(This) \
(This)->lpVtbl -> BeginFlush(This)
#define IPin_EndFlush(This) \
(This)->lpVtbl -> EndFlush(This)
#define IPin_NewSegment(This,tStart,tStop,dRate) \
(This)->lpVtbl -> NewSegment(This,tStart,tStop,dRate)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE IPin_Connect_Proxy(
IPin * This,
/* [in] */ IPin *pReceivePin,
/* [in] */ const AM_MEDIA_TYPE *pmt);
void __RPC_STUB IPin_Connect_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_ReceiveConnection_Proxy(
IPin * This,
/* [in] */ IPin *pConnector,
/* [in] */ const AM_MEDIA_TYPE *pmt);
void __RPC_STUB IPin_ReceiveConnection_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_Disconnect_Proxy(
IPin * This);
void __RPC_STUB IPin_Disconnect_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_ConnectedTo_Proxy(
IPin * This,
/* [out] */ IPin **pPin);
void __RPC_STUB IPin_ConnectedTo_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_ConnectionMediaType_Proxy(
IPin * This,
/* [out] */ AM_MEDIA_TYPE *pmt);
void __RPC_STUB IPin_ConnectionMediaType_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_QueryPinInfo_Proxy(
IPin * This,
/* [out] */ PIN_INFO *pInfo);
void __RPC_STUB IPin_QueryPinInfo_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_QueryDirection_Proxy(
IPin * This,
/* [out] */ PIN_DIRECTION *pPinDir);
void __RPC_STUB IPin_QueryDirection_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_QueryId_Proxy(
IPin * This,
/* [out] */ LPWSTR *Id);
void __RPC_STUB IPin_QueryId_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_QueryAccept_Proxy(
IPin * This,
/* [in] */ const AM_MEDIA_TYPE *pmt);
void __RPC_STUB IPin_QueryAccept_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_EnumMediaTypes_Proxy(
IPin * This,
/* [out] */ IEnumMediaTypes **ppEnum);
void __RPC_STUB IPin_EnumMediaTypes_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_QueryInternalConnections_Proxy(
IPin * This,
/* [out] */ IPin **apPin,
/* [out][in] */ ULONG *nPin);
void __RPC_STUB IPin_QueryInternalConnections_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_EndOfStream_Proxy(
IPin * This);
void __RPC_STUB IPin_EndOfStream_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_BeginFlush_Proxy(
IPin * This);
void __RPC_STUB IPin_BeginFlush_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IPin_EndFlush_Proxy(
IPin * This);
void __RPC_STUB IPin_EndFlush_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -