I need help in defining the C++ tapi interface in C#. Any help with this
would be appreciated.
#ifndef __ITAMMediaFormat_INTERFACE_DEFINED__
#define __ITAMMediaFormat_INTERFACE_DEFINED__
/* interface ITAMMediaFormat */
/* [object][helpstring][uuid] */
EXTERN_C const IID IID_ITAMMediaFormat;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("0364EB00-4A77-11D1-A671-006097C9A2E8")
ITAMMediaFormat : public IUnknown
{
public:
virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE
get_MediaFormat(
/* [retval][out] */ AM_MEDIA_TYPE **ppmt) = 0;
virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE
put_MediaFormat(
/* [in] */ const AM_MEDIA_TYPE *pmt) = 0;
};
#else /* C style interface */
typedef struct ITAMMediaFormatVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
ITAMMediaFormat * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
ITAMMediaFormat * This);
ULONG ( STDMETHODCALLTYPE *Release )(
ITAMMediaFormat * This);
/* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE
*get_MediaFormat )(
ITAMMediaFormat * This,
/* [retval][out] */ AM_MEDIA_TYPE **ppmt);
/* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE
*put_MediaFormat )(
ITAMMediaFormat * This,
/* [in] */ const AM_MEDIA_TYPE *pmt);
END_INTERFACE
} ITAMMediaFormatVtbl;
interface ITAMMediaFormat
{
CONST_VTBL struct ITAMMediaFormatVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define ITAMMediaFormat_QueryInterface(This,riid,ppvObject ) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define ITAMMediaFormat_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define ITAMMediaFormat_Release(This) \
(This)->lpVtbl -> Release(This)
#define ITAMMediaFormat_get_MediaFormat(This,ppmt) \
(This)->lpVtbl -> get_MediaFormat(This,ppmt)
#define ITAMMediaFormat_put_MediaFormat(This,pmt) \
(This)->lpVtbl -> put_MediaFormat(This,pmt)
#endif /* COBJMACROS */
#endif /* C style interface */
/* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE
ITAMMediaFormat_get_MediaFormat_Proxy(
ITAMMediaFormat * This,
/* [retval][out] */ AM_MEDIA_TYPE **ppmt);
void __RPC_STUB ITAMMediaFormat_get_MediaFormat_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
/* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE
ITAMMediaFormat_put_MediaFormat_Proxy(
ITAMMediaFormat * This,
/* [in] */ const AM_MEDIA_TYPE *pmt);
void __RPC_STUB ITAMMediaFormat_put_MediaFormat_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __ITAMMediaFormat_INTERFACE_DEFINED__ */