mirror of https://github.com/UMSKT/xpmgr.git
4969 lines
164 KiB
C++
4969 lines
164 KiB
C++
|
|
|
|
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
|
|
|
|
|
|
/* File created by MIDL compiler version 7.00.0555 */
|
|
/* Compiler settings for mfobjects.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 __mfobjects_h__
|
|
#define __mfobjects_h__
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
|
#pragma once
|
|
#endif
|
|
|
|
/* Forward Declarations */
|
|
|
|
#ifndef __IMFAttributes_FWD_DEFINED__
|
|
#define __IMFAttributes_FWD_DEFINED__
|
|
typedef interface IMFAttributes IMFAttributes;
|
|
#endif /* __IMFAttributes_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFMediaBuffer_FWD_DEFINED__
|
|
#define __IMFMediaBuffer_FWD_DEFINED__
|
|
typedef interface IMFMediaBuffer IMFMediaBuffer;
|
|
#endif /* __IMFMediaBuffer_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFSample_FWD_DEFINED__
|
|
#define __IMFSample_FWD_DEFINED__
|
|
typedef interface IMFSample IMFSample;
|
|
#endif /* __IMFSample_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMF2DBuffer_FWD_DEFINED__
|
|
#define __IMF2DBuffer_FWD_DEFINED__
|
|
typedef interface IMF2DBuffer IMF2DBuffer;
|
|
#endif /* __IMF2DBuffer_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFMediaType_FWD_DEFINED__
|
|
#define __IMFMediaType_FWD_DEFINED__
|
|
typedef interface IMFMediaType IMFMediaType;
|
|
#endif /* __IMFMediaType_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFAudioMediaType_FWD_DEFINED__
|
|
#define __IMFAudioMediaType_FWD_DEFINED__
|
|
typedef interface IMFAudioMediaType IMFAudioMediaType;
|
|
#endif /* __IMFAudioMediaType_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFVideoMediaType_FWD_DEFINED__
|
|
#define __IMFVideoMediaType_FWD_DEFINED__
|
|
typedef interface IMFVideoMediaType IMFVideoMediaType;
|
|
#endif /* __IMFVideoMediaType_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFAsyncResult_FWD_DEFINED__
|
|
#define __IMFAsyncResult_FWD_DEFINED__
|
|
typedef interface IMFAsyncResult IMFAsyncResult;
|
|
#endif /* __IMFAsyncResult_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFAsyncCallback_FWD_DEFINED__
|
|
#define __IMFAsyncCallback_FWD_DEFINED__
|
|
typedef interface IMFAsyncCallback IMFAsyncCallback;
|
|
#endif /* __IMFAsyncCallback_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFMediaEvent_FWD_DEFINED__
|
|
#define __IMFMediaEvent_FWD_DEFINED__
|
|
typedef interface IMFMediaEvent IMFMediaEvent;
|
|
#endif /* __IMFMediaEvent_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFMediaEventGenerator_FWD_DEFINED__
|
|
#define __IMFMediaEventGenerator_FWD_DEFINED__
|
|
typedef interface IMFMediaEventGenerator IMFMediaEventGenerator;
|
|
#endif /* __IMFMediaEventGenerator_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFRemoteAsyncCallback_FWD_DEFINED__
|
|
#define __IMFRemoteAsyncCallback_FWD_DEFINED__
|
|
typedef interface IMFRemoteAsyncCallback IMFRemoteAsyncCallback;
|
|
#endif /* __IMFRemoteAsyncCallback_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFByteStream_FWD_DEFINED__
|
|
#define __IMFByteStream_FWD_DEFINED__
|
|
typedef interface IMFByteStream IMFByteStream;
|
|
#endif /* __IMFByteStream_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFCollection_FWD_DEFINED__
|
|
#define __IMFCollection_FWD_DEFINED__
|
|
typedef interface IMFCollection IMFCollection;
|
|
#endif /* __IMFCollection_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFMediaEventQueue_FWD_DEFINED__
|
|
#define __IMFMediaEventQueue_FWD_DEFINED__
|
|
typedef interface IMFMediaEventQueue IMFMediaEventQueue;
|
|
#endif /* __IMFMediaEventQueue_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFActivate_FWD_DEFINED__
|
|
#define __IMFActivate_FWD_DEFINED__
|
|
typedef interface IMFActivate IMFActivate;
|
|
#endif /* __IMFActivate_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFPluginControl_FWD_DEFINED__
|
|
#define __IMFPluginControl_FWD_DEFINED__
|
|
typedef interface IMFPluginControl IMFPluginControl;
|
|
#endif /* __IMFPluginControl_FWD_DEFINED__ */
|
|
|
|
|
|
/* header files for imported files */
|
|
#include "unknwn.h"
|
|
#include "propsys.h"
|
|
#include "mediaobj.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"{
|
|
#endif
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0000 */
|
|
/* [local] */
|
|
|
|
typedef ULONGLONG QWORD;
|
|
|
|
#include <mmreg.h>
|
|
#if 0
|
|
|
|
#pragma pack(push, 1)
|
|
typedef struct tWAVEFORMATEX
|
|
{
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wBitsPerSample;
|
|
WORD cbSize;
|
|
BYTE pExtraBytes[ 1 ];
|
|
} WAVEFORMATEX;
|
|
|
|
typedef struct tWAVEFORMATEX *PWAVEFORMATEX;
|
|
|
|
typedef struct tWAVEFORMATEX *NPWAVEFORMATEX;
|
|
|
|
typedef struct tWAVEFORMATEX *LPWAVEFORMATEX;
|
|
|
|
typedef /* [public] */ struct __MIDL___MIDL_itf_mfobjects_0000_0000_0001
|
|
{
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wBitsPerSample;
|
|
WORD cbSize;
|
|
WORD wValidBitsPerSample;
|
|
DWORD dwChannelMask;
|
|
GUID SubFormat;
|
|
} WAVEFORMATEXTENSIBLE;
|
|
|
|
typedef struct __MIDL___MIDL_itf_mfobjects_0000_0000_0001 *PWAVEFORMATEXTENSIBLE;
|
|
|
|
|
|
#pragma pack(pop)
|
|
#endif /* 0 */
|
|
typedef
|
|
enum _MF_ATTRIBUTE_TYPE
|
|
{ MF_ATTRIBUTE_UINT32 = VT_UI4,
|
|
MF_ATTRIBUTE_UINT64 = VT_UI8,
|
|
MF_ATTRIBUTE_DOUBLE = VT_R8,
|
|
MF_ATTRIBUTE_GUID = VT_CLSID,
|
|
MF_ATTRIBUTE_STRING = VT_LPWSTR,
|
|
MF_ATTRIBUTE_BLOB = ( VT_VECTOR | VT_UI1 ) ,
|
|
MF_ATTRIBUTE_IUNKNOWN = VT_UNKNOWN
|
|
} MF_ATTRIBUTE_TYPE;
|
|
|
|
typedef
|
|
enum _MF_ATTRIBUTES_MATCH_TYPE
|
|
{ MF_ATTRIBUTES_MATCH_OUR_ITEMS = 0,
|
|
MF_ATTRIBUTES_MATCH_THEIR_ITEMS = 1,
|
|
MF_ATTRIBUTES_MATCH_ALL_ITEMS = 2,
|
|
MF_ATTRIBUTES_MATCH_INTERSECTION = 3,
|
|
MF_ATTRIBUTES_MATCH_SMALLER = 4
|
|
} MF_ATTRIBUTES_MATCH_TYPE;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0000_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0000_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFAttributes_INTERFACE_DEFINED__
|
|
#define __IMFAttributes_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFAttributes */
|
|
/* [uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFAttributes;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("2cd2d921-c447-44a7-a13c-4adabfc247e3")
|
|
IMFAttributes : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetItem(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [full][out][in] */ __RPC__inout_opt PROPVARIANT *pValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetItemType(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out MF_ATTRIBUTE_TYPE *pType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CompareItem(
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFPROPVARIANT Value,
|
|
/* [out] */ __RPC__out BOOL *pbResult) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Compare(
|
|
__RPC__in_opt IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
/* [out] */ __RPC__out BOOL *pbResult) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUINT32(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *punValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUINT64(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT64 *punValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDouble(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out double *pfValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetGUID(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out GUID *pguidValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStringLength(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *pcchLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetString(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(cchBufSize) LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
/* [full][out][in] */ __RPC__inout_opt UINT32 *pcchLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAllocatedString(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(( *pcchLength + 1 ) ) LPWSTR *ppwszValue,
|
|
/* [out] */ __RPC__out UINT32 *pcchLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBlobSize(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *pcbBlobSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBlob(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(cbBufSize) UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
/* [full][out][in] */ __RPC__inout_opt UINT32 *pcbBlobSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAllocatedBlob(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*pcbSize) UINT8 **ppBuf,
|
|
/* [out] */ __RPC__out UINT32 *pcbSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUnknown(
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFIID riid,
|
|
/* [iid_is][out] */ __RPC__deref_out_opt LPVOID *ppv) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetItem(
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFPROPVARIANT Value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DeleteItem(
|
|
__RPC__in REFGUID guidKey) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DeleteAllItems( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetUINT32(
|
|
__RPC__in REFGUID guidKey,
|
|
UINT32 unValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetUINT64(
|
|
__RPC__in REFGUID guidKey,
|
|
UINT64 unValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetDouble(
|
|
__RPC__in REFGUID guidKey,
|
|
double fValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetGUID(
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFGUID guidValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetString(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR wszValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetBlob(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(cbBufSize) const UINT8 *pBuf,
|
|
UINT32 cbBufSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetUnknown(
|
|
__RPC__in REFGUID guidKey,
|
|
/* [in] */ __RPC__in_opt IUnknown *pUnknown) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE LockStore( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE UnlockStore( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCount(
|
|
/* [out] */ __RPC__out UINT32 *pcItems) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetItemByIndex(
|
|
UINT32 unIndex,
|
|
/* [out] */ __RPC__out GUID *pguidKey,
|
|
/* [full][out][in] */ __RPC__inout_opt PROPVARIANT *pValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CopyAllItems(
|
|
/* [in] */ __RPC__in_opt IMFAttributes *pDest) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFAttributesVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFAttributes * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFAttributes * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFAttributes * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItem )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [full][out][in] */ __RPC__inout_opt PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemType )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CompareItem )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFPROPVARIANT Value,
|
|
/* [out] */ __RPC__out BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Compare )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in_opt IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
/* [out] */ __RPC__out BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT32 )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT64 )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT64 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDouble )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out double *pfValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetGUID )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out GUID *pguidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStringLength )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(cchBufSize) LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
/* [full][out][in] */ __RPC__inout_opt UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedString )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(( *pcchLength + 1 ) ) LPWSTR *ppwszValue,
|
|
/* [out] */ __RPC__out UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlobSize )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlob )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(cbBufSize) UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
/* [full][out][in] */ __RPC__inout_opt UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedBlob )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*pcbSize) UINT8 **ppBuf,
|
|
/* [out] */ __RPC__out UINT32 *pcbSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUnknown )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFIID riid,
|
|
/* [iid_is][out] */ __RPC__deref_out_opt LPVOID *ppv);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetItem )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFPROPVARIANT Value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteItem )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteAllItems )(
|
|
__RPC__in IMFAttributes * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT32 )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT64 )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDouble )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetGUID )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFGUID guidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR wszValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBlob )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(cbBufSize) const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUnknown )(
|
|
__RPC__in IMFAttributes * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [in] */ __RPC__in_opt IUnknown *pUnknown);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LockStore )(
|
|
__RPC__in IMFAttributes * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *UnlockStore )(
|
|
__RPC__in IMFAttributes * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCount )(
|
|
__RPC__in IMFAttributes * This,
|
|
/* [out] */ __RPC__out UINT32 *pcItems);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemByIndex )(
|
|
__RPC__in IMFAttributes * This,
|
|
UINT32 unIndex,
|
|
/* [out] */ __RPC__out GUID *pguidKey,
|
|
/* [full][out][in] */ __RPC__inout_opt PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CopyAllItems )(
|
|
__RPC__in IMFAttributes * This,
|
|
/* [in] */ __RPC__in_opt IMFAttributes *pDest);
|
|
|
|
END_INTERFACE
|
|
} IMFAttributesVtbl;
|
|
|
|
interface IMFAttributes
|
|
{
|
|
CONST_VTBL struct IMFAttributesVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFAttributes_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFAttributes_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFAttributes_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFAttributes_GetItem(This,guidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItem(This,guidKey,pValue) )
|
|
|
|
#define IMFAttributes_GetItemType(This,guidKey,pType) \
|
|
( (This)->lpVtbl -> GetItemType(This,guidKey,pType) )
|
|
|
|
#define IMFAttributes_CompareItem(This,guidKey,Value,pbResult) \
|
|
( (This)->lpVtbl -> CompareItem(This,guidKey,Value,pbResult) )
|
|
|
|
#define IMFAttributes_Compare(This,pTheirs,MatchType,pbResult) \
|
|
( (This)->lpVtbl -> Compare(This,pTheirs,MatchType,pbResult) )
|
|
|
|
#define IMFAttributes_GetUINT32(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT32(This,guidKey,punValue) )
|
|
|
|
#define IMFAttributes_GetUINT64(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT64(This,guidKey,punValue) )
|
|
|
|
#define IMFAttributes_GetDouble(This,guidKey,pfValue) \
|
|
( (This)->lpVtbl -> GetDouble(This,guidKey,pfValue) )
|
|
|
|
#define IMFAttributes_GetGUID(This,guidKey,pguidValue) \
|
|
( (This)->lpVtbl -> GetGUID(This,guidKey,pguidValue) )
|
|
|
|
#define IMFAttributes_GetStringLength(This,guidKey,pcchLength) \
|
|
( (This)->lpVtbl -> GetStringLength(This,guidKey,pcchLength) )
|
|
|
|
#define IMFAttributes_GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) \
|
|
( (This)->lpVtbl -> GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) )
|
|
|
|
#define IMFAttributes_GetAllocatedString(This,guidKey,ppwszValue,pcchLength) \
|
|
( (This)->lpVtbl -> GetAllocatedString(This,guidKey,ppwszValue,pcchLength) )
|
|
|
|
#define IMFAttributes_GetBlobSize(This,guidKey,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlobSize(This,guidKey,pcbBlobSize) )
|
|
|
|
#define IMFAttributes_GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) )
|
|
|
|
#define IMFAttributes_GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) \
|
|
( (This)->lpVtbl -> GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) )
|
|
|
|
#define IMFAttributes_GetUnknown(This,guidKey,riid,ppv) \
|
|
( (This)->lpVtbl -> GetUnknown(This,guidKey,riid,ppv) )
|
|
|
|
#define IMFAttributes_SetItem(This,guidKey,Value) \
|
|
( (This)->lpVtbl -> SetItem(This,guidKey,Value) )
|
|
|
|
#define IMFAttributes_DeleteItem(This,guidKey) \
|
|
( (This)->lpVtbl -> DeleteItem(This,guidKey) )
|
|
|
|
#define IMFAttributes_DeleteAllItems(This) \
|
|
( (This)->lpVtbl -> DeleteAllItems(This) )
|
|
|
|
#define IMFAttributes_SetUINT32(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT32(This,guidKey,unValue) )
|
|
|
|
#define IMFAttributes_SetUINT64(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT64(This,guidKey,unValue) )
|
|
|
|
#define IMFAttributes_SetDouble(This,guidKey,fValue) \
|
|
( (This)->lpVtbl -> SetDouble(This,guidKey,fValue) )
|
|
|
|
#define IMFAttributes_SetGUID(This,guidKey,guidValue) \
|
|
( (This)->lpVtbl -> SetGUID(This,guidKey,guidValue) )
|
|
|
|
#define IMFAttributes_SetString(This,guidKey,wszValue) \
|
|
( (This)->lpVtbl -> SetString(This,guidKey,wszValue) )
|
|
|
|
#define IMFAttributes_SetBlob(This,guidKey,pBuf,cbBufSize) \
|
|
( (This)->lpVtbl -> SetBlob(This,guidKey,pBuf,cbBufSize) )
|
|
|
|
#define IMFAttributes_SetUnknown(This,guidKey,pUnknown) \
|
|
( (This)->lpVtbl -> SetUnknown(This,guidKey,pUnknown) )
|
|
|
|
#define IMFAttributes_LockStore(This) \
|
|
( (This)->lpVtbl -> LockStore(This) )
|
|
|
|
#define IMFAttributes_UnlockStore(This) \
|
|
( (This)->lpVtbl -> UnlockStore(This) )
|
|
|
|
#define IMFAttributes_GetCount(This,pcItems) \
|
|
( (This)->lpVtbl -> GetCount(This,pcItems) )
|
|
|
|
#define IMFAttributes_GetItemByIndex(This,unIndex,pguidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItemByIndex(This,unIndex,pguidKey,pValue) )
|
|
|
|
#define IMFAttributes_CopyAllItems(This,pDest) \
|
|
( (This)->lpVtbl -> CopyAllItems(This,pDest) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFAttributes_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0001 */
|
|
/* [local] */
|
|
|
|
|
|
enum MF_ATTRIBUTE_SERIALIZE_OPTIONS
|
|
{ MF_ATTRIBUTE_SERIALIZE_UNKNOWN_BYREF = 0x1
|
|
} ;
|
|
STDAPI MFSerializeAttributesToStream(
|
|
IMFAttributes * pAttr,
|
|
DWORD dwOptions,
|
|
IStream * pStm);
|
|
STDAPI MFDeserializeAttributesFromStream(
|
|
IMFAttributes * pAttr,
|
|
DWORD dwOptions,
|
|
IStream * pStm);
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0001_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0001_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFMediaBuffer_INTERFACE_DEFINED__
|
|
#define __IMFMediaBuffer_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFMediaBuffer */
|
|
/* [local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFMediaBuffer;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("045FA593-8799-42b8-BC8D-8968C6453507")
|
|
IMFMediaBuffer : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Lock(
|
|
/* [annotation][out] */
|
|
__deref_out_bcount_part(*pcbMaxLength, *pcbCurrentLength) BYTE **ppbBuffer,
|
|
/* [annotation][out] */
|
|
__out_opt DWORD *pcbMaxLength,
|
|
/* [annotation][out] */
|
|
__out_opt DWORD *pcbCurrentLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Unlock( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCurrentLength(
|
|
/* [annotation][out] */
|
|
__out DWORD *pcbCurrentLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCurrentLength(
|
|
/* [in] */ DWORD cbCurrentLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetMaxLength(
|
|
/* [annotation][out] */
|
|
__out DWORD *pcbMaxLength) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFMediaBufferVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFMediaBuffer * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFMediaBuffer * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFMediaBuffer * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Lock )(
|
|
IMFMediaBuffer * This,
|
|
/* [annotation][out] */
|
|
__deref_out_bcount_part(*pcbMaxLength, *pcbCurrentLength) BYTE **ppbBuffer,
|
|
/* [annotation][out] */
|
|
__out_opt DWORD *pcbMaxLength,
|
|
/* [annotation][out] */
|
|
__out_opt DWORD *pcbCurrentLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Unlock )(
|
|
IMFMediaBuffer * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCurrentLength )(
|
|
IMFMediaBuffer * This,
|
|
/* [annotation][out] */
|
|
__out DWORD *pcbCurrentLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCurrentLength )(
|
|
IMFMediaBuffer * This,
|
|
/* [in] */ DWORD cbCurrentLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMaxLength )(
|
|
IMFMediaBuffer * This,
|
|
/* [annotation][out] */
|
|
__out DWORD *pcbMaxLength);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaBufferVtbl;
|
|
|
|
interface IMFMediaBuffer
|
|
{
|
|
CONST_VTBL struct IMFMediaBufferVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFMediaBuffer_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFMediaBuffer_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFMediaBuffer_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFMediaBuffer_Lock(This,ppbBuffer,pcbMaxLength,pcbCurrentLength) \
|
|
( (This)->lpVtbl -> Lock(This,ppbBuffer,pcbMaxLength,pcbCurrentLength) )
|
|
|
|
#define IMFMediaBuffer_Unlock(This) \
|
|
( (This)->lpVtbl -> Unlock(This) )
|
|
|
|
#define IMFMediaBuffer_GetCurrentLength(This,pcbCurrentLength) \
|
|
( (This)->lpVtbl -> GetCurrentLength(This,pcbCurrentLength) )
|
|
|
|
#define IMFMediaBuffer_SetCurrentLength(This,cbCurrentLength) \
|
|
( (This)->lpVtbl -> SetCurrentLength(This,cbCurrentLength) )
|
|
|
|
#define IMFMediaBuffer_GetMaxLength(This,pcbMaxLength) \
|
|
( (This)->lpVtbl -> GetMaxLength(This,pcbMaxLength) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFMediaBuffer_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFSample_INTERFACE_DEFINED__
|
|
#define __IMFSample_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFSample */
|
|
/* [local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFSample;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("c40a00f2-b93a-4d80-ae8c-5a1c634f58e4")
|
|
IMFSample : public IMFAttributes
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetSampleFlags(
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwSampleFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetSampleFlags(
|
|
/* [in] */ DWORD dwSampleFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetSampleTime(
|
|
/* [annotation][out] */
|
|
__out LONGLONG *phnsSampleTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetSampleTime(
|
|
/* [in] */ LONGLONG hnsSampleTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetSampleDuration(
|
|
/* [annotation][out] */
|
|
__out LONGLONG *phnsSampleDuration) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetSampleDuration(
|
|
/* [in] */ LONGLONG hnsSampleDuration) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferCount(
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwBufferCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferByIndex(
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [annotation][out] */
|
|
__out IMFMediaBuffer **ppBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ConvertToContiguousBuffer(
|
|
/* [annotation][out] */
|
|
__out IMFMediaBuffer **ppBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE AddBuffer(
|
|
/* [in] */ IMFMediaBuffer *pBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RemoveBufferByIndex(
|
|
/* [in] */ DWORD dwIndex) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RemoveAllBuffers( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTotalLength(
|
|
/* [annotation][out] */
|
|
__out DWORD *pcbTotalLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CopyToBuffer(
|
|
/* [in] */ IMFMediaBuffer *pBuffer) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFSampleVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFSample * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFSample * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItem )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [full][out][in] */ PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemType )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CompareItem )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
/* [out] */ BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Compare )(
|
|
IMFSample * This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
/* [out] */ BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT32 )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT64 )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT64 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDouble )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ double *pfValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetGUID )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ GUID *pguidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStringLength )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][out] */ LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
/* [full][out][in] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedString )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ LPWSTR *ppwszValue,
|
|
/* [out] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlobSize )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlob )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][out] */ UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
/* [full][out][in] */ UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedBlob )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ UINT8 **ppBuf,
|
|
/* [out] */ UINT32 *pcbSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUnknown )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
/* [iid_is][out] */ LPVOID *ppv);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetItem )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteItem )(
|
|
IMFSample * This,
|
|
REFGUID guidKey);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteAllItems )(
|
|
IMFSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT32 )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT64 )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDouble )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetGUID )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
REFGUID guidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [string][in] */ LPCWSTR wszValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBlob )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][in] */ const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUnknown )(
|
|
IMFSample * This,
|
|
REFGUID guidKey,
|
|
/* [in] */ IUnknown *pUnknown);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LockStore )(
|
|
IMFSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *UnlockStore )(
|
|
IMFSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCount )(
|
|
IMFSample * This,
|
|
/* [out] */ UINT32 *pcItems);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemByIndex )(
|
|
IMFSample * This,
|
|
UINT32 unIndex,
|
|
/* [out] */ GUID *pguidKey,
|
|
/* [full][out][in] */ PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CopyAllItems )(
|
|
IMFSample * This,
|
|
/* [in] */ IMFAttributes *pDest);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetSampleFlags )(
|
|
IMFSample * This,
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwSampleFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSampleFlags )(
|
|
IMFSample * This,
|
|
/* [in] */ DWORD dwSampleFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetSampleTime )(
|
|
IMFSample * This,
|
|
/* [annotation][out] */
|
|
__out LONGLONG *phnsSampleTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSampleTime )(
|
|
IMFSample * This,
|
|
/* [in] */ LONGLONG hnsSampleTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetSampleDuration )(
|
|
IMFSample * This,
|
|
/* [annotation][out] */
|
|
__out LONGLONG *phnsSampleDuration);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetSampleDuration )(
|
|
IMFSample * This,
|
|
/* [in] */ LONGLONG hnsSampleDuration);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferCount )(
|
|
IMFSample * This,
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwBufferCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBufferByIndex )(
|
|
IMFSample * This,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [annotation][out] */
|
|
__out IMFMediaBuffer **ppBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ConvertToContiguousBuffer )(
|
|
IMFSample * This,
|
|
/* [annotation][out] */
|
|
__out IMFMediaBuffer **ppBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AddBuffer )(
|
|
IMFSample * This,
|
|
/* [in] */ IMFMediaBuffer *pBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RemoveBufferByIndex )(
|
|
IMFSample * This,
|
|
/* [in] */ DWORD dwIndex);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RemoveAllBuffers )(
|
|
IMFSample * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetTotalLength )(
|
|
IMFSample * This,
|
|
/* [annotation][out] */
|
|
__out DWORD *pcbTotalLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CopyToBuffer )(
|
|
IMFSample * This,
|
|
/* [in] */ IMFMediaBuffer *pBuffer);
|
|
|
|
END_INTERFACE
|
|
} IMFSampleVtbl;
|
|
|
|
interface IMFSample
|
|
{
|
|
CONST_VTBL struct IMFSampleVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFSample_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFSample_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFSample_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFSample_GetItem(This,guidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItem(This,guidKey,pValue) )
|
|
|
|
#define IMFSample_GetItemType(This,guidKey,pType) \
|
|
( (This)->lpVtbl -> GetItemType(This,guidKey,pType) )
|
|
|
|
#define IMFSample_CompareItem(This,guidKey,Value,pbResult) \
|
|
( (This)->lpVtbl -> CompareItem(This,guidKey,Value,pbResult) )
|
|
|
|
#define IMFSample_Compare(This,pTheirs,MatchType,pbResult) \
|
|
( (This)->lpVtbl -> Compare(This,pTheirs,MatchType,pbResult) )
|
|
|
|
#define IMFSample_GetUINT32(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT32(This,guidKey,punValue) )
|
|
|
|
#define IMFSample_GetUINT64(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT64(This,guidKey,punValue) )
|
|
|
|
#define IMFSample_GetDouble(This,guidKey,pfValue) \
|
|
( (This)->lpVtbl -> GetDouble(This,guidKey,pfValue) )
|
|
|
|
#define IMFSample_GetGUID(This,guidKey,pguidValue) \
|
|
( (This)->lpVtbl -> GetGUID(This,guidKey,pguidValue) )
|
|
|
|
#define IMFSample_GetStringLength(This,guidKey,pcchLength) \
|
|
( (This)->lpVtbl -> GetStringLength(This,guidKey,pcchLength) )
|
|
|
|
#define IMFSample_GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) \
|
|
( (This)->lpVtbl -> GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) )
|
|
|
|
#define IMFSample_GetAllocatedString(This,guidKey,ppwszValue,pcchLength) \
|
|
( (This)->lpVtbl -> GetAllocatedString(This,guidKey,ppwszValue,pcchLength) )
|
|
|
|
#define IMFSample_GetBlobSize(This,guidKey,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlobSize(This,guidKey,pcbBlobSize) )
|
|
|
|
#define IMFSample_GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) )
|
|
|
|
#define IMFSample_GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) \
|
|
( (This)->lpVtbl -> GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) )
|
|
|
|
#define IMFSample_GetUnknown(This,guidKey,riid,ppv) \
|
|
( (This)->lpVtbl -> GetUnknown(This,guidKey,riid,ppv) )
|
|
|
|
#define IMFSample_SetItem(This,guidKey,Value) \
|
|
( (This)->lpVtbl -> SetItem(This,guidKey,Value) )
|
|
|
|
#define IMFSample_DeleteItem(This,guidKey) \
|
|
( (This)->lpVtbl -> DeleteItem(This,guidKey) )
|
|
|
|
#define IMFSample_DeleteAllItems(This) \
|
|
( (This)->lpVtbl -> DeleteAllItems(This) )
|
|
|
|
#define IMFSample_SetUINT32(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT32(This,guidKey,unValue) )
|
|
|
|
#define IMFSample_SetUINT64(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT64(This,guidKey,unValue) )
|
|
|
|
#define IMFSample_SetDouble(This,guidKey,fValue) \
|
|
( (This)->lpVtbl -> SetDouble(This,guidKey,fValue) )
|
|
|
|
#define IMFSample_SetGUID(This,guidKey,guidValue) \
|
|
( (This)->lpVtbl -> SetGUID(This,guidKey,guidValue) )
|
|
|
|
#define IMFSample_SetString(This,guidKey,wszValue) \
|
|
( (This)->lpVtbl -> SetString(This,guidKey,wszValue) )
|
|
|
|
#define IMFSample_SetBlob(This,guidKey,pBuf,cbBufSize) \
|
|
( (This)->lpVtbl -> SetBlob(This,guidKey,pBuf,cbBufSize) )
|
|
|
|
#define IMFSample_SetUnknown(This,guidKey,pUnknown) \
|
|
( (This)->lpVtbl -> SetUnknown(This,guidKey,pUnknown) )
|
|
|
|
#define IMFSample_LockStore(This) \
|
|
( (This)->lpVtbl -> LockStore(This) )
|
|
|
|
#define IMFSample_UnlockStore(This) \
|
|
( (This)->lpVtbl -> UnlockStore(This) )
|
|
|
|
#define IMFSample_GetCount(This,pcItems) \
|
|
( (This)->lpVtbl -> GetCount(This,pcItems) )
|
|
|
|
#define IMFSample_GetItemByIndex(This,unIndex,pguidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItemByIndex(This,unIndex,pguidKey,pValue) )
|
|
|
|
#define IMFSample_CopyAllItems(This,pDest) \
|
|
( (This)->lpVtbl -> CopyAllItems(This,pDest) )
|
|
|
|
|
|
#define IMFSample_GetSampleFlags(This,pdwSampleFlags) \
|
|
( (This)->lpVtbl -> GetSampleFlags(This,pdwSampleFlags) )
|
|
|
|
#define IMFSample_SetSampleFlags(This,dwSampleFlags) \
|
|
( (This)->lpVtbl -> SetSampleFlags(This,dwSampleFlags) )
|
|
|
|
#define IMFSample_GetSampleTime(This,phnsSampleTime) \
|
|
( (This)->lpVtbl -> GetSampleTime(This,phnsSampleTime) )
|
|
|
|
#define IMFSample_SetSampleTime(This,hnsSampleTime) \
|
|
( (This)->lpVtbl -> SetSampleTime(This,hnsSampleTime) )
|
|
|
|
#define IMFSample_GetSampleDuration(This,phnsSampleDuration) \
|
|
( (This)->lpVtbl -> GetSampleDuration(This,phnsSampleDuration) )
|
|
|
|
#define IMFSample_SetSampleDuration(This,hnsSampleDuration) \
|
|
( (This)->lpVtbl -> SetSampleDuration(This,hnsSampleDuration) )
|
|
|
|
#define IMFSample_GetBufferCount(This,pdwBufferCount) \
|
|
( (This)->lpVtbl -> GetBufferCount(This,pdwBufferCount) )
|
|
|
|
#define IMFSample_GetBufferByIndex(This,dwIndex,ppBuffer) \
|
|
( (This)->lpVtbl -> GetBufferByIndex(This,dwIndex,ppBuffer) )
|
|
|
|
#define IMFSample_ConvertToContiguousBuffer(This,ppBuffer) \
|
|
( (This)->lpVtbl -> ConvertToContiguousBuffer(This,ppBuffer) )
|
|
|
|
#define IMFSample_AddBuffer(This,pBuffer) \
|
|
( (This)->lpVtbl -> AddBuffer(This,pBuffer) )
|
|
|
|
#define IMFSample_RemoveBufferByIndex(This,dwIndex) \
|
|
( (This)->lpVtbl -> RemoveBufferByIndex(This,dwIndex) )
|
|
|
|
#define IMFSample_RemoveAllBuffers(This) \
|
|
( (This)->lpVtbl -> RemoveAllBuffers(This) )
|
|
|
|
#define IMFSample_GetTotalLength(This,pcbTotalLength) \
|
|
( (This)->lpVtbl -> GetTotalLength(This,pcbTotalLength) )
|
|
|
|
#define IMFSample_CopyToBuffer(This,pBuffer) \
|
|
( (This)->lpVtbl -> CopyToBuffer(This,pBuffer) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFSample_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMF2DBuffer_INTERFACE_DEFINED__
|
|
#define __IMF2DBuffer_INTERFACE_DEFINED__
|
|
|
|
/* interface IMF2DBuffer */
|
|
/* [local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMF2DBuffer;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("7DC9D5F9-9ED9-44ec-9BBF-0600BB589FBB")
|
|
IMF2DBuffer : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Lock2D(
|
|
/* [annotation][out] */
|
|
__out BYTE **pbScanline0,
|
|
/* [out] */ LONG *plPitch) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Unlock2D( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetScanline0AndPitch(
|
|
/* [annotation][out] */
|
|
__out BYTE **pbScanline0,
|
|
/* [annotation][out] */
|
|
__out LONG *plPitch) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsContiguousFormat(
|
|
/* [annotation][out] */
|
|
__out BOOL *pfIsContiguous) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetContiguousLength(
|
|
/* [annotation][out] */
|
|
__out DWORD *pcbLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ContiguousCopyTo(
|
|
/* [annotation][size_is][out] */
|
|
__out_bcount(cbDestBuffer) BYTE *pbDestBuffer,
|
|
/* [in] */ DWORD cbDestBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ContiguousCopyFrom(
|
|
/* [annotation][size_is][in] */
|
|
__in_bcount(cbSrcBuffer) const BYTE *pbSrcBuffer,
|
|
/* [in] */ DWORD cbSrcBuffer) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMF2DBufferVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMF2DBuffer * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMF2DBuffer * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMF2DBuffer * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Lock2D )(
|
|
IMF2DBuffer * This,
|
|
/* [annotation][out] */
|
|
__out BYTE **pbScanline0,
|
|
/* [out] */ LONG *plPitch);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Unlock2D )(
|
|
IMF2DBuffer * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetScanline0AndPitch )(
|
|
IMF2DBuffer * This,
|
|
/* [annotation][out] */
|
|
__out BYTE **pbScanline0,
|
|
/* [annotation][out] */
|
|
__out LONG *plPitch);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsContiguousFormat )(
|
|
IMF2DBuffer * This,
|
|
/* [annotation][out] */
|
|
__out BOOL *pfIsContiguous);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetContiguousLength )(
|
|
IMF2DBuffer * This,
|
|
/* [annotation][out] */
|
|
__out DWORD *pcbLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ContiguousCopyTo )(
|
|
IMF2DBuffer * This,
|
|
/* [annotation][size_is][out] */
|
|
__out_bcount(cbDestBuffer) BYTE *pbDestBuffer,
|
|
/* [in] */ DWORD cbDestBuffer);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ContiguousCopyFrom )(
|
|
IMF2DBuffer * This,
|
|
/* [annotation][size_is][in] */
|
|
__in_bcount(cbSrcBuffer) const BYTE *pbSrcBuffer,
|
|
/* [in] */ DWORD cbSrcBuffer);
|
|
|
|
END_INTERFACE
|
|
} IMF2DBufferVtbl;
|
|
|
|
interface IMF2DBuffer
|
|
{
|
|
CONST_VTBL struct IMF2DBufferVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMF2DBuffer_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMF2DBuffer_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMF2DBuffer_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMF2DBuffer_Lock2D(This,pbScanline0,plPitch) \
|
|
( (This)->lpVtbl -> Lock2D(This,pbScanline0,plPitch) )
|
|
|
|
#define IMF2DBuffer_Unlock2D(This) \
|
|
( (This)->lpVtbl -> Unlock2D(This) )
|
|
|
|
#define IMF2DBuffer_GetScanline0AndPitch(This,pbScanline0,plPitch) \
|
|
( (This)->lpVtbl -> GetScanline0AndPitch(This,pbScanline0,plPitch) )
|
|
|
|
#define IMF2DBuffer_IsContiguousFormat(This,pfIsContiguous) \
|
|
( (This)->lpVtbl -> IsContiguousFormat(This,pfIsContiguous) )
|
|
|
|
#define IMF2DBuffer_GetContiguousLength(This,pcbLength) \
|
|
( (This)->lpVtbl -> GetContiguousLength(This,pcbLength) )
|
|
|
|
#define IMF2DBuffer_ContiguousCopyTo(This,pbDestBuffer,cbDestBuffer) \
|
|
( (This)->lpVtbl -> ContiguousCopyTo(This,pbDestBuffer,cbDestBuffer) )
|
|
|
|
#define IMF2DBuffer_ContiguousCopyFrom(This,pbSrcBuffer,cbSrcBuffer) \
|
|
( (This)->lpVtbl -> ContiguousCopyFrom(This,pbSrcBuffer,cbSrcBuffer) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMF2DBuffer_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFMediaType_INTERFACE_DEFINED__
|
|
#define __IMFMediaType_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFMediaType */
|
|
/* [local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFMediaType;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("44ae0fa8-ea31-4109-8d2e-4cae4997c555")
|
|
IMFMediaType : public IMFAttributes
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetMajorType(
|
|
/* [annotation][out] */
|
|
__out GUID *pguidMajorType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsCompressedFormat(
|
|
/* [annotation][out] */
|
|
__out BOOL *pfCompressed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsEqual(
|
|
/* [in] */ IMFMediaType *pIMediaType,
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRepresentation(
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [annotation][out] */
|
|
__out LPVOID *ppvRepresentation) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FreeRepresentation(
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [in] */ LPVOID pvRepresentation) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFMediaTypeVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFMediaType * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFMediaType * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItem )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [full][out][in] */ PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemType )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CompareItem )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
/* [out] */ BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Compare )(
|
|
IMFMediaType * This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
/* [out] */ BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT32 )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT64 )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT64 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDouble )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ double *pfValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetGUID )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ GUID *pguidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStringLength )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][out] */ LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
/* [full][out][in] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedString )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ LPWSTR *ppwszValue,
|
|
/* [out] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlobSize )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlob )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][out] */ UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
/* [full][out][in] */ UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedBlob )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ UINT8 **ppBuf,
|
|
/* [out] */ UINT32 *pcbSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUnknown )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
/* [iid_is][out] */ LPVOID *ppv);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetItem )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteItem )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteAllItems )(
|
|
IMFMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT32 )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT64 )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDouble )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetGUID )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
REFGUID guidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [string][in] */ LPCWSTR wszValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBlob )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][in] */ const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUnknown )(
|
|
IMFMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [in] */ IUnknown *pUnknown);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LockStore )(
|
|
IMFMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *UnlockStore )(
|
|
IMFMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCount )(
|
|
IMFMediaType * This,
|
|
/* [out] */ UINT32 *pcItems);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemByIndex )(
|
|
IMFMediaType * This,
|
|
UINT32 unIndex,
|
|
/* [out] */ GUID *pguidKey,
|
|
/* [full][out][in] */ PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CopyAllItems )(
|
|
IMFMediaType * This,
|
|
/* [in] */ IMFAttributes *pDest);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMajorType )(
|
|
IMFMediaType * This,
|
|
/* [annotation][out] */
|
|
__out GUID *pguidMajorType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsCompressedFormat )(
|
|
IMFMediaType * This,
|
|
/* [annotation][out] */
|
|
__out BOOL *pfCompressed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsEqual )(
|
|
IMFMediaType * This,
|
|
/* [in] */ IMFMediaType *pIMediaType,
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRepresentation )(
|
|
IMFMediaType * This,
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [annotation][out] */
|
|
__out LPVOID *ppvRepresentation);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FreeRepresentation )(
|
|
IMFMediaType * This,
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [in] */ LPVOID pvRepresentation);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaTypeVtbl;
|
|
|
|
interface IMFMediaType
|
|
{
|
|
CONST_VTBL struct IMFMediaTypeVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFMediaType_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFMediaType_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFMediaType_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFMediaType_GetItem(This,guidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItem(This,guidKey,pValue) )
|
|
|
|
#define IMFMediaType_GetItemType(This,guidKey,pType) \
|
|
( (This)->lpVtbl -> GetItemType(This,guidKey,pType) )
|
|
|
|
#define IMFMediaType_CompareItem(This,guidKey,Value,pbResult) \
|
|
( (This)->lpVtbl -> CompareItem(This,guidKey,Value,pbResult) )
|
|
|
|
#define IMFMediaType_Compare(This,pTheirs,MatchType,pbResult) \
|
|
( (This)->lpVtbl -> Compare(This,pTheirs,MatchType,pbResult) )
|
|
|
|
#define IMFMediaType_GetUINT32(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT32(This,guidKey,punValue) )
|
|
|
|
#define IMFMediaType_GetUINT64(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT64(This,guidKey,punValue) )
|
|
|
|
#define IMFMediaType_GetDouble(This,guidKey,pfValue) \
|
|
( (This)->lpVtbl -> GetDouble(This,guidKey,pfValue) )
|
|
|
|
#define IMFMediaType_GetGUID(This,guidKey,pguidValue) \
|
|
( (This)->lpVtbl -> GetGUID(This,guidKey,pguidValue) )
|
|
|
|
#define IMFMediaType_GetStringLength(This,guidKey,pcchLength) \
|
|
( (This)->lpVtbl -> GetStringLength(This,guidKey,pcchLength) )
|
|
|
|
#define IMFMediaType_GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) \
|
|
( (This)->lpVtbl -> GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) )
|
|
|
|
#define IMFMediaType_GetAllocatedString(This,guidKey,ppwszValue,pcchLength) \
|
|
( (This)->lpVtbl -> GetAllocatedString(This,guidKey,ppwszValue,pcchLength) )
|
|
|
|
#define IMFMediaType_GetBlobSize(This,guidKey,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlobSize(This,guidKey,pcbBlobSize) )
|
|
|
|
#define IMFMediaType_GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) )
|
|
|
|
#define IMFMediaType_GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) \
|
|
( (This)->lpVtbl -> GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) )
|
|
|
|
#define IMFMediaType_GetUnknown(This,guidKey,riid,ppv) \
|
|
( (This)->lpVtbl -> GetUnknown(This,guidKey,riid,ppv) )
|
|
|
|
#define IMFMediaType_SetItem(This,guidKey,Value) \
|
|
( (This)->lpVtbl -> SetItem(This,guidKey,Value) )
|
|
|
|
#define IMFMediaType_DeleteItem(This,guidKey) \
|
|
( (This)->lpVtbl -> DeleteItem(This,guidKey) )
|
|
|
|
#define IMFMediaType_DeleteAllItems(This) \
|
|
( (This)->lpVtbl -> DeleteAllItems(This) )
|
|
|
|
#define IMFMediaType_SetUINT32(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT32(This,guidKey,unValue) )
|
|
|
|
#define IMFMediaType_SetUINT64(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT64(This,guidKey,unValue) )
|
|
|
|
#define IMFMediaType_SetDouble(This,guidKey,fValue) \
|
|
( (This)->lpVtbl -> SetDouble(This,guidKey,fValue) )
|
|
|
|
#define IMFMediaType_SetGUID(This,guidKey,guidValue) \
|
|
( (This)->lpVtbl -> SetGUID(This,guidKey,guidValue) )
|
|
|
|
#define IMFMediaType_SetString(This,guidKey,wszValue) \
|
|
( (This)->lpVtbl -> SetString(This,guidKey,wszValue) )
|
|
|
|
#define IMFMediaType_SetBlob(This,guidKey,pBuf,cbBufSize) \
|
|
( (This)->lpVtbl -> SetBlob(This,guidKey,pBuf,cbBufSize) )
|
|
|
|
#define IMFMediaType_SetUnknown(This,guidKey,pUnknown) \
|
|
( (This)->lpVtbl -> SetUnknown(This,guidKey,pUnknown) )
|
|
|
|
#define IMFMediaType_LockStore(This) \
|
|
( (This)->lpVtbl -> LockStore(This) )
|
|
|
|
#define IMFMediaType_UnlockStore(This) \
|
|
( (This)->lpVtbl -> UnlockStore(This) )
|
|
|
|
#define IMFMediaType_GetCount(This,pcItems) \
|
|
( (This)->lpVtbl -> GetCount(This,pcItems) )
|
|
|
|
#define IMFMediaType_GetItemByIndex(This,unIndex,pguidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItemByIndex(This,unIndex,pguidKey,pValue) )
|
|
|
|
#define IMFMediaType_CopyAllItems(This,pDest) \
|
|
( (This)->lpVtbl -> CopyAllItems(This,pDest) )
|
|
|
|
|
|
#define IMFMediaType_GetMajorType(This,pguidMajorType) \
|
|
( (This)->lpVtbl -> GetMajorType(This,pguidMajorType) )
|
|
|
|
#define IMFMediaType_IsCompressedFormat(This,pfCompressed) \
|
|
( (This)->lpVtbl -> IsCompressedFormat(This,pfCompressed) )
|
|
|
|
#define IMFMediaType_IsEqual(This,pIMediaType,pdwFlags) \
|
|
( (This)->lpVtbl -> IsEqual(This,pIMediaType,pdwFlags) )
|
|
|
|
#define IMFMediaType_GetRepresentation(This,guidRepresentation,ppvRepresentation) \
|
|
( (This)->lpVtbl -> GetRepresentation(This,guidRepresentation,ppvRepresentation) )
|
|
|
|
#define IMFMediaType_FreeRepresentation(This,guidRepresentation,pvRepresentation) \
|
|
( (This)->lpVtbl -> FreeRepresentation(This,guidRepresentation,pvRepresentation) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFMediaType_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0005 */
|
|
/* [local] */
|
|
|
|
#define MF_MEDIATYPE_EQUAL_MAJOR_TYPES 0x00000001
|
|
#define MF_MEDIATYPE_EQUAL_FORMAT_TYPES 0x00000002
|
|
#define MF_MEDIATYPE_EQUAL_FORMAT_DATA 0x00000004
|
|
#define MF_MEDIATYPE_EQUAL_FORMAT_USER_DATA 0x00000008
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0005_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0005_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFAudioMediaType_INTERFACE_DEFINED__
|
|
#define __IMFAudioMediaType_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFAudioMediaType */
|
|
/* [local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFAudioMediaType;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("26a0adc3-ce26-4672-9304-69552edd3faf")
|
|
IMFAudioMediaType : public IMFMediaType
|
|
{
|
|
public:
|
|
virtual const WAVEFORMATEX *STDMETHODCALLTYPE GetAudioFormat( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFAudioMediaTypeVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFAudioMediaType * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFAudioMediaType * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFAudioMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItem )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [full][out][in] */ PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemType )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CompareItem )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
/* [out] */ BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Compare )(
|
|
IMFAudioMediaType * This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
/* [out] */ BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT32 )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT64 )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT64 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDouble )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ double *pfValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetGUID )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ GUID *pguidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStringLength )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][out] */ LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
/* [full][out][in] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedString )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ LPWSTR *ppwszValue,
|
|
/* [out] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlobSize )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlob )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][out] */ UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
/* [full][out][in] */ UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedBlob )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ UINT8 **ppBuf,
|
|
/* [out] */ UINT32 *pcbSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUnknown )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
/* [iid_is][out] */ LPVOID *ppv);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetItem )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteItem )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteAllItems )(
|
|
IMFAudioMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT32 )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT64 )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDouble )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetGUID )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
REFGUID guidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [string][in] */ LPCWSTR wszValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBlob )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][in] */ const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUnknown )(
|
|
IMFAudioMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [in] */ IUnknown *pUnknown);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LockStore )(
|
|
IMFAudioMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *UnlockStore )(
|
|
IMFAudioMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCount )(
|
|
IMFAudioMediaType * This,
|
|
/* [out] */ UINT32 *pcItems);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemByIndex )(
|
|
IMFAudioMediaType * This,
|
|
UINT32 unIndex,
|
|
/* [out] */ GUID *pguidKey,
|
|
/* [full][out][in] */ PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CopyAllItems )(
|
|
IMFAudioMediaType * This,
|
|
/* [in] */ IMFAttributes *pDest);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMajorType )(
|
|
IMFAudioMediaType * This,
|
|
/* [annotation][out] */
|
|
__out GUID *pguidMajorType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsCompressedFormat )(
|
|
IMFAudioMediaType * This,
|
|
/* [annotation][out] */
|
|
__out BOOL *pfCompressed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsEqual )(
|
|
IMFAudioMediaType * This,
|
|
/* [in] */ IMFMediaType *pIMediaType,
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRepresentation )(
|
|
IMFAudioMediaType * This,
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [annotation][out] */
|
|
__out LPVOID *ppvRepresentation);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FreeRepresentation )(
|
|
IMFAudioMediaType * This,
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [in] */ LPVOID pvRepresentation);
|
|
|
|
const WAVEFORMATEX *( STDMETHODCALLTYPE *GetAudioFormat )(
|
|
IMFAudioMediaType * This);
|
|
|
|
END_INTERFACE
|
|
} IMFAudioMediaTypeVtbl;
|
|
|
|
interface IMFAudioMediaType
|
|
{
|
|
CONST_VTBL struct IMFAudioMediaTypeVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFAudioMediaType_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFAudioMediaType_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFAudioMediaType_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFAudioMediaType_GetItem(This,guidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItem(This,guidKey,pValue) )
|
|
|
|
#define IMFAudioMediaType_GetItemType(This,guidKey,pType) \
|
|
( (This)->lpVtbl -> GetItemType(This,guidKey,pType) )
|
|
|
|
#define IMFAudioMediaType_CompareItem(This,guidKey,Value,pbResult) \
|
|
( (This)->lpVtbl -> CompareItem(This,guidKey,Value,pbResult) )
|
|
|
|
#define IMFAudioMediaType_Compare(This,pTheirs,MatchType,pbResult) \
|
|
( (This)->lpVtbl -> Compare(This,pTheirs,MatchType,pbResult) )
|
|
|
|
#define IMFAudioMediaType_GetUINT32(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT32(This,guidKey,punValue) )
|
|
|
|
#define IMFAudioMediaType_GetUINT64(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT64(This,guidKey,punValue) )
|
|
|
|
#define IMFAudioMediaType_GetDouble(This,guidKey,pfValue) \
|
|
( (This)->lpVtbl -> GetDouble(This,guidKey,pfValue) )
|
|
|
|
#define IMFAudioMediaType_GetGUID(This,guidKey,pguidValue) \
|
|
( (This)->lpVtbl -> GetGUID(This,guidKey,pguidValue) )
|
|
|
|
#define IMFAudioMediaType_GetStringLength(This,guidKey,pcchLength) \
|
|
( (This)->lpVtbl -> GetStringLength(This,guidKey,pcchLength) )
|
|
|
|
#define IMFAudioMediaType_GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) \
|
|
( (This)->lpVtbl -> GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) )
|
|
|
|
#define IMFAudioMediaType_GetAllocatedString(This,guidKey,ppwszValue,pcchLength) \
|
|
( (This)->lpVtbl -> GetAllocatedString(This,guidKey,ppwszValue,pcchLength) )
|
|
|
|
#define IMFAudioMediaType_GetBlobSize(This,guidKey,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlobSize(This,guidKey,pcbBlobSize) )
|
|
|
|
#define IMFAudioMediaType_GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) )
|
|
|
|
#define IMFAudioMediaType_GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) \
|
|
( (This)->lpVtbl -> GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) )
|
|
|
|
#define IMFAudioMediaType_GetUnknown(This,guidKey,riid,ppv) \
|
|
( (This)->lpVtbl -> GetUnknown(This,guidKey,riid,ppv) )
|
|
|
|
#define IMFAudioMediaType_SetItem(This,guidKey,Value) \
|
|
( (This)->lpVtbl -> SetItem(This,guidKey,Value) )
|
|
|
|
#define IMFAudioMediaType_DeleteItem(This,guidKey) \
|
|
( (This)->lpVtbl -> DeleteItem(This,guidKey) )
|
|
|
|
#define IMFAudioMediaType_DeleteAllItems(This) \
|
|
( (This)->lpVtbl -> DeleteAllItems(This) )
|
|
|
|
#define IMFAudioMediaType_SetUINT32(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT32(This,guidKey,unValue) )
|
|
|
|
#define IMFAudioMediaType_SetUINT64(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT64(This,guidKey,unValue) )
|
|
|
|
#define IMFAudioMediaType_SetDouble(This,guidKey,fValue) \
|
|
( (This)->lpVtbl -> SetDouble(This,guidKey,fValue) )
|
|
|
|
#define IMFAudioMediaType_SetGUID(This,guidKey,guidValue) \
|
|
( (This)->lpVtbl -> SetGUID(This,guidKey,guidValue) )
|
|
|
|
#define IMFAudioMediaType_SetString(This,guidKey,wszValue) \
|
|
( (This)->lpVtbl -> SetString(This,guidKey,wszValue) )
|
|
|
|
#define IMFAudioMediaType_SetBlob(This,guidKey,pBuf,cbBufSize) \
|
|
( (This)->lpVtbl -> SetBlob(This,guidKey,pBuf,cbBufSize) )
|
|
|
|
#define IMFAudioMediaType_SetUnknown(This,guidKey,pUnknown) \
|
|
( (This)->lpVtbl -> SetUnknown(This,guidKey,pUnknown) )
|
|
|
|
#define IMFAudioMediaType_LockStore(This) \
|
|
( (This)->lpVtbl -> LockStore(This) )
|
|
|
|
#define IMFAudioMediaType_UnlockStore(This) \
|
|
( (This)->lpVtbl -> UnlockStore(This) )
|
|
|
|
#define IMFAudioMediaType_GetCount(This,pcItems) \
|
|
( (This)->lpVtbl -> GetCount(This,pcItems) )
|
|
|
|
#define IMFAudioMediaType_GetItemByIndex(This,unIndex,pguidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItemByIndex(This,unIndex,pguidKey,pValue) )
|
|
|
|
#define IMFAudioMediaType_CopyAllItems(This,pDest) \
|
|
( (This)->lpVtbl -> CopyAllItems(This,pDest) )
|
|
|
|
|
|
#define IMFAudioMediaType_GetMajorType(This,pguidMajorType) \
|
|
( (This)->lpVtbl -> GetMajorType(This,pguidMajorType) )
|
|
|
|
#define IMFAudioMediaType_IsCompressedFormat(This,pfCompressed) \
|
|
( (This)->lpVtbl -> IsCompressedFormat(This,pfCompressed) )
|
|
|
|
#define IMFAudioMediaType_IsEqual(This,pIMediaType,pdwFlags) \
|
|
( (This)->lpVtbl -> IsEqual(This,pIMediaType,pdwFlags) )
|
|
|
|
#define IMFAudioMediaType_GetRepresentation(This,guidRepresentation,ppvRepresentation) \
|
|
( (This)->lpVtbl -> GetRepresentation(This,guidRepresentation,ppvRepresentation) )
|
|
|
|
#define IMFAudioMediaType_FreeRepresentation(This,guidRepresentation,pvRepresentation) \
|
|
( (This)->lpVtbl -> FreeRepresentation(This,guidRepresentation,pvRepresentation) )
|
|
|
|
|
|
#define IMFAudioMediaType_GetAudioFormat(This) \
|
|
( (This)->lpVtbl -> GetAudioFormat(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFAudioMediaType_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0006 */
|
|
/* [local] */
|
|
|
|
#ifndef _WINGDI_
|
|
typedef DWORD RGBQUAD;
|
|
|
|
typedef /* [public][public] */ struct __MIDL___MIDL_itf_mfobjects_0000_0006_0001
|
|
{
|
|
DWORD biSize;
|
|
LONG biWidth;
|
|
LONG biHeight;
|
|
WORD biPlanes;
|
|
WORD biBitCount;
|
|
DWORD biCompression;
|
|
DWORD biSizeImage;
|
|
LONG biXPelsPerMeter;
|
|
LONG biYPelsPerMeter;
|
|
DWORD biClrUsed;
|
|
DWORD biClrImportant;
|
|
} BITMAPINFOHEADER;
|
|
|
|
typedef /* [public] */ struct __MIDL___MIDL_itf_mfobjects_0000_0006_0002
|
|
{
|
|
BITMAPINFOHEADER bmiHeader;
|
|
RGBQUAD bmiColors[ 1 ];
|
|
} BITMAPINFO;
|
|
|
|
#endif
|
|
|
|
typedef /* [public] */ struct __MIDL___MIDL_itf_mfobjects_0000_0006_0003
|
|
{
|
|
GUID guidMajorType;
|
|
GUID guidSubtype;
|
|
} MFT_REGISTER_TYPE_INFO;
|
|
|
|
#if !defined( _MFVIDEOFORMAT_ )
|
|
#define _MFVIDEOFORMAT_
|
|
typedef
|
|
enum _MFVideoInterlaceMode
|
|
{ MFVideoInterlace_Unknown = 0,
|
|
MFVideoInterlace_Progressive = 2,
|
|
MFVideoInterlace_FieldInterleavedUpperFirst = 3,
|
|
MFVideoInterlace_FieldInterleavedLowerFirst = 4,
|
|
MFVideoInterlace_FieldSingleUpper = 5,
|
|
MFVideoInterlace_FieldSingleLower = 6,
|
|
MFVideoInterlace_MixedInterlaceOrProgressive = 7,
|
|
MFVideoInterlace_Last = ( MFVideoInterlace_MixedInterlaceOrProgressive + 1 ) ,
|
|
MFVideoInterlace_ForceDWORD = 0x7fffffff
|
|
} MFVideoInterlaceMode;
|
|
|
|
#define MFVideoInterlace_FieldSingleUpperFirst MFVideoInterlace_FieldSingleUpper
|
|
#define MFVideoInterlace_FieldSingleLowerFirst MFVideoInterlace_FieldSingleLower
|
|
typedef
|
|
enum _MFVideoTransferFunction
|
|
{ MFVideoTransFunc_Unknown = 0,
|
|
MFVideoTransFunc_10 = 1,
|
|
MFVideoTransFunc_18 = 2,
|
|
MFVideoTransFunc_20 = 3,
|
|
MFVideoTransFunc_22 = 4,
|
|
MFVideoTransFunc_709 = 5,
|
|
MFVideoTransFunc_240M = 6,
|
|
MFVideoTransFunc_sRGB = 7,
|
|
MFVideoTransFunc_28 = 8,
|
|
MFVideoTransFunc_Log_100 = 9,
|
|
MFVideoTransFunc_Log_316 = 10,
|
|
MFVideoTransFunc_709_sym = 11,
|
|
MFVideoTransFunc_Last = ( MFVideoTransFunc_709_sym + 1 ) ,
|
|
MFVideoTransFunc_ForceDWORD = 0x7fffffff
|
|
} MFVideoTransferFunction;
|
|
|
|
typedef
|
|
enum _MFVideoPrimaries
|
|
{ MFVideoPrimaries_Unknown = 0,
|
|
MFVideoPrimaries_reserved = 1,
|
|
MFVideoPrimaries_BT709 = 2,
|
|
MFVideoPrimaries_BT470_2_SysM = 3,
|
|
MFVideoPrimaries_BT470_2_SysBG = 4,
|
|
MFVideoPrimaries_SMPTE170M = 5,
|
|
MFVideoPrimaries_SMPTE240M = 6,
|
|
MFVideoPrimaries_EBU3213 = 7,
|
|
MFVideoPrimaries_SMPTE_C = 8,
|
|
MFVideoPrimaries_Last = ( MFVideoPrimaries_SMPTE_C + 1 ) ,
|
|
MFVideoPrimaries_ForceDWORD = 0x7fffffff
|
|
} MFVideoPrimaries;
|
|
|
|
typedef
|
|
enum _MFVideoLighting
|
|
{ MFVideoLighting_Unknown = 0,
|
|
MFVideoLighting_bright = 1,
|
|
MFVideoLighting_office = 2,
|
|
MFVideoLighting_dim = 3,
|
|
MFVideoLighting_dark = 4,
|
|
MFVideoLighting_Last = ( MFVideoLighting_dark + 1 ) ,
|
|
MFVideoLighting_ForceDWORD = 0x7fffffff
|
|
} MFVideoLighting;
|
|
|
|
typedef
|
|
enum _MFVideoTransferMatrix
|
|
{ MFVideoTransferMatrix_Unknown = 0,
|
|
MFVideoTransferMatrix_BT709 = 1,
|
|
MFVideoTransferMatrix_BT601 = 2,
|
|
MFVideoTransferMatrix_SMPTE240M = 3,
|
|
MFVideoTransferMatrix_Last = ( MFVideoTransferMatrix_SMPTE240M + 1 ) ,
|
|
MFVideoTransferMatrix_ForceDWORD = 0x7fffffff
|
|
} MFVideoTransferMatrix;
|
|
|
|
typedef
|
|
enum _MFVideoChromaSubsampling
|
|
{ MFVideoChromaSubsampling_Unknown = 0,
|
|
MFVideoChromaSubsampling_ProgressiveChroma = 0x8,
|
|
MFVideoChromaSubsampling_Horizontally_Cosited = 0x4,
|
|
MFVideoChromaSubsampling_Vertically_Cosited = 0x2,
|
|
MFVideoChromaSubsampling_Vertically_AlignedChromaPlanes = 0x1,
|
|
MFVideoChromaSubsampling_MPEG2 = ( MFVideoChromaSubsampling_Horizontally_Cosited | MFVideoChromaSubsampling_Vertically_AlignedChromaPlanes ) ,
|
|
MFVideoChromaSubsampling_MPEG1 = MFVideoChromaSubsampling_Vertically_AlignedChromaPlanes,
|
|
MFVideoChromaSubsampling_DV_PAL = ( MFVideoChromaSubsampling_Horizontally_Cosited | MFVideoChromaSubsampling_Vertically_Cosited ) ,
|
|
MFVideoChromaSubsampling_Cosited = ( ( MFVideoChromaSubsampling_Horizontally_Cosited | MFVideoChromaSubsampling_Vertically_Cosited ) | MFVideoChromaSubsampling_Vertically_AlignedChromaPlanes ) ,
|
|
MFVideoChromaSubsampling_Last = ( MFVideoChromaSubsampling_Cosited + 1 ) ,
|
|
MFVideoChromaSubsampling_ForceDWORD = 0x7fffffff
|
|
} MFVideoChromaSubsampling;
|
|
|
|
typedef
|
|
enum _MFNominalRange
|
|
{ MFNominalRange_Unknown = 0,
|
|
MFNominalRange_Normal = 1,
|
|
MFNominalRange_Wide = 2,
|
|
MFNominalRange_0_255 = 1,
|
|
MFNominalRange_16_235 = 2,
|
|
MFNominalRange_48_208 = 3,
|
|
MFNominalRange_64_127 = 4,
|
|
MFNominalRange_Last = ( MFNominalRange_64_127 + 1 ) ,
|
|
MFNominalRange_ForceDWORD = 0x7fffffff
|
|
} MFNominalRange;
|
|
|
|
typedef
|
|
enum _MFVideoFlags
|
|
{ MFVideoFlag_PAD_TO_Mask = ( 0x1 | 0x2 ) ,
|
|
MFVideoFlag_PAD_TO_None = ( 0 * 0x1 ) ,
|
|
MFVideoFlag_PAD_TO_4x3 = ( 1 * 0x1 ) ,
|
|
MFVideoFlag_PAD_TO_16x9 = ( 2 * 0x1 ) ,
|
|
MFVideoFlag_SrcContentHintMask = ( ( 0x4 | 0x8 ) | 0x10 ) ,
|
|
MFVideoFlag_SrcContentHintNone = ( 0 * 0x4 ) ,
|
|
MFVideoFlag_SrcContentHint16x9 = ( 1 * 0x4 ) ,
|
|
MFVideoFlag_SrcContentHint235_1 = ( 2 * 0x4 ) ,
|
|
MFVideoFlag_AnalogProtected = 0x20,
|
|
MFVideoFlag_DigitallyProtected = 0x40,
|
|
MFVideoFlag_ProgressiveContent = 0x80,
|
|
MFVideoFlag_FieldRepeatCountMask = ( ( 0x100 | 0x200 ) | 0x400 ) ,
|
|
MFVideoFlag_FieldRepeatCountShift = 8,
|
|
MFVideoFlag_ProgressiveSeqReset = 0x800,
|
|
MFVideoFlag_PanScanEnabled = 0x20000,
|
|
MFVideoFlag_LowerFieldFirst = 0x40000,
|
|
MFVideoFlag_BottomUpLinearRep = 0x80000,
|
|
MFVideoFlags_DXVASurface = 0x100000,
|
|
MFVideoFlags_RenderTargetSurface = 0x400000,
|
|
MFVideoFlags_ForceQWORD = 0x7fffffff
|
|
} MFVideoFlags;
|
|
|
|
typedef struct _MFRatio
|
|
{
|
|
DWORD Numerator;
|
|
DWORD Denominator;
|
|
} MFRatio;
|
|
|
|
typedef struct _MFOffset
|
|
{
|
|
WORD fract;
|
|
short value;
|
|
} MFOffset;
|
|
|
|
typedef struct _MFVideoArea
|
|
{
|
|
MFOffset OffsetX;
|
|
MFOffset OffsetY;
|
|
SIZE Area;
|
|
} MFVideoArea;
|
|
|
|
typedef struct _MFVideoInfo
|
|
{
|
|
DWORD dwWidth;
|
|
DWORD dwHeight;
|
|
MFRatio PixelAspectRatio;
|
|
MFVideoChromaSubsampling SourceChromaSubsampling;
|
|
MFVideoInterlaceMode InterlaceMode;
|
|
MFVideoTransferFunction TransferFunction;
|
|
MFVideoPrimaries ColorPrimaries;
|
|
MFVideoTransferMatrix TransferMatrix;
|
|
MFVideoLighting SourceLighting;
|
|
MFRatio FramesPerSecond;
|
|
MFNominalRange NominalRange;
|
|
MFVideoArea GeometricAperture;
|
|
MFVideoArea MinimumDisplayAperture;
|
|
MFVideoArea PanScanAperture;
|
|
unsigned __int64 VideoFlags;
|
|
} MFVideoInfo;
|
|
|
|
typedef struct __MFAYUVSample
|
|
{
|
|
BYTE bCrValue;
|
|
BYTE bCbValue;
|
|
BYTE bYValue;
|
|
BYTE bSampleAlpha8;
|
|
} MFAYUVSample;
|
|
|
|
typedef struct _MFARGB
|
|
{
|
|
BYTE rgbBlue;
|
|
BYTE rgbGreen;
|
|
BYTE rgbRed;
|
|
BYTE rgbAlpha;
|
|
} MFARGB;
|
|
|
|
typedef union _MFPaletteEntry
|
|
{
|
|
MFARGB ARGB;
|
|
MFAYUVSample AYCbCr;
|
|
} MFPaletteEntry;
|
|
|
|
typedef struct _MFVideoSurfaceInfo
|
|
{
|
|
DWORD Format;
|
|
DWORD PaletteEntries;
|
|
MFPaletteEntry Palette[ 1 ];
|
|
} MFVideoSurfaceInfo;
|
|
|
|
typedef struct _MFVideoCompressedInfo
|
|
{
|
|
LONGLONG AvgBitrate;
|
|
LONGLONG AvgBitErrorRate;
|
|
DWORD MaxKeyFrameSpacing;
|
|
} MFVideoCompressedInfo;
|
|
|
|
typedef struct _MFVIDEOFORMAT
|
|
{
|
|
DWORD dwSize;
|
|
MFVideoInfo videoInfo;
|
|
GUID guidFormat;
|
|
MFVideoCompressedInfo compressedInfo;
|
|
MFVideoSurfaceInfo surfaceInfo;
|
|
} MFVIDEOFORMAT;
|
|
|
|
typedef
|
|
enum _MFStandardVideoFormat
|
|
{ MFStdVideoFormat_reserved = 0,
|
|
MFStdVideoFormat_NTSC = ( MFStdVideoFormat_reserved + 1 ) ,
|
|
MFStdVideoFormat_PAL = ( MFStdVideoFormat_NTSC + 1 ) ,
|
|
MFStdVideoFormat_DVD_NTSC = ( MFStdVideoFormat_PAL + 1 ) ,
|
|
MFStdVideoFormat_DVD_PAL = ( MFStdVideoFormat_DVD_NTSC + 1 ) ,
|
|
MFStdVideoFormat_DV_PAL = ( MFStdVideoFormat_DVD_PAL + 1 ) ,
|
|
MFStdVideoFormat_DV_NTSC = ( MFStdVideoFormat_DV_PAL + 1 ) ,
|
|
MFStdVideoFormat_ATSC_SD480i = ( MFStdVideoFormat_DV_NTSC + 1 ) ,
|
|
MFStdVideoFormat_ATSC_HD1080i = ( MFStdVideoFormat_ATSC_SD480i + 1 ) ,
|
|
MFStdVideoFormat_ATSC_HD720p = ( MFStdVideoFormat_ATSC_HD1080i + 1 )
|
|
} MFStandardVideoFormat;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0006_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0006_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFVideoMediaType_INTERFACE_DEFINED__
|
|
#define __IMFVideoMediaType_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFVideoMediaType */
|
|
/* [local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFVideoMediaType;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("b99f381f-a8f9-47a2-a5af-ca3a225a3890")
|
|
IMFVideoMediaType : public IMFMediaType
|
|
{
|
|
public:
|
|
virtual const MFVIDEOFORMAT *STDMETHODCALLTYPE GetVideoFormat( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoRepresentation(
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [annotation][out] */
|
|
__out LPVOID *ppvRepresentation,
|
|
/* [in] */ LONG lStride) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFVideoMediaTypeVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFVideoMediaType * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFVideoMediaType * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFVideoMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItem )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [full][out][in] */ PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemType )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CompareItem )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
/* [out] */ BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Compare )(
|
|
IMFVideoMediaType * This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
/* [out] */ BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT32 )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT64 )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT64 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDouble )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ double *pfValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetGUID )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ GUID *pguidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStringLength )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][out] */ LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
/* [full][out][in] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedString )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ LPWSTR *ppwszValue,
|
|
/* [out] */ UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlobSize )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [out] */ UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlob )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][out] */ UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
/* [full][out][in] */ UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedBlob )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ UINT8 **ppBuf,
|
|
/* [out] */ UINT32 *pcbSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUnknown )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
/* [iid_is][out] */ LPVOID *ppv);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetItem )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteItem )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteAllItems )(
|
|
IMFVideoMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT32 )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT64 )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDouble )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetGUID )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
REFGUID guidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [string][in] */ LPCWSTR wszValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBlob )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [size_is][in] */ const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUnknown )(
|
|
IMFVideoMediaType * This,
|
|
REFGUID guidKey,
|
|
/* [in] */ IUnknown *pUnknown);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LockStore )(
|
|
IMFVideoMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *UnlockStore )(
|
|
IMFVideoMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCount )(
|
|
IMFVideoMediaType * This,
|
|
/* [out] */ UINT32 *pcItems);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemByIndex )(
|
|
IMFVideoMediaType * This,
|
|
UINT32 unIndex,
|
|
/* [out] */ GUID *pguidKey,
|
|
/* [full][out][in] */ PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CopyAllItems )(
|
|
IMFVideoMediaType * This,
|
|
/* [in] */ IMFAttributes *pDest);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetMajorType )(
|
|
IMFVideoMediaType * This,
|
|
/* [annotation][out] */
|
|
__out GUID *pguidMajorType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsCompressedFormat )(
|
|
IMFVideoMediaType * This,
|
|
/* [annotation][out] */
|
|
__out BOOL *pfCompressed);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsEqual )(
|
|
IMFVideoMediaType * This,
|
|
/* [in] */ IMFMediaType *pIMediaType,
|
|
/* [annotation][out] */
|
|
__out DWORD *pdwFlags);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetRepresentation )(
|
|
IMFVideoMediaType * This,
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [annotation][out] */
|
|
__out LPVOID *ppvRepresentation);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *FreeRepresentation )(
|
|
IMFVideoMediaType * This,
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [in] */ LPVOID pvRepresentation);
|
|
|
|
const MFVIDEOFORMAT *( STDMETHODCALLTYPE *GetVideoFormat )(
|
|
IMFVideoMediaType * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetVideoRepresentation )(
|
|
IMFVideoMediaType * This,
|
|
/* [in] */ GUID guidRepresentation,
|
|
/* [annotation][out] */
|
|
__out LPVOID *ppvRepresentation,
|
|
/* [in] */ LONG lStride);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoMediaTypeVtbl;
|
|
|
|
interface IMFVideoMediaType
|
|
{
|
|
CONST_VTBL struct IMFVideoMediaTypeVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFVideoMediaType_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFVideoMediaType_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFVideoMediaType_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFVideoMediaType_GetItem(This,guidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItem(This,guidKey,pValue) )
|
|
|
|
#define IMFVideoMediaType_GetItemType(This,guidKey,pType) \
|
|
( (This)->lpVtbl -> GetItemType(This,guidKey,pType) )
|
|
|
|
#define IMFVideoMediaType_CompareItem(This,guidKey,Value,pbResult) \
|
|
( (This)->lpVtbl -> CompareItem(This,guidKey,Value,pbResult) )
|
|
|
|
#define IMFVideoMediaType_Compare(This,pTheirs,MatchType,pbResult) \
|
|
( (This)->lpVtbl -> Compare(This,pTheirs,MatchType,pbResult) )
|
|
|
|
#define IMFVideoMediaType_GetUINT32(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT32(This,guidKey,punValue) )
|
|
|
|
#define IMFVideoMediaType_GetUINT64(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT64(This,guidKey,punValue) )
|
|
|
|
#define IMFVideoMediaType_GetDouble(This,guidKey,pfValue) \
|
|
( (This)->lpVtbl -> GetDouble(This,guidKey,pfValue) )
|
|
|
|
#define IMFVideoMediaType_GetGUID(This,guidKey,pguidValue) \
|
|
( (This)->lpVtbl -> GetGUID(This,guidKey,pguidValue) )
|
|
|
|
#define IMFVideoMediaType_GetStringLength(This,guidKey,pcchLength) \
|
|
( (This)->lpVtbl -> GetStringLength(This,guidKey,pcchLength) )
|
|
|
|
#define IMFVideoMediaType_GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) \
|
|
( (This)->lpVtbl -> GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) )
|
|
|
|
#define IMFVideoMediaType_GetAllocatedString(This,guidKey,ppwszValue,pcchLength) \
|
|
( (This)->lpVtbl -> GetAllocatedString(This,guidKey,ppwszValue,pcchLength) )
|
|
|
|
#define IMFVideoMediaType_GetBlobSize(This,guidKey,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlobSize(This,guidKey,pcbBlobSize) )
|
|
|
|
#define IMFVideoMediaType_GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) )
|
|
|
|
#define IMFVideoMediaType_GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) \
|
|
( (This)->lpVtbl -> GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) )
|
|
|
|
#define IMFVideoMediaType_GetUnknown(This,guidKey,riid,ppv) \
|
|
( (This)->lpVtbl -> GetUnknown(This,guidKey,riid,ppv) )
|
|
|
|
#define IMFVideoMediaType_SetItem(This,guidKey,Value) \
|
|
( (This)->lpVtbl -> SetItem(This,guidKey,Value) )
|
|
|
|
#define IMFVideoMediaType_DeleteItem(This,guidKey) \
|
|
( (This)->lpVtbl -> DeleteItem(This,guidKey) )
|
|
|
|
#define IMFVideoMediaType_DeleteAllItems(This) \
|
|
( (This)->lpVtbl -> DeleteAllItems(This) )
|
|
|
|
#define IMFVideoMediaType_SetUINT32(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT32(This,guidKey,unValue) )
|
|
|
|
#define IMFVideoMediaType_SetUINT64(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT64(This,guidKey,unValue) )
|
|
|
|
#define IMFVideoMediaType_SetDouble(This,guidKey,fValue) \
|
|
( (This)->lpVtbl -> SetDouble(This,guidKey,fValue) )
|
|
|
|
#define IMFVideoMediaType_SetGUID(This,guidKey,guidValue) \
|
|
( (This)->lpVtbl -> SetGUID(This,guidKey,guidValue) )
|
|
|
|
#define IMFVideoMediaType_SetString(This,guidKey,wszValue) \
|
|
( (This)->lpVtbl -> SetString(This,guidKey,wszValue) )
|
|
|
|
#define IMFVideoMediaType_SetBlob(This,guidKey,pBuf,cbBufSize) \
|
|
( (This)->lpVtbl -> SetBlob(This,guidKey,pBuf,cbBufSize) )
|
|
|
|
#define IMFVideoMediaType_SetUnknown(This,guidKey,pUnknown) \
|
|
( (This)->lpVtbl -> SetUnknown(This,guidKey,pUnknown) )
|
|
|
|
#define IMFVideoMediaType_LockStore(This) \
|
|
( (This)->lpVtbl -> LockStore(This) )
|
|
|
|
#define IMFVideoMediaType_UnlockStore(This) \
|
|
( (This)->lpVtbl -> UnlockStore(This) )
|
|
|
|
#define IMFVideoMediaType_GetCount(This,pcItems) \
|
|
( (This)->lpVtbl -> GetCount(This,pcItems) )
|
|
|
|
#define IMFVideoMediaType_GetItemByIndex(This,unIndex,pguidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItemByIndex(This,unIndex,pguidKey,pValue) )
|
|
|
|
#define IMFVideoMediaType_CopyAllItems(This,pDest) \
|
|
( (This)->lpVtbl -> CopyAllItems(This,pDest) )
|
|
|
|
|
|
#define IMFVideoMediaType_GetMajorType(This,pguidMajorType) \
|
|
( (This)->lpVtbl -> GetMajorType(This,pguidMajorType) )
|
|
|
|
#define IMFVideoMediaType_IsCompressedFormat(This,pfCompressed) \
|
|
( (This)->lpVtbl -> IsCompressedFormat(This,pfCompressed) )
|
|
|
|
#define IMFVideoMediaType_IsEqual(This,pIMediaType,pdwFlags) \
|
|
( (This)->lpVtbl -> IsEqual(This,pIMediaType,pdwFlags) )
|
|
|
|
#define IMFVideoMediaType_GetRepresentation(This,guidRepresentation,ppvRepresentation) \
|
|
( (This)->lpVtbl -> GetRepresentation(This,guidRepresentation,ppvRepresentation) )
|
|
|
|
#define IMFVideoMediaType_FreeRepresentation(This,guidRepresentation,pvRepresentation) \
|
|
( (This)->lpVtbl -> FreeRepresentation(This,guidRepresentation,pvRepresentation) )
|
|
|
|
|
|
#define IMFVideoMediaType_GetVideoFormat(This) \
|
|
( (This)->lpVtbl -> GetVideoFormat(This) )
|
|
|
|
#define IMFVideoMediaType_GetVideoRepresentation(This,guidRepresentation,ppvRepresentation,lStride) \
|
|
( (This)->lpVtbl -> GetVideoRepresentation(This,guidRepresentation,ppvRepresentation,lStride) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFVideoMediaType_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFAsyncResult_INTERFACE_DEFINED__
|
|
#define __IMFAsyncResult_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFAsyncResult */
|
|
/* [uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFAsyncResult;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("ac6b7889-0740-4d51-8619-905994a55cc6")
|
|
IMFAsyncResult : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetState(
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppunkState) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStatus( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetStatus(
|
|
/* [in] */ HRESULT hrStatus) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetObject(
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppObject) = 0;
|
|
|
|
virtual /* [local] */ IUnknown *STDMETHODCALLTYPE GetStateNoAddRef( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFAsyncResultVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFAsyncResult * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFAsyncResult * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFAsyncResult * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetState )(
|
|
__RPC__in IMFAsyncResult * This,
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppunkState);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStatus )(
|
|
__RPC__in IMFAsyncResult * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetStatus )(
|
|
__RPC__in IMFAsyncResult * This,
|
|
/* [in] */ HRESULT hrStatus);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetObject )(
|
|
__RPC__in IMFAsyncResult * This,
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppObject);
|
|
|
|
/* [local] */ IUnknown *( STDMETHODCALLTYPE *GetStateNoAddRef )(
|
|
IMFAsyncResult * This);
|
|
|
|
END_INTERFACE
|
|
} IMFAsyncResultVtbl;
|
|
|
|
interface IMFAsyncResult
|
|
{
|
|
CONST_VTBL struct IMFAsyncResultVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFAsyncResult_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFAsyncResult_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFAsyncResult_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFAsyncResult_GetState(This,ppunkState) \
|
|
( (This)->lpVtbl -> GetState(This,ppunkState) )
|
|
|
|
#define IMFAsyncResult_GetStatus(This) \
|
|
( (This)->lpVtbl -> GetStatus(This) )
|
|
|
|
#define IMFAsyncResult_SetStatus(This,hrStatus) \
|
|
( (This)->lpVtbl -> SetStatus(This,hrStatus) )
|
|
|
|
#define IMFAsyncResult_GetObject(This,ppObject) \
|
|
( (This)->lpVtbl -> GetObject(This,ppObject) )
|
|
|
|
#define IMFAsyncResult_GetStateNoAddRef(This) \
|
|
( (This)->lpVtbl -> GetStateNoAddRef(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFAsyncResult_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFAsyncCallback_INTERFACE_DEFINED__
|
|
#define __IMFAsyncCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFAsyncCallback */
|
|
/* [uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFAsyncCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("a27003cf-2354-4f2a-8d6a-ab7cff15437e")
|
|
IMFAsyncCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetParameters(
|
|
/* [out] */ __RPC__out DWORD *pdwFlags,
|
|
/* [out] */ __RPC__out DWORD *pdwQueue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Invoke(
|
|
/* [in] */ __RPC__in_opt IMFAsyncResult *pAsyncResult) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFAsyncCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFAsyncCallback * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFAsyncCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFAsyncCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetParameters )(
|
|
__RPC__in IMFAsyncCallback * This,
|
|
/* [out] */ __RPC__out DWORD *pdwFlags,
|
|
/* [out] */ __RPC__out DWORD *pdwQueue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
|
__RPC__in IMFAsyncCallback * This,
|
|
/* [in] */ __RPC__in_opt IMFAsyncResult *pAsyncResult);
|
|
|
|
END_INTERFACE
|
|
} IMFAsyncCallbackVtbl;
|
|
|
|
interface IMFAsyncCallback
|
|
{
|
|
CONST_VTBL struct IMFAsyncCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFAsyncCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFAsyncCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFAsyncCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFAsyncCallback_GetParameters(This,pdwFlags,pdwQueue) \
|
|
( (This)->lpVtbl -> GetParameters(This,pdwFlags,pdwQueue) )
|
|
|
|
#define IMFAsyncCallback_Invoke(This,pAsyncResult) \
|
|
( (This)->lpVtbl -> Invoke(This,pAsyncResult) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFAsyncCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0009 */
|
|
/* [local] */
|
|
|
|
#define MFASYNC_FAST_IO_PROCESSING_CALLBACK 0x00000001
|
|
#define MFASYNC_SIGNAL_CALLBACK 0x00000002
|
|
#define MFASYNC_CALLBACK_QUEUE_UNDEFINED 0x00000000
|
|
#define MFASYNC_CALLBACK_QUEUE_STANDARD 0x00000001
|
|
#define MFASYNC_CALLBACK_QUEUE_RT 0x00000002
|
|
#define MFASYNC_CALLBACK_QUEUE_IO 0x00000003
|
|
#define MFASYNC_CALLBACK_QUEUE_TIMER 0x00000004
|
|
#define MFASYNC_CALLBACK_QUEUE_LONG_FUNCTION 0x00000007
|
|
#define MFASYNC_CALLBACK_QUEUE_PRIVATE_MASK 0xFFFF0000
|
|
#define MFASYNC_CALLBACK_QUEUE_ALL 0xFFFFFFFF
|
|
|
|
enum __MIDL___MIDL_itf_mfobjects_0000_0009_0001
|
|
{ MEUnknown = 0,
|
|
MEError = 1,
|
|
MEExtendedType = 2,
|
|
MENonFatalError = 3,
|
|
MEGenericV1Anchor = MENonFatalError,
|
|
MESessionUnknown = 100,
|
|
MESessionTopologySet = 101,
|
|
MESessionTopologiesCleared = 102,
|
|
MESessionStarted = 103,
|
|
MESessionPaused = 104,
|
|
MESessionStopped = 105,
|
|
MESessionClosed = 106,
|
|
MESessionEnded = 107,
|
|
MESessionRateChanged = 108,
|
|
MESessionScrubSampleComplete = 109,
|
|
MESessionCapabilitiesChanged = 110,
|
|
MESessionTopologyStatus = 111,
|
|
MESessionNotifyPresentationTime = 112,
|
|
MENewPresentation = 113,
|
|
MELicenseAcquisitionStart = 114,
|
|
MELicenseAcquisitionCompleted = 115,
|
|
MEIndividualizationStart = 116,
|
|
MEIndividualizationCompleted = 117,
|
|
MEEnablerProgress = 118,
|
|
MEEnablerCompleted = 119,
|
|
MEPolicyError = 120,
|
|
MEPolicyReport = 121,
|
|
MEBufferingStarted = 122,
|
|
MEBufferingStopped = 123,
|
|
MEConnectStart = 124,
|
|
MEConnectEnd = 125,
|
|
MEReconnectStart = 126,
|
|
MEReconnectEnd = 127,
|
|
MERendererEvent = 128,
|
|
MESessionStreamSinkFormatChanged = 129,
|
|
MESessionV1Anchor = MESessionStreamSinkFormatChanged,
|
|
MESourceUnknown = 200,
|
|
MESourceStarted = 201,
|
|
MEStreamStarted = 202,
|
|
MESourceSeeked = 203,
|
|
MEStreamSeeked = 204,
|
|
MENewStream = 205,
|
|
MEUpdatedStream = 206,
|
|
MESourceStopped = 207,
|
|
MEStreamStopped = 208,
|
|
MESourcePaused = 209,
|
|
MEStreamPaused = 210,
|
|
MEEndOfPresentation = 211,
|
|
MEEndOfStream = 212,
|
|
MEMediaSample = 213,
|
|
MEStreamTick = 214,
|
|
MEStreamThinMode = 215,
|
|
MEStreamFormatChanged = 216,
|
|
MESourceRateChanged = 217,
|
|
MEEndOfPresentationSegment = 218,
|
|
MESourceCharacteristicsChanged = 219,
|
|
MESourceRateChangeRequested = 220,
|
|
MESourceMetadataChanged = 221,
|
|
MESequencerSourceTopologyUpdated = 222,
|
|
MESourceV1Anchor = MESequencerSourceTopologyUpdated,
|
|
MESinkUnknown = 300,
|
|
MEStreamSinkStarted = 301,
|
|
MEStreamSinkStopped = 302,
|
|
MEStreamSinkPaused = 303,
|
|
MEStreamSinkRateChanged = 304,
|
|
MEStreamSinkRequestSample = 305,
|
|
MEStreamSinkMarker = 306,
|
|
MEStreamSinkPrerolled = 307,
|
|
MEStreamSinkScrubSampleComplete = 308,
|
|
MEStreamSinkFormatChanged = 309,
|
|
MEStreamSinkDeviceChanged = 310,
|
|
MEQualityNotify = 311,
|
|
MESinkInvalidated = 312,
|
|
MEAudioSessionNameChanged = 313,
|
|
MEAudioSessionVolumeChanged = 314,
|
|
MEAudioSessionDeviceRemoved = 315,
|
|
MEAudioSessionServerShutdown = 316,
|
|
MEAudioSessionGroupingParamChanged = 317,
|
|
MEAudioSessionIconChanged = 318,
|
|
MEAudioSessionFormatChanged = 319,
|
|
MEAudioSessionDisconnected = 320,
|
|
MEAudioSessionExclusiveModeOverride = 321,
|
|
MESinkV1Anchor = MEAudioSessionExclusiveModeOverride,
|
|
METrustUnknown = 400,
|
|
MEPolicyChanged = 401,
|
|
MEContentProtectionMessage = 402,
|
|
MEPolicySet = 403,
|
|
METrustV1Anchor = MEPolicySet,
|
|
MEWMDRMLicenseBackupCompleted = 500,
|
|
MEWMDRMLicenseBackupProgress = 501,
|
|
MEWMDRMLicenseRestoreCompleted = 502,
|
|
MEWMDRMLicenseRestoreProgress = 503,
|
|
MEWMDRMLicenseAcquisitionCompleted = 506,
|
|
MEWMDRMIndividualizationCompleted = 508,
|
|
MEWMDRMIndividualizationProgress = 513,
|
|
MEWMDRMProximityCompleted = 514,
|
|
MEWMDRMLicenseStoreCleaned = 515,
|
|
MEWMDRMRevocationDownloadCompleted = 516,
|
|
MEWMDRMV1Anchor = MEWMDRMRevocationDownloadCompleted,
|
|
METransformUnknown = 600,
|
|
METransformNeedInput = ( METransformUnknown + 1 ) ,
|
|
METransformHaveOutput = ( METransformNeedInput + 1 ) ,
|
|
METransformDrainComplete = ( METransformHaveOutput + 1 ) ,
|
|
METransformMarker = ( METransformDrainComplete + 1 ) ,
|
|
MEReservedMax = 10000
|
|
} ;
|
|
typedef DWORD MediaEventType;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0009_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0009_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFMediaEvent_INTERFACE_DEFINED__
|
|
#define __IMFMediaEvent_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFMediaEvent */
|
|
/* [uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFMediaEvent;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("DF598932-F10C-4E39-BBA2-C308F101DAA3")
|
|
IMFMediaEvent : public IMFAttributes
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetType(
|
|
/* [out] */ __RPC__out MediaEventType *pmet) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetExtendedType(
|
|
/* [out] */ __RPC__out GUID *pguidExtendedType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStatus(
|
|
/* [out] */ __RPC__out HRESULT *phrStatus) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetValue(
|
|
/* [out] */ __RPC__out PROPVARIANT *pvValue) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFMediaEventVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFMediaEvent * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFMediaEvent * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItem )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [full][out][in] */ __RPC__inout_opt PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemType )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CompareItem )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFPROPVARIANT Value,
|
|
/* [out] */ __RPC__out BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Compare )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in_opt IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
/* [out] */ __RPC__out BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT32 )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT64 )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT64 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDouble )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out double *pfValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetGUID )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out GUID *pguidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStringLength )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(cchBufSize) LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
/* [full][out][in] */ __RPC__inout_opt UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedString )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(( *pcchLength + 1 ) ) LPWSTR *ppwszValue,
|
|
/* [out] */ __RPC__out UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlobSize )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlob )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(cbBufSize) UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
/* [full][out][in] */ __RPC__inout_opt UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedBlob )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*pcbSize) UINT8 **ppBuf,
|
|
/* [out] */ __RPC__out UINT32 *pcbSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUnknown )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFIID riid,
|
|
/* [iid_is][out] */ __RPC__deref_out_opt LPVOID *ppv);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetItem )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFPROPVARIANT Value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteItem )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteAllItems )(
|
|
__RPC__in IMFMediaEvent * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT32 )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT64 )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDouble )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetGUID )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFGUID guidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR wszValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBlob )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(cbBufSize) const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUnknown )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [in] */ __RPC__in_opt IUnknown *pUnknown);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LockStore )(
|
|
__RPC__in IMFMediaEvent * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *UnlockStore )(
|
|
__RPC__in IMFMediaEvent * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCount )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
/* [out] */ __RPC__out UINT32 *pcItems);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemByIndex )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
UINT32 unIndex,
|
|
/* [out] */ __RPC__out GUID *pguidKey,
|
|
/* [full][out][in] */ __RPC__inout_opt PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CopyAllItems )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
/* [in] */ __RPC__in_opt IMFAttributes *pDest);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetType )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
/* [out] */ __RPC__out MediaEventType *pmet);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetExtendedType )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
/* [out] */ __RPC__out GUID *pguidExtendedType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStatus )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
/* [out] */ __RPC__out HRESULT *phrStatus);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetValue )(
|
|
__RPC__in IMFMediaEvent * This,
|
|
/* [out] */ __RPC__out PROPVARIANT *pvValue);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaEventVtbl;
|
|
|
|
interface IMFMediaEvent
|
|
{
|
|
CONST_VTBL struct IMFMediaEventVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFMediaEvent_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFMediaEvent_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFMediaEvent_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFMediaEvent_GetItem(This,guidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItem(This,guidKey,pValue) )
|
|
|
|
#define IMFMediaEvent_GetItemType(This,guidKey,pType) \
|
|
( (This)->lpVtbl -> GetItemType(This,guidKey,pType) )
|
|
|
|
#define IMFMediaEvent_CompareItem(This,guidKey,Value,pbResult) \
|
|
( (This)->lpVtbl -> CompareItem(This,guidKey,Value,pbResult) )
|
|
|
|
#define IMFMediaEvent_Compare(This,pTheirs,MatchType,pbResult) \
|
|
( (This)->lpVtbl -> Compare(This,pTheirs,MatchType,pbResult) )
|
|
|
|
#define IMFMediaEvent_GetUINT32(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT32(This,guidKey,punValue) )
|
|
|
|
#define IMFMediaEvent_GetUINT64(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT64(This,guidKey,punValue) )
|
|
|
|
#define IMFMediaEvent_GetDouble(This,guidKey,pfValue) \
|
|
( (This)->lpVtbl -> GetDouble(This,guidKey,pfValue) )
|
|
|
|
#define IMFMediaEvent_GetGUID(This,guidKey,pguidValue) \
|
|
( (This)->lpVtbl -> GetGUID(This,guidKey,pguidValue) )
|
|
|
|
#define IMFMediaEvent_GetStringLength(This,guidKey,pcchLength) \
|
|
( (This)->lpVtbl -> GetStringLength(This,guidKey,pcchLength) )
|
|
|
|
#define IMFMediaEvent_GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) \
|
|
( (This)->lpVtbl -> GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) )
|
|
|
|
#define IMFMediaEvent_GetAllocatedString(This,guidKey,ppwszValue,pcchLength) \
|
|
( (This)->lpVtbl -> GetAllocatedString(This,guidKey,ppwszValue,pcchLength) )
|
|
|
|
#define IMFMediaEvent_GetBlobSize(This,guidKey,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlobSize(This,guidKey,pcbBlobSize) )
|
|
|
|
#define IMFMediaEvent_GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) )
|
|
|
|
#define IMFMediaEvent_GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) \
|
|
( (This)->lpVtbl -> GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) )
|
|
|
|
#define IMFMediaEvent_GetUnknown(This,guidKey,riid,ppv) \
|
|
( (This)->lpVtbl -> GetUnknown(This,guidKey,riid,ppv) )
|
|
|
|
#define IMFMediaEvent_SetItem(This,guidKey,Value) \
|
|
( (This)->lpVtbl -> SetItem(This,guidKey,Value) )
|
|
|
|
#define IMFMediaEvent_DeleteItem(This,guidKey) \
|
|
( (This)->lpVtbl -> DeleteItem(This,guidKey) )
|
|
|
|
#define IMFMediaEvent_DeleteAllItems(This) \
|
|
( (This)->lpVtbl -> DeleteAllItems(This) )
|
|
|
|
#define IMFMediaEvent_SetUINT32(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT32(This,guidKey,unValue) )
|
|
|
|
#define IMFMediaEvent_SetUINT64(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT64(This,guidKey,unValue) )
|
|
|
|
#define IMFMediaEvent_SetDouble(This,guidKey,fValue) \
|
|
( (This)->lpVtbl -> SetDouble(This,guidKey,fValue) )
|
|
|
|
#define IMFMediaEvent_SetGUID(This,guidKey,guidValue) \
|
|
( (This)->lpVtbl -> SetGUID(This,guidKey,guidValue) )
|
|
|
|
#define IMFMediaEvent_SetString(This,guidKey,wszValue) \
|
|
( (This)->lpVtbl -> SetString(This,guidKey,wszValue) )
|
|
|
|
#define IMFMediaEvent_SetBlob(This,guidKey,pBuf,cbBufSize) \
|
|
( (This)->lpVtbl -> SetBlob(This,guidKey,pBuf,cbBufSize) )
|
|
|
|
#define IMFMediaEvent_SetUnknown(This,guidKey,pUnknown) \
|
|
( (This)->lpVtbl -> SetUnknown(This,guidKey,pUnknown) )
|
|
|
|
#define IMFMediaEvent_LockStore(This) \
|
|
( (This)->lpVtbl -> LockStore(This) )
|
|
|
|
#define IMFMediaEvent_UnlockStore(This) \
|
|
( (This)->lpVtbl -> UnlockStore(This) )
|
|
|
|
#define IMFMediaEvent_GetCount(This,pcItems) \
|
|
( (This)->lpVtbl -> GetCount(This,pcItems) )
|
|
|
|
#define IMFMediaEvent_GetItemByIndex(This,unIndex,pguidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItemByIndex(This,unIndex,pguidKey,pValue) )
|
|
|
|
#define IMFMediaEvent_CopyAllItems(This,pDest) \
|
|
( (This)->lpVtbl -> CopyAllItems(This,pDest) )
|
|
|
|
|
|
#define IMFMediaEvent_GetType(This,pmet) \
|
|
( (This)->lpVtbl -> GetType(This,pmet) )
|
|
|
|
#define IMFMediaEvent_GetExtendedType(This,pguidExtendedType) \
|
|
( (This)->lpVtbl -> GetExtendedType(This,pguidExtendedType) )
|
|
|
|
#define IMFMediaEvent_GetStatus(This,phrStatus) \
|
|
( (This)->lpVtbl -> GetStatus(This,phrStatus) )
|
|
|
|
#define IMFMediaEvent_GetValue(This,pvValue) \
|
|
( (This)->lpVtbl -> GetValue(This,pvValue) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFMediaEvent_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0010 */
|
|
/* [local] */
|
|
|
|
#define MF_EVENT_FLAG_NO_WAIT 0x00000001
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0010_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0010_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFMediaEventGenerator_INTERFACE_DEFINED__
|
|
#define __IMFMediaEventGenerator_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFMediaEventGenerator */
|
|
/* [uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFMediaEventGenerator;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("2CD0BD52-BCD5-4B89-B62C-EADC0C031E7D")
|
|
IMFMediaEventGenerator : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetEvent(
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [out] */ __RPC__deref_out_opt IMFMediaEvent **ppEvent) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE BeginGetEvent(
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE EndGetEvent(
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out IMFMediaEvent **ppEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueueEvent(
|
|
/* [in] */ MediaEventType met,
|
|
/* [in] */ __RPC__in REFGUID guidExtendedType,
|
|
/* [in] */ HRESULT hrStatus,
|
|
/* [unique][in] */ __RPC__in_opt const PROPVARIANT *pvValue) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFMediaEventGeneratorVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFMediaEventGenerator * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFMediaEventGenerator * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFMediaEventGenerator * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetEvent )(
|
|
__RPC__in IMFMediaEventGenerator * This,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [out] */ __RPC__deref_out_opt IMFMediaEvent **ppEvent);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *BeginGetEvent )(
|
|
IMFMediaEventGenerator * This,
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *EndGetEvent )(
|
|
IMFMediaEventGenerator * This,
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out IMFMediaEvent **ppEvent);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueueEvent )(
|
|
__RPC__in IMFMediaEventGenerator * This,
|
|
/* [in] */ MediaEventType met,
|
|
/* [in] */ __RPC__in REFGUID guidExtendedType,
|
|
/* [in] */ HRESULT hrStatus,
|
|
/* [unique][in] */ __RPC__in_opt const PROPVARIANT *pvValue);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaEventGeneratorVtbl;
|
|
|
|
interface IMFMediaEventGenerator
|
|
{
|
|
CONST_VTBL struct IMFMediaEventGeneratorVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFMediaEventGenerator_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFMediaEventGenerator_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFMediaEventGenerator_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFMediaEventGenerator_GetEvent(This,dwFlags,ppEvent) \
|
|
( (This)->lpVtbl -> GetEvent(This,dwFlags,ppEvent) )
|
|
|
|
#define IMFMediaEventGenerator_BeginGetEvent(This,pCallback,punkState) \
|
|
( (This)->lpVtbl -> BeginGetEvent(This,pCallback,punkState) )
|
|
|
|
#define IMFMediaEventGenerator_EndGetEvent(This,pResult,ppEvent) \
|
|
( (This)->lpVtbl -> EndGetEvent(This,pResult,ppEvent) )
|
|
|
|
#define IMFMediaEventGenerator_QueueEvent(This,met,guidExtendedType,hrStatus,pvValue) \
|
|
( (This)->lpVtbl -> QueueEvent(This,met,guidExtendedType,hrStatus,pvValue) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
/* [call_as] */ HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_RemoteBeginGetEvent_Proxy(
|
|
__RPC__in IMFMediaEventGenerator * This,
|
|
/* [in] */ __RPC__in_opt IMFRemoteAsyncCallback *pCallback);
|
|
|
|
|
|
void __RPC_STUB IMFMediaEventGenerator_RemoteBeginGetEvent_Stub(
|
|
IRpcStubBuffer *This,
|
|
IRpcChannelBuffer *_pRpcChannelBuffer,
|
|
PRPC_MESSAGE _pRpcMessage,
|
|
DWORD *_pdwStubPhase);
|
|
|
|
|
|
/* [call_as] */ HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_RemoteEndGetEvent_Proxy(
|
|
__RPC__in IMFMediaEventGenerator * This,
|
|
/* [in] */ __RPC__in_opt IUnknown *pResult,
|
|
/* [out] */ __RPC__out DWORD *pcbEvent,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*pcbEvent) BYTE **ppbEvent);
|
|
|
|
|
|
void __RPC_STUB IMFMediaEventGenerator_RemoteEndGetEvent_Stub(
|
|
IRpcStubBuffer *This,
|
|
IRpcChannelBuffer *_pRpcChannelBuffer,
|
|
PRPC_MESSAGE _pRpcMessage,
|
|
DWORD *_pdwStubPhase);
|
|
|
|
|
|
|
|
#endif /* __IMFMediaEventGenerator_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFRemoteAsyncCallback_INTERFACE_DEFINED__
|
|
#define __IMFRemoteAsyncCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFRemoteAsyncCallback */
|
|
/* [uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFRemoteAsyncCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("a27003d0-2354-4f2a-8d6a-ab7cff15437e")
|
|
IMFRemoteAsyncCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Invoke(
|
|
/* [in] */ HRESULT hr,
|
|
/* [in] */ __RPC__in_opt IUnknown *pRemoteResult) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFRemoteAsyncCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFRemoteAsyncCallback * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFRemoteAsyncCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFRemoteAsyncCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
|
__RPC__in IMFRemoteAsyncCallback * This,
|
|
/* [in] */ HRESULT hr,
|
|
/* [in] */ __RPC__in_opt IUnknown *pRemoteResult);
|
|
|
|
END_INTERFACE
|
|
} IMFRemoteAsyncCallbackVtbl;
|
|
|
|
interface IMFRemoteAsyncCallback
|
|
{
|
|
CONST_VTBL struct IMFRemoteAsyncCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFRemoteAsyncCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFRemoteAsyncCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFRemoteAsyncCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFRemoteAsyncCallback_Invoke(This,hr,pRemoteResult) \
|
|
( (This)->lpVtbl -> Invoke(This,hr,pRemoteResult) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFRemoteAsyncCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0012 */
|
|
/* [local] */
|
|
|
|
typedef
|
|
enum _MFBYTESTREAM_SEEK_ORIGIN
|
|
{ msoBegin = 0,
|
|
msoCurrent = ( msoBegin + 1 )
|
|
} MFBYTESTREAM_SEEK_ORIGIN;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0012_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0012_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFByteStream_INTERFACE_DEFINED__
|
|
#define __IMFByteStream_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFByteStream */
|
|
/* [uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFByteStream;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("ad4c1b00-4bf7-422f-9175-756693d9130d")
|
|
IMFByteStream : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetCapabilities(
|
|
/* [out] */ __RPC__out DWORD *pdwCapabilities) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetLength(
|
|
/* [out] */ __RPC__out QWORD *pqwLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetLength(
|
|
/* [in] */ QWORD qwLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCurrentPosition(
|
|
/* [out] */ __RPC__out QWORD *pqwPosition) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCurrentPosition(
|
|
/* [in] */ QWORD qwPosition) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsEndOfStream(
|
|
/* [out] */ __RPC__out BOOL *pfEndOfStream) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE Read(
|
|
/* [annotation][in] */
|
|
__out_bcount_part(cb, *pcbRead) BYTE *pb,
|
|
/* [in] */ ULONG cb,
|
|
/* [annotation][out] */
|
|
__out ULONG *pcbRead) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE BeginRead(
|
|
/* [annotation][in] */
|
|
__out_bcount(cb) BYTE *pb,
|
|
/* [in] */ ULONG cb,
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE EndRead(
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out ULONG *pcbRead) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE Write(
|
|
/* [annotation][in] */
|
|
__in_bcount(cb) const BYTE *pb,
|
|
/* [in] */ ULONG cb,
|
|
/* [annotation][out] */
|
|
__out __deref_out_range(<=, cb) ULONG *pcbWritten) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE BeginWrite(
|
|
/* [annotation][in] */
|
|
__in_bcount(cb) const BYTE *pb,
|
|
/* [in] */ ULONG cb,
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE EndWrite(
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out ULONG *pcbWritten) = 0;
|
|
|
|
virtual /* [local] */ HRESULT STDMETHODCALLTYPE Seek(
|
|
/* [in] */ MFBYTESTREAM_SEEK_ORIGIN SeekOrigin,
|
|
/* [in] */ LONGLONG llSeekOffset,
|
|
/* [in] */ DWORD dwSeekFlags,
|
|
/* [annotation][out] */
|
|
__out_opt QWORD *pqwCurrentPosition) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Flush( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Close( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFByteStreamVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFByteStream * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFByteStream * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFByteStream * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCapabilities )(
|
|
__RPC__in IMFByteStream * This,
|
|
/* [out] */ __RPC__out DWORD *pdwCapabilities);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetLength )(
|
|
__RPC__in IMFByteStream * This,
|
|
/* [out] */ __RPC__out QWORD *pqwLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetLength )(
|
|
__RPC__in IMFByteStream * This,
|
|
/* [in] */ QWORD qwLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCurrentPosition )(
|
|
__RPC__in IMFByteStream * This,
|
|
/* [out] */ __RPC__out QWORD *pqwPosition);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetCurrentPosition )(
|
|
__RPC__in IMFByteStream * This,
|
|
/* [in] */ QWORD qwPosition);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsEndOfStream )(
|
|
__RPC__in IMFByteStream * This,
|
|
/* [out] */ __RPC__out BOOL *pfEndOfStream);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Read )(
|
|
IMFByteStream * This,
|
|
/* [annotation][in] */
|
|
__out_bcount_part(cb, *pcbRead) BYTE *pb,
|
|
/* [in] */ ULONG cb,
|
|
/* [annotation][out] */
|
|
__out ULONG *pcbRead);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *BeginRead )(
|
|
IMFByteStream * This,
|
|
/* [annotation][in] */
|
|
__out_bcount(cb) BYTE *pb,
|
|
/* [in] */ ULONG cb,
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *EndRead )(
|
|
IMFByteStream * This,
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out ULONG *pcbRead);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Write )(
|
|
IMFByteStream * This,
|
|
/* [annotation][in] */
|
|
__in_bcount(cb) const BYTE *pb,
|
|
/* [in] */ ULONG cb,
|
|
/* [annotation][out] */
|
|
__out __deref_out_range(<=, cb) ULONG *pcbWritten);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *BeginWrite )(
|
|
IMFByteStream * This,
|
|
/* [annotation][in] */
|
|
__in_bcount(cb) const BYTE *pb,
|
|
/* [in] */ ULONG cb,
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *EndWrite )(
|
|
IMFByteStream * This,
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out ULONG *pcbWritten);
|
|
|
|
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Seek )(
|
|
IMFByteStream * This,
|
|
/* [in] */ MFBYTESTREAM_SEEK_ORIGIN SeekOrigin,
|
|
/* [in] */ LONGLONG llSeekOffset,
|
|
/* [in] */ DWORD dwSeekFlags,
|
|
/* [annotation][out] */
|
|
__out_opt QWORD *pqwCurrentPosition);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Flush )(
|
|
__RPC__in IMFByteStream * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Close )(
|
|
__RPC__in IMFByteStream * This);
|
|
|
|
END_INTERFACE
|
|
} IMFByteStreamVtbl;
|
|
|
|
interface IMFByteStream
|
|
{
|
|
CONST_VTBL struct IMFByteStreamVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFByteStream_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFByteStream_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFByteStream_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFByteStream_GetCapabilities(This,pdwCapabilities) \
|
|
( (This)->lpVtbl -> GetCapabilities(This,pdwCapabilities) )
|
|
|
|
#define IMFByteStream_GetLength(This,pqwLength) \
|
|
( (This)->lpVtbl -> GetLength(This,pqwLength) )
|
|
|
|
#define IMFByteStream_SetLength(This,qwLength) \
|
|
( (This)->lpVtbl -> SetLength(This,qwLength) )
|
|
|
|
#define IMFByteStream_GetCurrentPosition(This,pqwPosition) \
|
|
( (This)->lpVtbl -> GetCurrentPosition(This,pqwPosition) )
|
|
|
|
#define IMFByteStream_SetCurrentPosition(This,qwPosition) \
|
|
( (This)->lpVtbl -> SetCurrentPosition(This,qwPosition) )
|
|
|
|
#define IMFByteStream_IsEndOfStream(This,pfEndOfStream) \
|
|
( (This)->lpVtbl -> IsEndOfStream(This,pfEndOfStream) )
|
|
|
|
#define IMFByteStream_Read(This,pb,cb,pcbRead) \
|
|
( (This)->lpVtbl -> Read(This,pb,cb,pcbRead) )
|
|
|
|
#define IMFByteStream_BeginRead(This,pb,cb,pCallback,punkState) \
|
|
( (This)->lpVtbl -> BeginRead(This,pb,cb,pCallback,punkState) )
|
|
|
|
#define IMFByteStream_EndRead(This,pResult,pcbRead) \
|
|
( (This)->lpVtbl -> EndRead(This,pResult,pcbRead) )
|
|
|
|
#define IMFByteStream_Write(This,pb,cb,pcbWritten) \
|
|
( (This)->lpVtbl -> Write(This,pb,cb,pcbWritten) )
|
|
|
|
#define IMFByteStream_BeginWrite(This,pb,cb,pCallback,punkState) \
|
|
( (This)->lpVtbl -> BeginWrite(This,pb,cb,pCallback,punkState) )
|
|
|
|
#define IMFByteStream_EndWrite(This,pResult,pcbWritten) \
|
|
( (This)->lpVtbl -> EndWrite(This,pResult,pcbWritten) )
|
|
|
|
#define IMFByteStream_Seek(This,SeekOrigin,llSeekOffset,dwSeekFlags,pqwCurrentPosition) \
|
|
( (This)->lpVtbl -> Seek(This,SeekOrigin,llSeekOffset,dwSeekFlags,pqwCurrentPosition) )
|
|
|
|
#define IMFByteStream_Flush(This) \
|
|
( (This)->lpVtbl -> Flush(This) )
|
|
|
|
#define IMFByteStream_Close(This) \
|
|
( (This)->lpVtbl -> Close(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFByteStream_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0013 */
|
|
/* [local] */
|
|
|
|
#define MFBYTESTREAM_IS_READABLE 0x00000001
|
|
#define MFBYTESTREAM_IS_WRITABLE 0x00000002
|
|
#define MFBYTESTREAM_IS_SEEKABLE 0x00000004
|
|
#define MFBYTESTREAM_IS_REMOTE 0x00000008
|
|
#define MFBYTESTREAM_IS_DIRECTORY 0x00000080
|
|
#define MFBYTESTREAM_HAS_SLOW_SEEK 0x00000100
|
|
#define MFBYTESTREAM_IS_PARTIALLY_DOWNLOADED 0x00000200
|
|
#if (WINVER >= _WIN32_WINNT_WIN7)
|
|
#define MFBYTESTREAM_SHARE_WRITE 0x00000400
|
|
#endif // (WINVER >= _WIN32_WINNT_WIN7)
|
|
#define MFBYTESTREAM_SEEK_FLAG_CANCEL_PENDING_IO 0x00000001
|
|
EXTERN_GUID( MF_BYTESTREAM_ORIGIN_NAME, 0xfc358288, 0x3cb6, 0x460c, 0xa4, 0x24, 0xb6, 0x68, 0x12, 0x60, 0x37, 0x5a);
|
|
EXTERN_GUID( MF_BYTESTREAM_CONTENT_TYPE, 0xfc358289, 0x3cb6, 0x460c, 0xa4, 0x24, 0xb6, 0x68, 0x12, 0x60, 0x37, 0x5a);
|
|
EXTERN_GUID( MF_BYTESTREAM_DURATION, 0xfc35828a, 0x3cb6, 0x460c, 0xa4, 0x24, 0xb6, 0x68, 0x12, 0x60, 0x37, 0x5a);
|
|
EXTERN_GUID( MF_BYTESTREAM_LAST_MODIFIED_TIME, 0xfc35828b, 0x3cb6, 0x460c, 0xa4, 0x24, 0xb6, 0x68, 0x12, 0x60, 0x37, 0x5a);
|
|
#if (WINVER >= _WIN32_WINNT_WIN7)
|
|
EXTERN_GUID( MF_BYTESTREAM_IFO_FILE_URI, 0xfc35828c, 0x3cb6, 0x460c, 0xa4, 0x24, 0xb6, 0x68, 0x12, 0x60, 0x37, 0x5a);
|
|
EXTERN_GUID( MF_BYTESTREAM_DLNA_PROFILE_ID, 0xfc35828d, 0x3cb6, 0x460c, 0xa4, 0x24, 0xb6, 0x68, 0x12, 0x60, 0x37, 0x5a);
|
|
#endif // (WINVER >= _WIN32_WINNT_WIN7)
|
|
typedef /* [public] */
|
|
enum __MIDL___MIDL_itf_mfobjects_0000_0013_0001
|
|
{ MF_ACCESSMODE_READ = 1,
|
|
MF_ACCESSMODE_WRITE = 2,
|
|
MF_ACCESSMODE_READWRITE = 3
|
|
} MF_FILE_ACCESSMODE;
|
|
|
|
typedef /* [public] */
|
|
enum __MIDL___MIDL_itf_mfobjects_0000_0013_0002
|
|
{ MF_OPENMODE_FAIL_IF_NOT_EXIST = 0,
|
|
MF_OPENMODE_FAIL_IF_EXIST = 1,
|
|
MF_OPENMODE_RESET_IF_EXIST = 2,
|
|
MF_OPENMODE_APPEND_IF_EXIST = 3,
|
|
MF_OPENMODE_DELETE_IF_EXIST = 4
|
|
} MF_FILE_OPENMODE;
|
|
|
|
typedef /* [public] */
|
|
enum __MIDL___MIDL_itf_mfobjects_0000_0013_0003
|
|
{ MF_FILEFLAGS_NONE = 0,
|
|
MF_FILEFLAGS_NOBUFFERING = 0x1,
|
|
MF_FILEFLAGS_ALLOW_WRITE_SHARING = 0x2
|
|
} MF_FILE_FLAGS;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0013_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0013_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFCollection_INTERFACE_DEFINED__
|
|
#define __IMFCollection_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFCollection */
|
|
/* [uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFCollection;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("5BC8A76B-869A-46a3-9B03-FA218A66AEBE")
|
|
IMFCollection : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetElementCount(
|
|
/* [out] */ __RPC__out DWORD *pcElements) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetElement(
|
|
/* [in] */ DWORD dwElementIndex,
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppUnkElement) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE AddElement(
|
|
/* [in] */ __RPC__in_opt IUnknown *pUnkElement) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RemoveElement(
|
|
/* [in] */ DWORD dwElementIndex,
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppUnkElement) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE InsertElementAt(
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [in] */ __RPC__in_opt IUnknown *pUnknown) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RemoveAllElements( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFCollectionVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFCollection * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFCollection * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFCollection * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetElementCount )(
|
|
__RPC__in IMFCollection * This,
|
|
/* [out] */ __RPC__out DWORD *pcElements);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetElement )(
|
|
__RPC__in IMFCollection * This,
|
|
/* [in] */ DWORD dwElementIndex,
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppUnkElement);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AddElement )(
|
|
__RPC__in IMFCollection * This,
|
|
/* [in] */ __RPC__in_opt IUnknown *pUnkElement);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RemoveElement )(
|
|
__RPC__in IMFCollection * This,
|
|
/* [in] */ DWORD dwElementIndex,
|
|
/* [out] */ __RPC__deref_out_opt IUnknown **ppUnkElement);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *InsertElementAt )(
|
|
__RPC__in IMFCollection * This,
|
|
/* [in] */ DWORD dwIndex,
|
|
/* [in] */ __RPC__in_opt IUnknown *pUnknown);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RemoveAllElements )(
|
|
__RPC__in IMFCollection * This);
|
|
|
|
END_INTERFACE
|
|
} IMFCollectionVtbl;
|
|
|
|
interface IMFCollection
|
|
{
|
|
CONST_VTBL struct IMFCollectionVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFCollection_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFCollection_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFCollection_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFCollection_GetElementCount(This,pcElements) \
|
|
( (This)->lpVtbl -> GetElementCount(This,pcElements) )
|
|
|
|
#define IMFCollection_GetElement(This,dwElementIndex,ppUnkElement) \
|
|
( (This)->lpVtbl -> GetElement(This,dwElementIndex,ppUnkElement) )
|
|
|
|
#define IMFCollection_AddElement(This,pUnkElement) \
|
|
( (This)->lpVtbl -> AddElement(This,pUnkElement) )
|
|
|
|
#define IMFCollection_RemoveElement(This,dwElementIndex,ppUnkElement) \
|
|
( (This)->lpVtbl -> RemoveElement(This,dwElementIndex,ppUnkElement) )
|
|
|
|
#define IMFCollection_InsertElementAt(This,dwIndex,pUnknown) \
|
|
( (This)->lpVtbl -> InsertElementAt(This,dwIndex,pUnknown) )
|
|
|
|
#define IMFCollection_RemoveAllElements(This) \
|
|
( (This)->lpVtbl -> RemoveAllElements(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFCollection_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFMediaEventQueue_INTERFACE_DEFINED__
|
|
#define __IMFMediaEventQueue_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFMediaEventQueue */
|
|
/* [local][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFMediaEventQueue;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("36f846fc-2256-48b6-b58e-e2b638316581")
|
|
IMFMediaEventQueue : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetEvent(
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [annotation][out] */
|
|
__out IMFMediaEvent **ppEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginGetEvent(
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndGetEvent(
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out IMFMediaEvent **ppEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueueEvent(
|
|
/* [in] */ IMFMediaEvent *pEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueueEventParamVar(
|
|
/* [in] */ MediaEventType met,
|
|
/* [in] */ REFGUID guidExtendedType,
|
|
/* [in] */ HRESULT hrStatus,
|
|
/* [unique][in] */ const PROPVARIANT *pvValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueueEventParamUnk(
|
|
/* [in] */ MediaEventType met,
|
|
/* [in] */ REFGUID guidExtendedType,
|
|
/* [in] */ HRESULT hrStatus,
|
|
/* [unique][in] */ IUnknown *pUnk) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Shutdown( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFMediaEventQueueVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFMediaEventQueue * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFMediaEventQueue * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFMediaEventQueue * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetEvent )(
|
|
IMFMediaEventQueue * This,
|
|
/* [in] */ DWORD dwFlags,
|
|
/* [annotation][out] */
|
|
__out IMFMediaEvent **ppEvent);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *BeginGetEvent )(
|
|
IMFMediaEventQueue * This,
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *EndGetEvent )(
|
|
IMFMediaEventQueue * This,
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out IMFMediaEvent **ppEvent);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueueEvent )(
|
|
IMFMediaEventQueue * This,
|
|
/* [in] */ IMFMediaEvent *pEvent);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueueEventParamVar )(
|
|
IMFMediaEventQueue * This,
|
|
/* [in] */ MediaEventType met,
|
|
/* [in] */ REFGUID guidExtendedType,
|
|
/* [in] */ HRESULT hrStatus,
|
|
/* [unique][in] */ const PROPVARIANT *pvValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueueEventParamUnk )(
|
|
IMFMediaEventQueue * This,
|
|
/* [in] */ MediaEventType met,
|
|
/* [in] */ REFGUID guidExtendedType,
|
|
/* [in] */ HRESULT hrStatus,
|
|
/* [unique][in] */ IUnknown *pUnk);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Shutdown )(
|
|
IMFMediaEventQueue * This);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaEventQueueVtbl;
|
|
|
|
interface IMFMediaEventQueue
|
|
{
|
|
CONST_VTBL struct IMFMediaEventQueueVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFMediaEventQueue_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFMediaEventQueue_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFMediaEventQueue_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFMediaEventQueue_GetEvent(This,dwFlags,ppEvent) \
|
|
( (This)->lpVtbl -> GetEvent(This,dwFlags,ppEvent) )
|
|
|
|
#define IMFMediaEventQueue_BeginGetEvent(This,pCallback,punkState) \
|
|
( (This)->lpVtbl -> BeginGetEvent(This,pCallback,punkState) )
|
|
|
|
#define IMFMediaEventQueue_EndGetEvent(This,pResult,ppEvent) \
|
|
( (This)->lpVtbl -> EndGetEvent(This,pResult,ppEvent) )
|
|
|
|
#define IMFMediaEventQueue_QueueEvent(This,pEvent) \
|
|
( (This)->lpVtbl -> QueueEvent(This,pEvent) )
|
|
|
|
#define IMFMediaEventQueue_QueueEventParamVar(This,met,guidExtendedType,hrStatus,pvValue) \
|
|
( (This)->lpVtbl -> QueueEventParamVar(This,met,guidExtendedType,hrStatus,pvValue) )
|
|
|
|
#define IMFMediaEventQueue_QueueEventParamUnk(This,met,guidExtendedType,hrStatus,pUnk) \
|
|
( (This)->lpVtbl -> QueueEventParamUnk(This,met,guidExtendedType,hrStatus,pUnk) )
|
|
|
|
#define IMFMediaEventQueue_Shutdown(This) \
|
|
( (This)->lpVtbl -> Shutdown(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFMediaEventQueue_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IMFActivate_INTERFACE_DEFINED__
|
|
#define __IMFActivate_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFActivate */
|
|
/* [unique][helpstring][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFActivate;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("7FEE9E9A-4A89-47a6-899C-B6A53A70FB67")
|
|
IMFActivate : public IMFAttributes
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE ActivateObject(
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [retval][iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ShutdownObject( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DetachObject( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFActivateVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IMFActivate * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IMFActivate * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IMFActivate * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItem )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [full][out][in] */ __RPC__inout_opt PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemType )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CompareItem )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFPROPVARIANT Value,
|
|
/* [out] */ __RPC__out BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Compare )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in_opt IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
/* [out] */ __RPC__out BOOL *pbResult);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT32 )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUINT64 )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT64 *punValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDouble )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out double *pfValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetGUID )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out GUID *pguidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetStringLength )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetString )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(cchBufSize) LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
/* [full][out][in] */ __RPC__inout_opt UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedString )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(( *pcchLength + 1 ) ) LPWSTR *ppwszValue,
|
|
/* [out] */ __RPC__out UINT32 *pcchLength);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlobSize )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [out] */ __RPC__out UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetBlob )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(cbBufSize) UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
/* [full][out][in] */ __RPC__inout_opt UINT32 *pcbBlobSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetAllocatedBlob )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*pcbSize) UINT8 **ppBuf,
|
|
/* [out] */ __RPC__out UINT32 *pcbSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUnknown )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFIID riid,
|
|
/* [iid_is][out] */ __RPC__deref_out_opt LPVOID *ppv);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetItem )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFPROPVARIANT Value);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteItem )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DeleteAllItems )(
|
|
__RPC__in IMFActivate * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT32 )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUINT64 )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDouble )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetGUID )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
__RPC__in REFGUID guidValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetString )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR wszValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetBlob )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(cbBufSize) const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetUnknown )(
|
|
__RPC__in IMFActivate * This,
|
|
__RPC__in REFGUID guidKey,
|
|
/* [in] */ __RPC__in_opt IUnknown *pUnknown);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LockStore )(
|
|
__RPC__in IMFActivate * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *UnlockStore )(
|
|
__RPC__in IMFActivate * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetCount )(
|
|
__RPC__in IMFActivate * This,
|
|
/* [out] */ __RPC__out UINT32 *pcItems);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetItemByIndex )(
|
|
__RPC__in IMFActivate * This,
|
|
UINT32 unIndex,
|
|
/* [out] */ __RPC__out GUID *pguidKey,
|
|
/* [full][out][in] */ __RPC__inout_opt PROPVARIANT *pValue);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CopyAllItems )(
|
|
__RPC__in IMFActivate * This,
|
|
/* [in] */ __RPC__in_opt IMFAttributes *pDest);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ActivateObject )(
|
|
__RPC__in IMFActivate * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [retval][iid_is][out] */ __RPC__deref_out_opt void **ppv);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ShutdownObject )(
|
|
__RPC__in IMFActivate * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DetachObject )(
|
|
__RPC__in IMFActivate * This);
|
|
|
|
END_INTERFACE
|
|
} IMFActivateVtbl;
|
|
|
|
interface IMFActivate
|
|
{
|
|
CONST_VTBL struct IMFActivateVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFActivate_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFActivate_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFActivate_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFActivate_GetItem(This,guidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItem(This,guidKey,pValue) )
|
|
|
|
#define IMFActivate_GetItemType(This,guidKey,pType) \
|
|
( (This)->lpVtbl -> GetItemType(This,guidKey,pType) )
|
|
|
|
#define IMFActivate_CompareItem(This,guidKey,Value,pbResult) \
|
|
( (This)->lpVtbl -> CompareItem(This,guidKey,Value,pbResult) )
|
|
|
|
#define IMFActivate_Compare(This,pTheirs,MatchType,pbResult) \
|
|
( (This)->lpVtbl -> Compare(This,pTheirs,MatchType,pbResult) )
|
|
|
|
#define IMFActivate_GetUINT32(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT32(This,guidKey,punValue) )
|
|
|
|
#define IMFActivate_GetUINT64(This,guidKey,punValue) \
|
|
( (This)->lpVtbl -> GetUINT64(This,guidKey,punValue) )
|
|
|
|
#define IMFActivate_GetDouble(This,guidKey,pfValue) \
|
|
( (This)->lpVtbl -> GetDouble(This,guidKey,pfValue) )
|
|
|
|
#define IMFActivate_GetGUID(This,guidKey,pguidValue) \
|
|
( (This)->lpVtbl -> GetGUID(This,guidKey,pguidValue) )
|
|
|
|
#define IMFActivate_GetStringLength(This,guidKey,pcchLength) \
|
|
( (This)->lpVtbl -> GetStringLength(This,guidKey,pcchLength) )
|
|
|
|
#define IMFActivate_GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) \
|
|
( (This)->lpVtbl -> GetString(This,guidKey,pwszValue,cchBufSize,pcchLength) )
|
|
|
|
#define IMFActivate_GetAllocatedString(This,guidKey,ppwszValue,pcchLength) \
|
|
( (This)->lpVtbl -> GetAllocatedString(This,guidKey,ppwszValue,pcchLength) )
|
|
|
|
#define IMFActivate_GetBlobSize(This,guidKey,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlobSize(This,guidKey,pcbBlobSize) )
|
|
|
|
#define IMFActivate_GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) \
|
|
( (This)->lpVtbl -> GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize) )
|
|
|
|
#define IMFActivate_GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) \
|
|
( (This)->lpVtbl -> GetAllocatedBlob(This,guidKey,ppBuf,pcbSize) )
|
|
|
|
#define IMFActivate_GetUnknown(This,guidKey,riid,ppv) \
|
|
( (This)->lpVtbl -> GetUnknown(This,guidKey,riid,ppv) )
|
|
|
|
#define IMFActivate_SetItem(This,guidKey,Value) \
|
|
( (This)->lpVtbl -> SetItem(This,guidKey,Value) )
|
|
|
|
#define IMFActivate_DeleteItem(This,guidKey) \
|
|
( (This)->lpVtbl -> DeleteItem(This,guidKey) )
|
|
|
|
#define IMFActivate_DeleteAllItems(This) \
|
|
( (This)->lpVtbl -> DeleteAllItems(This) )
|
|
|
|
#define IMFActivate_SetUINT32(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT32(This,guidKey,unValue) )
|
|
|
|
#define IMFActivate_SetUINT64(This,guidKey,unValue) \
|
|
( (This)->lpVtbl -> SetUINT64(This,guidKey,unValue) )
|
|
|
|
#define IMFActivate_SetDouble(This,guidKey,fValue) \
|
|
( (This)->lpVtbl -> SetDouble(This,guidKey,fValue) )
|
|
|
|
#define IMFActivate_SetGUID(This,guidKey,guidValue) \
|
|
( (This)->lpVtbl -> SetGUID(This,guidKey,guidValue) )
|
|
|
|
#define IMFActivate_SetString(This,guidKey,wszValue) \
|
|
( (This)->lpVtbl -> SetString(This,guidKey,wszValue) )
|
|
|
|
#define IMFActivate_SetBlob(This,guidKey,pBuf,cbBufSize) \
|
|
( (This)->lpVtbl -> SetBlob(This,guidKey,pBuf,cbBufSize) )
|
|
|
|
#define IMFActivate_SetUnknown(This,guidKey,pUnknown) \
|
|
( (This)->lpVtbl -> SetUnknown(This,guidKey,pUnknown) )
|
|
|
|
#define IMFActivate_LockStore(This) \
|
|
( (This)->lpVtbl -> LockStore(This) )
|
|
|
|
#define IMFActivate_UnlockStore(This) \
|
|
( (This)->lpVtbl -> UnlockStore(This) )
|
|
|
|
#define IMFActivate_GetCount(This,pcItems) \
|
|
( (This)->lpVtbl -> GetCount(This,pcItems) )
|
|
|
|
#define IMFActivate_GetItemByIndex(This,unIndex,pguidKey,pValue) \
|
|
( (This)->lpVtbl -> GetItemByIndex(This,unIndex,pguidKey,pValue) )
|
|
|
|
#define IMFActivate_CopyAllItems(This,pDest) \
|
|
( (This)->lpVtbl -> CopyAllItems(This,pDest) )
|
|
|
|
|
|
#define IMFActivate_ActivateObject(This,riid,ppv) \
|
|
( (This)->lpVtbl -> ActivateObject(This,riid,ppv) )
|
|
|
|
#define IMFActivate_ShutdownObject(This) \
|
|
( (This)->lpVtbl -> ShutdownObject(This) )
|
|
|
|
#define IMFActivate_DetachObject(This) \
|
|
( (This)->lpVtbl -> DetachObject(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFActivate_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0016 */
|
|
/* [local] */
|
|
|
|
#if (WINVER >= _WIN32_WINNT_WIN7)
|
|
typedef
|
|
enum _MF_Plugin_Type
|
|
{ MF_Plugin_Type_MFT = 0,
|
|
MF_Plugin_Type_MediaSource = 1
|
|
} MF_Plugin_Type;
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0016_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0016_v0_0_s_ifspec;
|
|
|
|
#ifndef __IMFPluginControl_INTERFACE_DEFINED__
|
|
#define __IMFPluginControl_INTERFACE_DEFINED__
|
|
|
|
/* interface IMFPluginControl */
|
|
/* [unique][helpstring][uuid][local][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IMFPluginControl;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("5c6c44bf-1db6-435b-9249-e8cd10fdec96")
|
|
IMFPluginControl : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetPreferredClsid(
|
|
DWORD pluginType,
|
|
/* [annotation] */
|
|
__in LPCWSTR selector,
|
|
/* [annotation] */
|
|
__out CLSID *clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetPreferredClsidByIndex(
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
/* [annotation] */
|
|
__out LPWSTR *selector,
|
|
/* [annotation] */
|
|
__out CLSID *clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetPreferredClsid(
|
|
DWORD pluginType,
|
|
/* [annotation] */
|
|
__in LPCWSTR selector,
|
|
/* [annotation] */
|
|
__in_opt const CLSID *clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsDisabled(
|
|
DWORD pluginType,
|
|
REFCLSID clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisabledByIndex(
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
/* [annotation] */
|
|
__out CLSID *clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetDisabled(
|
|
DWORD pluginType,
|
|
REFCLSID clsid,
|
|
BOOL disabled) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IMFPluginControlVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
IMFPluginControl * This,
|
|
/* [in] */ REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
IMFPluginControl * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
IMFPluginControl * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPreferredClsid )(
|
|
IMFPluginControl * This,
|
|
DWORD pluginType,
|
|
/* [annotation] */
|
|
__in LPCWSTR selector,
|
|
/* [annotation] */
|
|
__out CLSID *clsid);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetPreferredClsidByIndex )(
|
|
IMFPluginControl * This,
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
/* [annotation] */
|
|
__out LPWSTR *selector,
|
|
/* [annotation] */
|
|
__out CLSID *clsid);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetPreferredClsid )(
|
|
IMFPluginControl * This,
|
|
DWORD pluginType,
|
|
/* [annotation] */
|
|
__in LPCWSTR selector,
|
|
/* [annotation] */
|
|
__in_opt const CLSID *clsid);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsDisabled )(
|
|
IMFPluginControl * This,
|
|
DWORD pluginType,
|
|
REFCLSID clsid);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetDisabledByIndex )(
|
|
IMFPluginControl * This,
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
/* [annotation] */
|
|
__out CLSID *clsid);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetDisabled )(
|
|
IMFPluginControl * This,
|
|
DWORD pluginType,
|
|
REFCLSID clsid,
|
|
BOOL disabled);
|
|
|
|
END_INTERFACE
|
|
} IMFPluginControlVtbl;
|
|
|
|
interface IMFPluginControl
|
|
{
|
|
CONST_VTBL struct IMFPluginControlVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IMFPluginControl_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IMFPluginControl_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IMFPluginControl_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IMFPluginControl_GetPreferredClsid(This,pluginType,selector,clsid) \
|
|
( (This)->lpVtbl -> GetPreferredClsid(This,pluginType,selector,clsid) )
|
|
|
|
#define IMFPluginControl_GetPreferredClsidByIndex(This,pluginType,index,selector,clsid) \
|
|
( (This)->lpVtbl -> GetPreferredClsidByIndex(This,pluginType,index,selector,clsid) )
|
|
|
|
#define IMFPluginControl_SetPreferredClsid(This,pluginType,selector,clsid) \
|
|
( (This)->lpVtbl -> SetPreferredClsid(This,pluginType,selector,clsid) )
|
|
|
|
#define IMFPluginControl_IsDisabled(This,pluginType,clsid) \
|
|
( (This)->lpVtbl -> IsDisabled(This,pluginType,clsid) )
|
|
|
|
#define IMFPluginControl_GetDisabledByIndex(This,pluginType,index,clsid) \
|
|
( (This)->lpVtbl -> GetDisabledByIndex(This,pluginType,index,clsid) )
|
|
|
|
#define IMFPluginControl_SetDisabled(This,pluginType,clsid,disabled) \
|
|
( (This)->lpVtbl -> SetDisabled(This,pluginType,clsid,disabled) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IMFPluginControl_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* interface __MIDL_itf_mfobjects_0000_0017 */
|
|
/* [local] */
|
|
|
|
#endif // (WINVER >= _WIN32_WINNT_WIN7)
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0017_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_mfobjects_0000_0017_v0_0_s_ifspec;
|
|
|
|
/* Additional Prototypes for ALL interfaces */
|
|
|
|
unsigned long __RPC_USER BSTR_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in BSTR * );
|
|
unsigned char * __RPC_USER BSTR_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in BSTR * );
|
|
unsigned char * __RPC_USER BSTR_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out BSTR * );
|
|
void __RPC_USER BSTR_UserFree( __RPC__in unsigned long *, __RPC__in BSTR * );
|
|
|
|
unsigned long __RPC_USER LPSAFEARRAY_UserSize( __RPC__in unsigned long *, unsigned long , __RPC__in LPSAFEARRAY * );
|
|
unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in LPSAFEARRAY * );
|
|
unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out LPSAFEARRAY * );
|
|
void __RPC_USER LPSAFEARRAY_UserFree( __RPC__in unsigned long *, __RPC__in LPSAFEARRAY * );
|
|
|
|
unsigned long __RPC_USER BSTR_UserSize64( __RPC__in unsigned long *, unsigned long , __RPC__in BSTR * );
|
|
unsigned char * __RPC_USER BSTR_UserMarshal64( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in BSTR * );
|
|
unsigned char * __RPC_USER BSTR_UserUnmarshal64(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out BSTR * );
|
|
void __RPC_USER BSTR_UserFree64( __RPC__in unsigned long *, __RPC__in BSTR * );
|
|
|
|
unsigned long __RPC_USER LPSAFEARRAY_UserSize64( __RPC__in unsigned long *, unsigned long , __RPC__in LPSAFEARRAY * );
|
|
unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal64( __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in LPSAFEARRAY * );
|
|
unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal64(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out LPSAFEARRAY * );
|
|
void __RPC_USER LPSAFEARRAY_UserFree64( __RPC__in unsigned long *, __RPC__in LPSAFEARRAY * );
|
|
|
|
/* [local] */ HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_BeginGetEvent_Proxy(
|
|
IMFMediaEventGenerator * This,
|
|
/* [in] */ IMFAsyncCallback *pCallback,
|
|
/* [in] */ IUnknown *punkState);
|
|
|
|
|
|
/* [call_as] */ HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_BeginGetEvent_Stub(
|
|
__RPC__in IMFMediaEventGenerator * This,
|
|
/* [in] */ __RPC__in_opt IMFRemoteAsyncCallback *pCallback);
|
|
|
|
/* [local] */ HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_EndGetEvent_Proxy(
|
|
IMFMediaEventGenerator * This,
|
|
/* [in] */ IMFAsyncResult *pResult,
|
|
/* [annotation][out] */
|
|
__out IMFMediaEvent **ppEvent);
|
|
|
|
|
|
/* [call_as] */ HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_EndGetEvent_Stub(
|
|
__RPC__in IMFMediaEventGenerator * This,
|
|
/* [in] */ __RPC__in_opt IUnknown *pResult,
|
|
/* [out] */ __RPC__out DWORD *pcbEvent,
|
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*pcbEvent) BYTE **ppbEvent);
|
|
|
|
|
|
|
|
/* end of Additional Prototypes */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|