mirror of
https://github.com/QB64Official/qb64.git
synced 2024-08-22 00:55:09 +00:00
7135 lines
266 KiB
C
7135 lines
266 KiB
C
/*** Autogenerated by WIDL 1.6 from include/mfobjects.idl - Do not edit ***/
|
|
|
|
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
|
#define __REQUIRED_RPCNDR_H_VERSION__ 475
|
|
#endif
|
|
|
|
#include <rpc.h>
|
|
#include <rpcndr.h>
|
|
|
|
#ifndef COM_NO_WINDOWS_H
|
|
#include <windows.h>
|
|
#include <ole2.h>
|
|
#endif
|
|
|
|
#ifndef __mfobjects_h__
|
|
#define __mfobjects_h__
|
|
|
|
/* Forward declarations */
|
|
|
|
#ifndef __IMFAttributes_FWD_DEFINED__
|
|
#define __IMFAttributes_FWD_DEFINED__
|
|
typedef interface IMFAttributes IMFAttributes;
|
|
#endif
|
|
|
|
#ifndef __IMFMediaBuffer_FWD_DEFINED__
|
|
#define __IMFMediaBuffer_FWD_DEFINED__
|
|
typedef interface IMFMediaBuffer IMFMediaBuffer;
|
|
#endif
|
|
|
|
#ifndef __IMFSample_FWD_DEFINED__
|
|
#define __IMFSample_FWD_DEFINED__
|
|
typedef interface IMFSample IMFSample;
|
|
#endif
|
|
|
|
#ifndef __IMF2DBuffer_FWD_DEFINED__
|
|
#define __IMF2DBuffer_FWD_DEFINED__
|
|
typedef interface IMF2DBuffer IMF2DBuffer;
|
|
#endif
|
|
|
|
#ifndef __IMF2DBuffer2_FWD_DEFINED__
|
|
#define __IMF2DBuffer2_FWD_DEFINED__
|
|
typedef interface IMF2DBuffer2 IMF2DBuffer2;
|
|
#endif
|
|
|
|
#ifndef __IMFDXGIBuffer_FWD_DEFINED__
|
|
#define __IMFDXGIBuffer_FWD_DEFINED__
|
|
typedef interface IMFDXGIBuffer IMFDXGIBuffer;
|
|
#endif
|
|
|
|
#ifndef __IMFMediaType_FWD_DEFINED__
|
|
#define __IMFMediaType_FWD_DEFINED__
|
|
typedef interface IMFMediaType IMFMediaType;
|
|
#endif
|
|
|
|
#ifndef __IMFAudioMediaType_FWD_DEFINED__
|
|
#define __IMFAudioMediaType_FWD_DEFINED__
|
|
typedef interface IMFAudioMediaType IMFAudioMediaType;
|
|
#endif
|
|
|
|
#ifndef __IMFVideoMediaType_FWD_DEFINED__
|
|
#define __IMFVideoMediaType_FWD_DEFINED__
|
|
typedef interface IMFVideoMediaType IMFVideoMediaType;
|
|
#endif
|
|
|
|
#ifndef __IMFAsyncResult_FWD_DEFINED__
|
|
#define __IMFAsyncResult_FWD_DEFINED__
|
|
typedef interface IMFAsyncResult IMFAsyncResult;
|
|
#endif
|
|
|
|
#ifndef __IMFAsyncCallback_FWD_DEFINED__
|
|
#define __IMFAsyncCallback_FWD_DEFINED__
|
|
typedef interface IMFAsyncCallback IMFAsyncCallback;
|
|
#endif
|
|
|
|
#ifndef __IMFAsyncCallbackLogging_FWD_DEFINED__
|
|
#define __IMFAsyncCallbackLogging_FWD_DEFINED__
|
|
typedef interface IMFAsyncCallbackLogging IMFAsyncCallbackLogging;
|
|
#endif
|
|
|
|
#ifndef __IMFMediaEvent_FWD_DEFINED__
|
|
#define __IMFMediaEvent_FWD_DEFINED__
|
|
typedef interface IMFMediaEvent IMFMediaEvent;
|
|
#endif
|
|
|
|
#ifndef __IMFMediaEventGenerator_FWD_DEFINED__
|
|
#define __IMFMediaEventGenerator_FWD_DEFINED__
|
|
typedef interface IMFMediaEventGenerator IMFMediaEventGenerator;
|
|
#endif
|
|
|
|
#ifndef __IMFRemoteAsyncCallback_FWD_DEFINED__
|
|
#define __IMFRemoteAsyncCallback_FWD_DEFINED__
|
|
typedef interface IMFRemoteAsyncCallback IMFRemoteAsyncCallback;
|
|
#endif
|
|
|
|
#ifndef __IMFByteStream_FWD_DEFINED__
|
|
#define __IMFByteStream_FWD_DEFINED__
|
|
typedef interface IMFByteStream IMFByteStream;
|
|
#endif
|
|
|
|
#ifndef __IMFByteStreamProxyClassFactory_FWD_DEFINED__
|
|
#define __IMFByteStreamProxyClassFactory_FWD_DEFINED__
|
|
typedef interface IMFByteStreamProxyClassFactory IMFByteStreamProxyClassFactory;
|
|
#endif
|
|
|
|
#ifndef __IMFSampleOutputStream_FWD_DEFINED__
|
|
#define __IMFSampleOutputStream_FWD_DEFINED__
|
|
typedef interface IMFSampleOutputStream IMFSampleOutputStream;
|
|
#endif
|
|
|
|
#ifndef __IMFCollection_FWD_DEFINED__
|
|
#define __IMFCollection_FWD_DEFINED__
|
|
typedef interface IMFCollection IMFCollection;
|
|
#endif
|
|
|
|
#ifndef __IMFMediaEventQueue_FWD_DEFINED__
|
|
#define __IMFMediaEventQueue_FWD_DEFINED__
|
|
typedef interface IMFMediaEventQueue IMFMediaEventQueue;
|
|
#endif
|
|
|
|
#ifndef __IMFActivate_FWD_DEFINED__
|
|
#define __IMFActivate_FWD_DEFINED__
|
|
typedef interface IMFActivate IMFActivate;
|
|
#endif
|
|
|
|
#ifndef __IMFPluginControl_FWD_DEFINED__
|
|
#define __IMFPluginControl_FWD_DEFINED__
|
|
typedef interface IMFPluginControl IMFPluginControl;
|
|
#endif
|
|
|
|
#ifndef __IMFPluginControl2_FWD_DEFINED__
|
|
#define __IMFPluginControl2_FWD_DEFINED__
|
|
typedef interface IMFPluginControl2 IMFPluginControl2;
|
|
#endif
|
|
|
|
#ifndef __IMFDXGIDeviceManager_FWD_DEFINED__
|
|
#define __IMFDXGIDeviceManager_FWD_DEFINED__
|
|
typedef interface IMFDXGIDeviceManager IMFDXGIDeviceManager;
|
|
#endif
|
|
|
|
/* Headers for imported files */
|
|
|
|
#include <unknwn.h>
|
|
#include <propsys.h>
|
|
#include <mediaobj.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/**
|
|
* This file is part of the mingw-w64 runtime package.
|
|
* No warranty is given; refer to the file DISCLAIMER within this package.
|
|
*/
|
|
|
|
#include <winapifamily.h>
|
|
|
|
|
|
typedef ULONGLONG QWORD;
|
|
|
|
#include <mmreg.h>
|
|
#if 0
|
|
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 struct __WIDL_mfobjects_generated_name_00000013 {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wBitsPerSample;
|
|
WORD cbSize;
|
|
WORD wValidBitsPerSample;
|
|
DWORD dwChannelMask;
|
|
GUID SubFormat;
|
|
} WAVEFORMATEXTENSIBLE;
|
|
typedef struct __WIDL_mfobjects_generated_name_00000013 *PWAVEFORMATEXTENSIBLE;
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
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;
|
|
|
|
/*****************************************************************************
|
|
* IMFAttributes interface
|
|
*/
|
|
#ifndef __IMFAttributes_INTERFACE_DEFINED__
|
|
#define __IMFAttributes_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFAttributes, 0x2cd2d921, 0xc447, 0x44a7, 0xa1,0x3c, 0x4a,0xda,0xbf,0xc2,0x47,0xe3);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("2cd2d921-c447-44a7-a13c-4adabfc247e3")
|
|
IMFAttributes : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetItem(
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetItemType(
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CompareItem(
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Compare(
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUINT32(
|
|
REFGUID guidKey,
|
|
UINT32 *punValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUINT64(
|
|
REFGUID guidKey,
|
|
UINT64 *punValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDouble(
|
|
REFGUID guidKey,
|
|
double *pfValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetGUID(
|
|
REFGUID guidKey,
|
|
GUID *pguidValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStringLength(
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetString(
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAllocatedString(
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBlobSize(
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBlob(
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetAllocatedBlob(
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUnknown(
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
LPVOID *ppv) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetItem(
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DeleteItem(
|
|
REFGUID guidKey) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DeleteAllItems(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetUINT32(
|
|
REFGUID guidKey,
|
|
UINT32 unValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetUINT64(
|
|
REFGUID guidKey,
|
|
UINT64 unValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetDouble(
|
|
REFGUID guidKey,
|
|
double fValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetGUID(
|
|
REFGUID guidKey,
|
|
REFGUID guidValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetString(
|
|
REFGUID guidKey,
|
|
LPCWSTR wszValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetBlob(
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetUnknown(
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE LockStore(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE UnlockStore(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCount(
|
|
UINT32 *pcItems) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetItemByIndex(
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CopyAllItems(
|
|
IMFAttributes *pDest) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFAttributes, 0x2cd2d921, 0xc447, 0x44a7, 0xa1,0x3c, 0x4a,0xda,0xbf,0xc2,0x47,0xe3)
|
|
#endif
|
|
#else
|
|
typedef struct IMFAttributesVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFAttributes* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFAttributes* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFAttributes* This);
|
|
|
|
/*** IMFAttributes methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetItem)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemType)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CompareItem)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Compare)(
|
|
IMFAttributes* This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT32)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT32 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT64)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT64 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDouble)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
double *pfValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetGUID)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
GUID *pguidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStringLength)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetString)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedString)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlobSize)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlob)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedBlob)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUnknown)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
LPVOID *ppv);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetItem)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *DeleteItem)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *DeleteAllItems)(
|
|
IMFAttributes* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUINT32)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUINT64)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetDouble)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetGUID)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
REFGUID guidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetString)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
LPCWSTR wszValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBlob)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUnknown)(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *LockStore)(
|
|
IMFAttributes* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *UnlockStore)(
|
|
IMFAttributes* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCount)(
|
|
IMFAttributes* This,
|
|
UINT32 *pcItems);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemByIndex)(
|
|
IMFAttributes* This,
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CopyAllItems)(
|
|
IMFAttributes* This,
|
|
IMFAttributes *pDest);
|
|
|
|
END_INTERFACE
|
|
} IMFAttributesVtbl;
|
|
interface IMFAttributes {
|
|
CONST_VTBL IMFAttributesVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAttributes methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFAttributes_QueryInterface(IMFAttributes* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFAttributes_AddRef(IMFAttributes* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFAttributes_Release(IMFAttributes* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAttributes methods ***/
|
|
static FORCEINLINE HRESULT IMFAttributes_GetItem(IMFAttributes* This,REFGUID guidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItem(This,guidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetItemType(IMFAttributes* This,REFGUID guidKey,MF_ATTRIBUTE_TYPE *pType) {
|
|
return This->lpVtbl->GetItemType(This,guidKey,pType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_CompareItem(IMFAttributes* This,REFGUID guidKey,REFPROPVARIANT Value,WINBOOL *pbResult) {
|
|
return This->lpVtbl->CompareItem(This,guidKey,Value,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_Compare(IMFAttributes* This,IMFAttributes *pTheirs,MF_ATTRIBUTES_MATCH_TYPE MatchType,WINBOOL *pbResult) {
|
|
return This->lpVtbl->Compare(This,pTheirs,MatchType,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetUINT32(IMFAttributes* This,REFGUID guidKey,UINT32 *punValue) {
|
|
return This->lpVtbl->GetUINT32(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetUINT64(IMFAttributes* This,REFGUID guidKey,UINT64 *punValue) {
|
|
return This->lpVtbl->GetUINT64(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetDouble(IMFAttributes* This,REFGUID guidKey,double *pfValue) {
|
|
return This->lpVtbl->GetDouble(This,guidKey,pfValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetGUID(IMFAttributes* This,REFGUID guidKey,GUID *pguidValue) {
|
|
return This->lpVtbl->GetGUID(This,guidKey,pguidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetStringLength(IMFAttributes* This,REFGUID guidKey,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetStringLength(This,guidKey,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetString(IMFAttributes* This,REFGUID guidKey,LPWSTR pwszValue,UINT32 cchBufSize,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetString(This,guidKey,pwszValue,cchBufSize,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetAllocatedString(IMFAttributes* This,REFGUID guidKey,LPWSTR *ppwszValue,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetAllocatedString(This,guidKey,ppwszValue,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetBlobSize(IMFAttributes* This,REFGUID guidKey,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlobSize(This,guidKey,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetBlob(IMFAttributes* This,REFGUID guidKey,UINT8 *pBuf,UINT32 cbBufSize,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetAllocatedBlob(IMFAttributes* This,REFGUID guidKey,UINT8 **ppBuf,UINT32 *pcbSize) {
|
|
return This->lpVtbl->GetAllocatedBlob(This,guidKey,ppBuf,pcbSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetUnknown(IMFAttributes* This,REFGUID guidKey,REFIID riid,LPVOID *ppv) {
|
|
return This->lpVtbl->GetUnknown(This,guidKey,riid,ppv);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_SetItem(IMFAttributes* This,REFGUID guidKey,REFPROPVARIANT Value) {
|
|
return This->lpVtbl->SetItem(This,guidKey,Value);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_DeleteItem(IMFAttributes* This,REFGUID guidKey) {
|
|
return This->lpVtbl->DeleteItem(This,guidKey);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_DeleteAllItems(IMFAttributes* This) {
|
|
return This->lpVtbl->DeleteAllItems(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_SetUINT32(IMFAttributes* This,REFGUID guidKey,UINT32 unValue) {
|
|
return This->lpVtbl->SetUINT32(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_SetUINT64(IMFAttributes* This,REFGUID guidKey,UINT64 unValue) {
|
|
return This->lpVtbl->SetUINT64(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_SetDouble(IMFAttributes* This,REFGUID guidKey,double fValue) {
|
|
return This->lpVtbl->SetDouble(This,guidKey,fValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_SetGUID(IMFAttributes* This,REFGUID guidKey,REFGUID guidValue) {
|
|
return This->lpVtbl->SetGUID(This,guidKey,guidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_SetString(IMFAttributes* This,REFGUID guidKey,LPCWSTR wszValue) {
|
|
return This->lpVtbl->SetString(This,guidKey,wszValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_SetBlob(IMFAttributes* This,REFGUID guidKey,const UINT8 *pBuf,UINT32 cbBufSize) {
|
|
return This->lpVtbl->SetBlob(This,guidKey,pBuf,cbBufSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_SetUnknown(IMFAttributes* This,REFGUID guidKey,IUnknown *pUnknown) {
|
|
return This->lpVtbl->SetUnknown(This,guidKey,pUnknown);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_LockStore(IMFAttributes* This) {
|
|
return This->lpVtbl->LockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_UnlockStore(IMFAttributes* This) {
|
|
return This->lpVtbl->UnlockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetCount(IMFAttributes* This,UINT32 *pcItems) {
|
|
return This->lpVtbl->GetCount(This,pcItems);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_GetItemByIndex(IMFAttributes* This,UINT32 unIndex,GUID *pguidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItemByIndex(This,unIndex,pguidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAttributes_CopyAllItems(IMFAttributes* This,IMFAttributes *pDest) {
|
|
return This->lpVtbl->CopyAllItems(This,pDest);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetItem_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue);
|
|
void __RPC_STUB IMFAttributes_GetItem_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetItemType_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType);
|
|
void __RPC_STUB IMFAttributes_GetItemType_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_CompareItem_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult);
|
|
void __RPC_STUB IMFAttributes_CompareItem_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_Compare_Proxy(
|
|
IMFAttributes* This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult);
|
|
void __RPC_STUB IMFAttributes_Compare_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetUINT32_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT32 *punValue);
|
|
void __RPC_STUB IMFAttributes_GetUINT32_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetUINT64_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT64 *punValue);
|
|
void __RPC_STUB IMFAttributes_GetUINT64_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetDouble_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
double *pfValue);
|
|
void __RPC_STUB IMFAttributes_GetDouble_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetGUID_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
GUID *pguidValue);
|
|
void __RPC_STUB IMFAttributes_GetGUID_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetStringLength_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength);
|
|
void __RPC_STUB IMFAttributes_GetStringLength_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetString_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength);
|
|
void __RPC_STUB IMFAttributes_GetString_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetAllocatedString_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength);
|
|
void __RPC_STUB IMFAttributes_GetAllocatedString_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetBlobSize_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize);
|
|
void __RPC_STUB IMFAttributes_GetBlobSize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetBlob_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize);
|
|
void __RPC_STUB IMFAttributes_GetBlob_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetAllocatedBlob_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize);
|
|
void __RPC_STUB IMFAttributes_GetAllocatedBlob_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetUnknown_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
LPVOID *ppv);
|
|
void __RPC_STUB IMFAttributes_GetUnknown_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_SetItem_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value);
|
|
void __RPC_STUB IMFAttributes_SetItem_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_DeleteItem_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey);
|
|
void __RPC_STUB IMFAttributes_DeleteItem_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_DeleteAllItems_Proxy(
|
|
IMFAttributes* This);
|
|
void __RPC_STUB IMFAttributes_DeleteAllItems_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_SetUINT32_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT32 unValue);
|
|
void __RPC_STUB IMFAttributes_SetUINT32_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_SetUINT64_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
UINT64 unValue);
|
|
void __RPC_STUB IMFAttributes_SetUINT64_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_SetDouble_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
double fValue);
|
|
void __RPC_STUB IMFAttributes_SetDouble_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_SetGUID_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
REFGUID guidValue);
|
|
void __RPC_STUB IMFAttributes_SetGUID_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_SetString_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
LPCWSTR wszValue);
|
|
void __RPC_STUB IMFAttributes_SetString_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_SetBlob_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
void __RPC_STUB IMFAttributes_SetBlob_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_SetUnknown_Proxy(
|
|
IMFAttributes* This,
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown);
|
|
void __RPC_STUB IMFAttributes_SetUnknown_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_LockStore_Proxy(
|
|
IMFAttributes* This);
|
|
void __RPC_STUB IMFAttributes_LockStore_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_UnlockStore_Proxy(
|
|
IMFAttributes* This);
|
|
void __RPC_STUB IMFAttributes_UnlockStore_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetCount_Proxy(
|
|
IMFAttributes* This,
|
|
UINT32 *pcItems);
|
|
void __RPC_STUB IMFAttributes_GetCount_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_GetItemByIndex_Proxy(
|
|
IMFAttributes* This,
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue);
|
|
void __RPC_STUB IMFAttributes_GetItemByIndex_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAttributes_CopyAllItems_Proxy(
|
|
IMFAttributes* This,
|
|
IMFAttributes *pDest);
|
|
void __RPC_STUB IMFAttributes_CopyAllItems_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFAttributes_INTERFACE_DEFINED__ */
|
|
|
|
|
|
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);
|
|
|
|
/*****************************************************************************
|
|
* IMFMediaBuffer interface
|
|
*/
|
|
#ifndef __IMFMediaBuffer_INTERFACE_DEFINED__
|
|
#define __IMFMediaBuffer_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFMediaBuffer, 0x045fa593, 0x8799, 0x42b8, 0xbc,0x8d, 0x89,0x68,0xc6,0x45,0x35,0x07);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("045fa593-8799-42b8-bc8d-8968c6453507")
|
|
IMFMediaBuffer : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE Lock(
|
|
BYTE **ppbBuffer,
|
|
DWORD *pcbMaxLength,
|
|
DWORD *pcbCurrentLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Unlock(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCurrentLength(
|
|
DWORD *pcbCurrentLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCurrentLength(
|
|
DWORD cbCurrentLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetMaxLength(
|
|
DWORD *pcbMaxLength) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFMediaBuffer, 0x045fa593, 0x8799, 0x42b8, 0xbc,0x8d, 0x89,0x68,0xc6,0x45,0x35,0x07)
|
|
#endif
|
|
#else
|
|
typedef struct IMFMediaBufferVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFMediaBuffer* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFMediaBuffer* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFMediaBuffer* This);
|
|
|
|
/*** IMFMediaBuffer methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *Lock)(
|
|
IMFMediaBuffer* This,
|
|
BYTE **ppbBuffer,
|
|
DWORD *pcbMaxLength,
|
|
DWORD *pcbCurrentLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Unlock)(
|
|
IMFMediaBuffer* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCurrentLength)(
|
|
IMFMediaBuffer* This,
|
|
DWORD *pcbCurrentLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetCurrentLength)(
|
|
IMFMediaBuffer* This,
|
|
DWORD cbCurrentLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetMaxLength)(
|
|
IMFMediaBuffer* This,
|
|
DWORD *pcbMaxLength);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaBufferVtbl;
|
|
interface IMFMediaBuffer {
|
|
CONST_VTBL IMFMediaBufferVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFMediaBuffer methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaBuffer_QueryInterface(IMFMediaBuffer* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaBuffer_AddRef(IMFMediaBuffer* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaBuffer_Release(IMFMediaBuffer* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFMediaBuffer methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaBuffer_Lock(IMFMediaBuffer* This,BYTE **ppbBuffer,DWORD *pcbMaxLength,DWORD *pcbCurrentLength) {
|
|
return This->lpVtbl->Lock(This,ppbBuffer,pcbMaxLength,pcbCurrentLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaBuffer_Unlock(IMFMediaBuffer* This) {
|
|
return This->lpVtbl->Unlock(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaBuffer_GetCurrentLength(IMFMediaBuffer* This,DWORD *pcbCurrentLength) {
|
|
return This->lpVtbl->GetCurrentLength(This,pcbCurrentLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaBuffer_SetCurrentLength(IMFMediaBuffer* This,DWORD cbCurrentLength) {
|
|
return This->lpVtbl->SetCurrentLength(This,cbCurrentLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaBuffer_GetMaxLength(IMFMediaBuffer* This,DWORD *pcbMaxLength) {
|
|
return This->lpVtbl->GetMaxLength(This,pcbMaxLength);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFMediaBuffer_Lock_Proxy(
|
|
IMFMediaBuffer* This,
|
|
BYTE **ppbBuffer,
|
|
DWORD *pcbMaxLength,
|
|
DWORD *pcbCurrentLength);
|
|
void __RPC_STUB IMFMediaBuffer_Lock_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaBuffer_Unlock_Proxy(
|
|
IMFMediaBuffer* This);
|
|
void __RPC_STUB IMFMediaBuffer_Unlock_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaBuffer_GetCurrentLength_Proxy(
|
|
IMFMediaBuffer* This,
|
|
DWORD *pcbCurrentLength);
|
|
void __RPC_STUB IMFMediaBuffer_GetCurrentLength_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaBuffer_SetCurrentLength_Proxy(
|
|
IMFMediaBuffer* This,
|
|
DWORD cbCurrentLength);
|
|
void __RPC_STUB IMFMediaBuffer_SetCurrentLength_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaBuffer_GetMaxLength_Proxy(
|
|
IMFMediaBuffer* This,
|
|
DWORD *pcbMaxLength);
|
|
void __RPC_STUB IMFMediaBuffer_GetMaxLength_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFMediaBuffer_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMFSample interface
|
|
*/
|
|
#ifndef __IMFSample_INTERFACE_DEFINED__
|
|
#define __IMFSample_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFSample, 0xc40a00f2, 0xb93a, 0x4d80, 0xae,0x8c, 0x5a,0x1c,0x63,0x4f,0x58,0xe4);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("c40a00f2-b93a-4d80-ae8c-5a1c634f58e4")
|
|
IMFSample : public IMFAttributes
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetSampleFlags(
|
|
DWORD *pdwSampleFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetSampleFlags(
|
|
DWORD dwSampleFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetSampleTime(
|
|
LONGLONG *phnsSampleTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetSampleTime(
|
|
LONGLONG hnsSampleTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetSampleDuration(
|
|
LONGLONG *phnsSampleDuration) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetSampleDuration(
|
|
LONGLONG hnsSampleDuration) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferCount(
|
|
DWORD *pdwBufferCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetBufferByIndex(
|
|
DWORD dwIndex,
|
|
IMFMediaBuffer **ppBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ConvertToContiguousBuffer(
|
|
IMFMediaBuffer **ppBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE AddBuffer(
|
|
IMFMediaBuffer *pBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RemoveBufferByIndex(
|
|
DWORD dwIndex) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RemoveAllBuffers(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetTotalLength(
|
|
DWORD *pcbTotalLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CopyToBuffer(
|
|
IMFMediaBuffer *pBuffer) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFSample, 0xc40a00f2, 0xb93a, 0x4d80, 0xae,0x8c, 0x5a,0x1c,0x63,0x4f,0x58,0xe4)
|
|
#endif
|
|
#else
|
|
typedef struct IMFSampleVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFSample* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFSample* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFSample* This);
|
|
|
|
/*** IMFAttributes methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetItem)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemType)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CompareItem)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Compare)(
|
|
IMFSample* This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT32)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
UINT32 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT64)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
UINT64 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDouble)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
double *pfValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetGUID)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
GUID *pguidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStringLength)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetString)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedString)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlobSize)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlob)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedBlob)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUnknown)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
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,
|
|
LPCWSTR wszValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBlob)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUnknown)(
|
|
IMFSample* This,
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *LockStore)(
|
|
IMFSample* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *UnlockStore)(
|
|
IMFSample* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCount)(
|
|
IMFSample* This,
|
|
UINT32 *pcItems);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemByIndex)(
|
|
IMFSample* This,
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CopyAllItems)(
|
|
IMFSample* This,
|
|
IMFAttributes *pDest);
|
|
|
|
/*** IMFSample methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetSampleFlags)(
|
|
IMFSample* This,
|
|
DWORD *pdwSampleFlags);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetSampleFlags)(
|
|
IMFSample* This,
|
|
DWORD dwSampleFlags);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetSampleTime)(
|
|
IMFSample* This,
|
|
LONGLONG *phnsSampleTime);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetSampleTime)(
|
|
IMFSample* This,
|
|
LONGLONG hnsSampleTime);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetSampleDuration)(
|
|
IMFSample* This,
|
|
LONGLONG *phnsSampleDuration);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetSampleDuration)(
|
|
IMFSample* This,
|
|
LONGLONG hnsSampleDuration);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBufferCount)(
|
|
IMFSample* This,
|
|
DWORD *pdwBufferCount);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBufferByIndex)(
|
|
IMFSample* This,
|
|
DWORD dwIndex,
|
|
IMFMediaBuffer **ppBuffer);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ConvertToContiguousBuffer)(
|
|
IMFSample* This,
|
|
IMFMediaBuffer **ppBuffer);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *AddBuffer)(
|
|
IMFSample* This,
|
|
IMFMediaBuffer *pBuffer);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *RemoveBufferByIndex)(
|
|
IMFSample* This,
|
|
DWORD dwIndex);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *RemoveAllBuffers)(
|
|
IMFSample* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetTotalLength)(
|
|
IMFSample* This,
|
|
DWORD *pcbTotalLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CopyToBuffer)(
|
|
IMFSample* This,
|
|
IMFMediaBuffer *pBuffer);
|
|
|
|
END_INTERFACE
|
|
} IMFSampleVtbl;
|
|
interface IMFSample {
|
|
CONST_VTBL IMFSampleVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAttributes methods ***/
|
|
#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)
|
|
/*** IMFSample methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFSample_QueryInterface(IMFSample* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFSample_AddRef(IMFSample* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFSample_Release(IMFSample* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAttributes methods ***/
|
|
static FORCEINLINE HRESULT IMFSample_GetItem(IMFSample* This,REFGUID guidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItem(This,guidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetItemType(IMFSample* This,REFGUID guidKey,MF_ATTRIBUTE_TYPE *pType) {
|
|
return This->lpVtbl->GetItemType(This,guidKey,pType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_CompareItem(IMFSample* This,REFGUID guidKey,REFPROPVARIANT Value,WINBOOL *pbResult) {
|
|
return This->lpVtbl->CompareItem(This,guidKey,Value,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_Compare(IMFSample* This,IMFAttributes *pTheirs,MF_ATTRIBUTES_MATCH_TYPE MatchType,WINBOOL *pbResult) {
|
|
return This->lpVtbl->Compare(This,pTheirs,MatchType,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetUINT32(IMFSample* This,REFGUID guidKey,UINT32 *punValue) {
|
|
return This->lpVtbl->GetUINT32(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetUINT64(IMFSample* This,REFGUID guidKey,UINT64 *punValue) {
|
|
return This->lpVtbl->GetUINT64(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetDouble(IMFSample* This,REFGUID guidKey,double *pfValue) {
|
|
return This->lpVtbl->GetDouble(This,guidKey,pfValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetGUID(IMFSample* This,REFGUID guidKey,GUID *pguidValue) {
|
|
return This->lpVtbl->GetGUID(This,guidKey,pguidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetStringLength(IMFSample* This,REFGUID guidKey,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetStringLength(This,guidKey,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetString(IMFSample* This,REFGUID guidKey,LPWSTR pwszValue,UINT32 cchBufSize,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetString(This,guidKey,pwszValue,cchBufSize,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetAllocatedString(IMFSample* This,REFGUID guidKey,LPWSTR *ppwszValue,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetAllocatedString(This,guidKey,ppwszValue,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetBlobSize(IMFSample* This,REFGUID guidKey,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlobSize(This,guidKey,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetBlob(IMFSample* This,REFGUID guidKey,UINT8 *pBuf,UINT32 cbBufSize,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetAllocatedBlob(IMFSample* This,REFGUID guidKey,UINT8 **ppBuf,UINT32 *pcbSize) {
|
|
return This->lpVtbl->GetAllocatedBlob(This,guidKey,ppBuf,pcbSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetUnknown(IMFSample* This,REFGUID guidKey,REFIID riid,LPVOID *ppv) {
|
|
return This->lpVtbl->GetUnknown(This,guidKey,riid,ppv);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetItem(IMFSample* This,REFGUID guidKey,REFPROPVARIANT Value) {
|
|
return This->lpVtbl->SetItem(This,guidKey,Value);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_DeleteItem(IMFSample* This,REFGUID guidKey) {
|
|
return This->lpVtbl->DeleteItem(This,guidKey);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_DeleteAllItems(IMFSample* This) {
|
|
return This->lpVtbl->DeleteAllItems(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetUINT32(IMFSample* This,REFGUID guidKey,UINT32 unValue) {
|
|
return This->lpVtbl->SetUINT32(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetUINT64(IMFSample* This,REFGUID guidKey,UINT64 unValue) {
|
|
return This->lpVtbl->SetUINT64(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetDouble(IMFSample* This,REFGUID guidKey,double fValue) {
|
|
return This->lpVtbl->SetDouble(This,guidKey,fValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetGUID(IMFSample* This,REFGUID guidKey,REFGUID guidValue) {
|
|
return This->lpVtbl->SetGUID(This,guidKey,guidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetString(IMFSample* This,REFGUID guidKey,LPCWSTR wszValue) {
|
|
return This->lpVtbl->SetString(This,guidKey,wszValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetBlob(IMFSample* This,REFGUID guidKey,const UINT8 *pBuf,UINT32 cbBufSize) {
|
|
return This->lpVtbl->SetBlob(This,guidKey,pBuf,cbBufSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetUnknown(IMFSample* This,REFGUID guidKey,IUnknown *pUnknown) {
|
|
return This->lpVtbl->SetUnknown(This,guidKey,pUnknown);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_LockStore(IMFSample* This) {
|
|
return This->lpVtbl->LockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_UnlockStore(IMFSample* This) {
|
|
return This->lpVtbl->UnlockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetCount(IMFSample* This,UINT32 *pcItems) {
|
|
return This->lpVtbl->GetCount(This,pcItems);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetItemByIndex(IMFSample* This,UINT32 unIndex,GUID *pguidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItemByIndex(This,unIndex,pguidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_CopyAllItems(IMFSample* This,IMFAttributes *pDest) {
|
|
return This->lpVtbl->CopyAllItems(This,pDest);
|
|
}
|
|
/*** IMFSample methods ***/
|
|
static FORCEINLINE HRESULT IMFSample_GetSampleFlags(IMFSample* This,DWORD *pdwSampleFlags) {
|
|
return This->lpVtbl->GetSampleFlags(This,pdwSampleFlags);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetSampleFlags(IMFSample* This,DWORD dwSampleFlags) {
|
|
return This->lpVtbl->SetSampleFlags(This,dwSampleFlags);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetSampleTime(IMFSample* This,LONGLONG *phnsSampleTime) {
|
|
return This->lpVtbl->GetSampleTime(This,phnsSampleTime);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetSampleTime(IMFSample* This,LONGLONG hnsSampleTime) {
|
|
return This->lpVtbl->SetSampleTime(This,hnsSampleTime);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetSampleDuration(IMFSample* This,LONGLONG *phnsSampleDuration) {
|
|
return This->lpVtbl->GetSampleDuration(This,phnsSampleDuration);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_SetSampleDuration(IMFSample* This,LONGLONG hnsSampleDuration) {
|
|
return This->lpVtbl->SetSampleDuration(This,hnsSampleDuration);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetBufferCount(IMFSample* This,DWORD *pdwBufferCount) {
|
|
return This->lpVtbl->GetBufferCount(This,pdwBufferCount);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetBufferByIndex(IMFSample* This,DWORD dwIndex,IMFMediaBuffer **ppBuffer) {
|
|
return This->lpVtbl->GetBufferByIndex(This,dwIndex,ppBuffer);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_ConvertToContiguousBuffer(IMFSample* This,IMFMediaBuffer **ppBuffer) {
|
|
return This->lpVtbl->ConvertToContiguousBuffer(This,ppBuffer);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_AddBuffer(IMFSample* This,IMFMediaBuffer *pBuffer) {
|
|
return This->lpVtbl->AddBuffer(This,pBuffer);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_RemoveBufferByIndex(IMFSample* This,DWORD dwIndex) {
|
|
return This->lpVtbl->RemoveBufferByIndex(This,dwIndex);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_RemoveAllBuffers(IMFSample* This) {
|
|
return This->lpVtbl->RemoveAllBuffers(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_GetTotalLength(IMFSample* This,DWORD *pcbTotalLength) {
|
|
return This->lpVtbl->GetTotalLength(This,pcbTotalLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSample_CopyToBuffer(IMFSample* This,IMFMediaBuffer *pBuffer) {
|
|
return This->lpVtbl->CopyToBuffer(This,pBuffer);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFSample_GetSampleFlags_Proxy(
|
|
IMFSample* This,
|
|
DWORD *pdwSampleFlags);
|
|
void __RPC_STUB IMFSample_GetSampleFlags_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_SetSampleFlags_Proxy(
|
|
IMFSample* This,
|
|
DWORD dwSampleFlags);
|
|
void __RPC_STUB IMFSample_SetSampleFlags_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_GetSampleTime_Proxy(
|
|
IMFSample* This,
|
|
LONGLONG *phnsSampleTime);
|
|
void __RPC_STUB IMFSample_GetSampleTime_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_SetSampleTime_Proxy(
|
|
IMFSample* This,
|
|
LONGLONG hnsSampleTime);
|
|
void __RPC_STUB IMFSample_SetSampleTime_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_GetSampleDuration_Proxy(
|
|
IMFSample* This,
|
|
LONGLONG *phnsSampleDuration);
|
|
void __RPC_STUB IMFSample_GetSampleDuration_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_SetSampleDuration_Proxy(
|
|
IMFSample* This,
|
|
LONGLONG hnsSampleDuration);
|
|
void __RPC_STUB IMFSample_SetSampleDuration_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_GetBufferCount_Proxy(
|
|
IMFSample* This,
|
|
DWORD *pdwBufferCount);
|
|
void __RPC_STUB IMFSample_GetBufferCount_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_GetBufferByIndex_Proxy(
|
|
IMFSample* This,
|
|
DWORD dwIndex,
|
|
IMFMediaBuffer **ppBuffer);
|
|
void __RPC_STUB IMFSample_GetBufferByIndex_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_ConvertToContiguousBuffer_Proxy(
|
|
IMFSample* This,
|
|
IMFMediaBuffer **ppBuffer);
|
|
void __RPC_STUB IMFSample_ConvertToContiguousBuffer_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_AddBuffer_Proxy(
|
|
IMFSample* This,
|
|
IMFMediaBuffer *pBuffer);
|
|
void __RPC_STUB IMFSample_AddBuffer_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_RemoveBufferByIndex_Proxy(
|
|
IMFSample* This,
|
|
DWORD dwIndex);
|
|
void __RPC_STUB IMFSample_RemoveBufferByIndex_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_RemoveAllBuffers_Proxy(
|
|
IMFSample* This);
|
|
void __RPC_STUB IMFSample_RemoveAllBuffers_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_GetTotalLength_Proxy(
|
|
IMFSample* This,
|
|
DWORD *pcbTotalLength);
|
|
void __RPC_STUB IMFSample_GetTotalLength_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSample_CopyToBuffer_Proxy(
|
|
IMFSample* This,
|
|
IMFMediaBuffer *pBuffer);
|
|
void __RPC_STUB IMFSample_CopyToBuffer_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFSample_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMF2DBuffer interface
|
|
*/
|
|
#ifndef __IMF2DBuffer_INTERFACE_DEFINED__
|
|
#define __IMF2DBuffer_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMF2DBuffer, 0x7dc9d5f9, 0x9ed9, 0x44ec, 0x9b,0xbf, 0x06,0x00,0xbb,0x58,0x9f,0xbb);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("7dc9d5f9-9ed9-44ec-9bbf-0600bb589fbb")
|
|
IMF2DBuffer : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE Lock2D(
|
|
BYTE **ppbScanline0,
|
|
LONG *plPitch) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Unlock2D(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetScanline0AndPitch(
|
|
BYTE **pbScanline0,
|
|
LONG *plPitch) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsContiguousFormat(
|
|
WINBOOL *pfIsContiguous) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetContiguousLength(
|
|
DWORD *pcbLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ContiguousCopyTo(
|
|
BYTE *pbDestBuffer,
|
|
DWORD cbDestBuffer) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ContiguousCopyFrom(
|
|
const BYTE *pbSrcBuffer,
|
|
DWORD cbSrcBuffer) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMF2DBuffer, 0x7dc9d5f9, 0x9ed9, 0x44ec, 0x9b,0xbf, 0x06,0x00,0xbb,0x58,0x9f,0xbb)
|
|
#endif
|
|
#else
|
|
typedef struct IMF2DBufferVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMF2DBuffer* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMF2DBuffer* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMF2DBuffer* This);
|
|
|
|
/*** IMF2DBuffer methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *Lock2D)(
|
|
IMF2DBuffer* This,
|
|
BYTE **ppbScanline0,
|
|
LONG *plPitch);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Unlock2D)(
|
|
IMF2DBuffer* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetScanline0AndPitch)(
|
|
IMF2DBuffer* This,
|
|
BYTE **pbScanline0,
|
|
LONG *plPitch);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsContiguousFormat)(
|
|
IMF2DBuffer* This,
|
|
WINBOOL *pfIsContiguous);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetContiguousLength)(
|
|
IMF2DBuffer* This,
|
|
DWORD *pcbLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ContiguousCopyTo)(
|
|
IMF2DBuffer* This,
|
|
BYTE *pbDestBuffer,
|
|
DWORD cbDestBuffer);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ContiguousCopyFrom)(
|
|
IMF2DBuffer* This,
|
|
const BYTE *pbSrcBuffer,
|
|
DWORD cbSrcBuffer);
|
|
|
|
END_INTERFACE
|
|
} IMF2DBufferVtbl;
|
|
interface IMF2DBuffer {
|
|
CONST_VTBL IMF2DBufferVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMF2DBuffer methods ***/
|
|
#define IMF2DBuffer_Lock2D(This,ppbScanline0,plPitch) (This)->lpVtbl->Lock2D(This,ppbScanline0,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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMF2DBuffer_QueryInterface(IMF2DBuffer* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMF2DBuffer_AddRef(IMF2DBuffer* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMF2DBuffer_Release(IMF2DBuffer* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMF2DBuffer methods ***/
|
|
static FORCEINLINE HRESULT IMF2DBuffer_Lock2D(IMF2DBuffer* This,BYTE **ppbScanline0,LONG *plPitch) {
|
|
return This->lpVtbl->Lock2D(This,ppbScanline0,plPitch);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer_Unlock2D(IMF2DBuffer* This) {
|
|
return This->lpVtbl->Unlock2D(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer_GetScanline0AndPitch(IMF2DBuffer* This,BYTE **pbScanline0,LONG *plPitch) {
|
|
return This->lpVtbl->GetScanline0AndPitch(This,pbScanline0,plPitch);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer_IsContiguousFormat(IMF2DBuffer* This,WINBOOL *pfIsContiguous) {
|
|
return This->lpVtbl->IsContiguousFormat(This,pfIsContiguous);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer_GetContiguousLength(IMF2DBuffer* This,DWORD *pcbLength) {
|
|
return This->lpVtbl->GetContiguousLength(This,pcbLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer_ContiguousCopyTo(IMF2DBuffer* This,BYTE *pbDestBuffer,DWORD cbDestBuffer) {
|
|
return This->lpVtbl->ContiguousCopyTo(This,pbDestBuffer,cbDestBuffer);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer_ContiguousCopyFrom(IMF2DBuffer* This,const BYTE *pbSrcBuffer,DWORD cbSrcBuffer) {
|
|
return This->lpVtbl->ContiguousCopyFrom(This,pbSrcBuffer,cbSrcBuffer);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer_Lock2D_Proxy(
|
|
IMF2DBuffer* This,
|
|
BYTE **ppbScanline0,
|
|
LONG *plPitch);
|
|
void __RPC_STUB IMF2DBuffer_Lock2D_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer_Unlock2D_Proxy(
|
|
IMF2DBuffer* This);
|
|
void __RPC_STUB IMF2DBuffer_Unlock2D_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer_GetScanline0AndPitch_Proxy(
|
|
IMF2DBuffer* This,
|
|
BYTE **pbScanline0,
|
|
LONG *plPitch);
|
|
void __RPC_STUB IMF2DBuffer_GetScanline0AndPitch_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer_IsContiguousFormat_Proxy(
|
|
IMF2DBuffer* This,
|
|
WINBOOL *pfIsContiguous);
|
|
void __RPC_STUB IMF2DBuffer_IsContiguousFormat_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer_GetContiguousLength_Proxy(
|
|
IMF2DBuffer* This,
|
|
DWORD *pcbLength);
|
|
void __RPC_STUB IMF2DBuffer_GetContiguousLength_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer_ContiguousCopyTo_Proxy(
|
|
IMF2DBuffer* This,
|
|
BYTE *pbDestBuffer,
|
|
DWORD cbDestBuffer);
|
|
void __RPC_STUB IMF2DBuffer_ContiguousCopyTo_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer_ContiguousCopyFrom_Proxy(
|
|
IMF2DBuffer* This,
|
|
const BYTE *pbSrcBuffer,
|
|
DWORD cbSrcBuffer);
|
|
void __RPC_STUB IMF2DBuffer_ContiguousCopyFrom_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMF2DBuffer_INTERFACE_DEFINED__ */
|
|
|
|
|
|
typedef enum _MF2DBuffer_LockFlags {
|
|
MF2DBuffer_LockFlags_LockTypeMask = (0x1 | 0x2) | 0x3,
|
|
MF2DBuffer_LockFlags_Read = 0x1,
|
|
MF2DBuffer_LockFlags_Write = 0x2,
|
|
MF2DBuffer_LockFlags_ReadWrite = 0x3,
|
|
MF2DBuffer_LockFlags_ForceDWORD = 0x7fffffff
|
|
} MF2DBuffer_LockFlags;
|
|
|
|
/*****************************************************************************
|
|
* IMF2DBuffer2 interface
|
|
*/
|
|
#ifndef __IMF2DBuffer2_INTERFACE_DEFINED__
|
|
#define __IMF2DBuffer2_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMF2DBuffer2, 0x33ae5ea6, 0x4316, 0x436f, 0x8d,0xdd, 0xd7,0x3d,0x22,0xf8,0x29,0xec);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("33ae5ea6-4316-436f-8ddd-d73d22f829ec")
|
|
IMF2DBuffer2 : public IMF2DBuffer
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE Lock2DSize(
|
|
MF2DBuffer_LockFlags lockFlags,
|
|
BYTE **ppbScanline0,
|
|
LONG *plPitch,
|
|
BYTE **ppbBufferStart,
|
|
DWORD *pcbBufferLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Copy2DTo(
|
|
IMF2DBuffer2 *pDestBuffer) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMF2DBuffer2, 0x33ae5ea6, 0x4316, 0x436f, 0x8d,0xdd, 0xd7,0x3d,0x22,0xf8,0x29,0xec)
|
|
#endif
|
|
#else
|
|
typedef struct IMF2DBuffer2Vtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMF2DBuffer2* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMF2DBuffer2* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMF2DBuffer2* This);
|
|
|
|
/*** IMF2DBuffer methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *Lock2D)(
|
|
IMF2DBuffer2* This,
|
|
BYTE **ppbScanline0,
|
|
LONG *plPitch);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Unlock2D)(
|
|
IMF2DBuffer2* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetScanline0AndPitch)(
|
|
IMF2DBuffer2* This,
|
|
BYTE **pbScanline0,
|
|
LONG *plPitch);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsContiguousFormat)(
|
|
IMF2DBuffer2* This,
|
|
WINBOOL *pfIsContiguous);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetContiguousLength)(
|
|
IMF2DBuffer2* This,
|
|
DWORD *pcbLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ContiguousCopyTo)(
|
|
IMF2DBuffer2* This,
|
|
BYTE *pbDestBuffer,
|
|
DWORD cbDestBuffer);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ContiguousCopyFrom)(
|
|
IMF2DBuffer2* This,
|
|
const BYTE *pbSrcBuffer,
|
|
DWORD cbSrcBuffer);
|
|
|
|
/*** IMF2DBuffer2 methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *Lock2DSize)(
|
|
IMF2DBuffer2* This,
|
|
MF2DBuffer_LockFlags lockFlags,
|
|
BYTE **ppbScanline0,
|
|
LONG *plPitch,
|
|
BYTE **ppbBufferStart,
|
|
DWORD *pcbBufferLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Copy2DTo)(
|
|
IMF2DBuffer2* This,
|
|
IMF2DBuffer2 *pDestBuffer);
|
|
|
|
END_INTERFACE
|
|
} IMF2DBuffer2Vtbl;
|
|
interface IMF2DBuffer2 {
|
|
CONST_VTBL IMF2DBuffer2Vtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#define IMF2DBuffer2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
|
#define IMF2DBuffer2_AddRef(This) (This)->lpVtbl->AddRef(This)
|
|
#define IMF2DBuffer2_Release(This) (This)->lpVtbl->Release(This)
|
|
/*** IMF2DBuffer methods ***/
|
|
#define IMF2DBuffer2_Lock2D(This,ppbScanline0,plPitch) (This)->lpVtbl->Lock2D(This,ppbScanline0,plPitch)
|
|
#define IMF2DBuffer2_Unlock2D(This) (This)->lpVtbl->Unlock2D(This)
|
|
#define IMF2DBuffer2_GetScanline0AndPitch(This,pbScanline0,plPitch) (This)->lpVtbl->GetScanline0AndPitch(This,pbScanline0,plPitch)
|
|
#define IMF2DBuffer2_IsContiguousFormat(This,pfIsContiguous) (This)->lpVtbl->IsContiguousFormat(This,pfIsContiguous)
|
|
#define IMF2DBuffer2_GetContiguousLength(This,pcbLength) (This)->lpVtbl->GetContiguousLength(This,pcbLength)
|
|
#define IMF2DBuffer2_ContiguousCopyTo(This,pbDestBuffer,cbDestBuffer) (This)->lpVtbl->ContiguousCopyTo(This,pbDestBuffer,cbDestBuffer)
|
|
#define IMF2DBuffer2_ContiguousCopyFrom(This,pbSrcBuffer,cbSrcBuffer) (This)->lpVtbl->ContiguousCopyFrom(This,pbSrcBuffer,cbSrcBuffer)
|
|
/*** IMF2DBuffer2 methods ***/
|
|
#define IMF2DBuffer2_Lock2DSize(This,lockFlags,ppbScanline0,plPitch,ppbBufferStart,pcbBufferLength) (This)->lpVtbl->Lock2DSize(This,lockFlags,ppbScanline0,plPitch,ppbBufferStart,pcbBufferLength)
|
|
#define IMF2DBuffer2_Copy2DTo(This,pDestBuffer) (This)->lpVtbl->Copy2DTo(This,pDestBuffer)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_QueryInterface(IMF2DBuffer2* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMF2DBuffer2_AddRef(IMF2DBuffer2* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMF2DBuffer2_Release(IMF2DBuffer2* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMF2DBuffer methods ***/
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_Lock2D(IMF2DBuffer2* This,BYTE **ppbScanline0,LONG *plPitch) {
|
|
return This->lpVtbl->Lock2D(This,ppbScanline0,plPitch);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_Unlock2D(IMF2DBuffer2* This) {
|
|
return This->lpVtbl->Unlock2D(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_GetScanline0AndPitch(IMF2DBuffer2* This,BYTE **pbScanline0,LONG *plPitch) {
|
|
return This->lpVtbl->GetScanline0AndPitch(This,pbScanline0,plPitch);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_IsContiguousFormat(IMF2DBuffer2* This,WINBOOL *pfIsContiguous) {
|
|
return This->lpVtbl->IsContiguousFormat(This,pfIsContiguous);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_GetContiguousLength(IMF2DBuffer2* This,DWORD *pcbLength) {
|
|
return This->lpVtbl->GetContiguousLength(This,pcbLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_ContiguousCopyTo(IMF2DBuffer2* This,BYTE *pbDestBuffer,DWORD cbDestBuffer) {
|
|
return This->lpVtbl->ContiguousCopyTo(This,pbDestBuffer,cbDestBuffer);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_ContiguousCopyFrom(IMF2DBuffer2* This,const BYTE *pbSrcBuffer,DWORD cbSrcBuffer) {
|
|
return This->lpVtbl->ContiguousCopyFrom(This,pbSrcBuffer,cbSrcBuffer);
|
|
}
|
|
/*** IMF2DBuffer2 methods ***/
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_Lock2DSize(IMF2DBuffer2* This,MF2DBuffer_LockFlags lockFlags,BYTE **ppbScanline0,LONG *plPitch,BYTE **ppbBufferStart,DWORD *pcbBufferLength) {
|
|
return This->lpVtbl->Lock2DSize(This,lockFlags,ppbScanline0,plPitch,ppbBufferStart,pcbBufferLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMF2DBuffer2_Copy2DTo(IMF2DBuffer2* This,IMF2DBuffer2 *pDestBuffer) {
|
|
return This->lpVtbl->Copy2DTo(This,pDestBuffer);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer2_Lock2DSize_Proxy(
|
|
IMF2DBuffer2* This,
|
|
MF2DBuffer_LockFlags lockFlags,
|
|
BYTE **ppbScanline0,
|
|
LONG *plPitch,
|
|
BYTE **ppbBufferStart,
|
|
DWORD *pcbBufferLength);
|
|
void __RPC_STUB IMF2DBuffer2_Lock2DSize_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMF2DBuffer2_Copy2DTo_Proxy(
|
|
IMF2DBuffer2* This,
|
|
IMF2DBuffer2 *pDestBuffer);
|
|
void __RPC_STUB IMF2DBuffer2_Copy2DTo_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMF2DBuffer2_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMFDXGIBuffer interface
|
|
*/
|
|
#ifndef __IMFDXGIBuffer_INTERFACE_DEFINED__
|
|
#define __IMFDXGIBuffer_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFDXGIBuffer, 0xe7174cfa, 0x1c9e, 0x48b1, 0x88,0x66, 0x62,0x62,0x26,0xbf,0xc2,0x58);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("e7174cfa-1c9e-48b1-8866-626226bfc258")
|
|
IMFDXGIBuffer : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetResource(
|
|
REFIID riid,
|
|
LPVOID *ppvObject) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetSubresourceIndex(
|
|
UINT *puSubresource) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUnknown(
|
|
REFIID guid,
|
|
REFIID riid,
|
|
LPVOID *ppvObject) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetUnknown(
|
|
REFIID guid,
|
|
IUnknown *pUnkData) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFDXGIBuffer, 0xe7174cfa, 0x1c9e, 0x48b1, 0x88,0x66, 0x62,0x62,0x26,0xbf,0xc2,0x58)
|
|
#endif
|
|
#else
|
|
typedef struct IMFDXGIBufferVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFDXGIBuffer* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFDXGIBuffer* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFDXGIBuffer* This);
|
|
|
|
/*** IMFDXGIBuffer methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetResource)(
|
|
IMFDXGIBuffer* This,
|
|
REFIID riid,
|
|
LPVOID *ppvObject);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetSubresourceIndex)(
|
|
IMFDXGIBuffer* This,
|
|
UINT *puSubresource);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUnknown)(
|
|
IMFDXGIBuffer* This,
|
|
REFIID guid,
|
|
REFIID riid,
|
|
LPVOID *ppvObject);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUnknown)(
|
|
IMFDXGIBuffer* This,
|
|
REFIID guid,
|
|
IUnknown *pUnkData);
|
|
|
|
END_INTERFACE
|
|
} IMFDXGIBufferVtbl;
|
|
interface IMFDXGIBuffer {
|
|
CONST_VTBL IMFDXGIBufferVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#define IMFDXGIBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
|
#define IMFDXGIBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
|
|
#define IMFDXGIBuffer_Release(This) (This)->lpVtbl->Release(This)
|
|
/*** IMFDXGIBuffer methods ***/
|
|
#define IMFDXGIBuffer_GetResource(This,riid,ppvObject) (This)->lpVtbl->GetResource(This,riid,ppvObject)
|
|
#define IMFDXGIBuffer_GetSubresourceIndex(This,puSubresource) (This)->lpVtbl->GetSubresourceIndex(This,puSubresource)
|
|
#define IMFDXGIBuffer_GetUnknown(This,guid,riid,ppvObject) (This)->lpVtbl->GetUnknown(This,guid,riid,ppvObject)
|
|
#define IMFDXGIBuffer_SetUnknown(This,guid,pUnkData) (This)->lpVtbl->SetUnknown(This,guid,pUnkData)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFDXGIBuffer_QueryInterface(IMFDXGIBuffer* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFDXGIBuffer_AddRef(IMFDXGIBuffer* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFDXGIBuffer_Release(IMFDXGIBuffer* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFDXGIBuffer methods ***/
|
|
static FORCEINLINE HRESULT IMFDXGIBuffer_GetResource(IMFDXGIBuffer* This,REFIID riid,LPVOID *ppvObject) {
|
|
return This->lpVtbl->GetResource(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIBuffer_GetSubresourceIndex(IMFDXGIBuffer* This,UINT *puSubresource) {
|
|
return This->lpVtbl->GetSubresourceIndex(This,puSubresource);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIBuffer_GetUnknown(IMFDXGIBuffer* This,REFIID guid,REFIID riid,LPVOID *ppvObject) {
|
|
return This->lpVtbl->GetUnknown(This,guid,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIBuffer_SetUnknown(IMFDXGIBuffer* This,REFIID guid,IUnknown *pUnkData) {
|
|
return This->lpVtbl->SetUnknown(This,guid,pUnkData);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIBuffer_GetResource_Proxy(
|
|
IMFDXGIBuffer* This,
|
|
REFIID riid,
|
|
LPVOID *ppvObject);
|
|
void __RPC_STUB IMFDXGIBuffer_GetResource_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIBuffer_GetSubresourceIndex_Proxy(
|
|
IMFDXGIBuffer* This,
|
|
UINT *puSubresource);
|
|
void __RPC_STUB IMFDXGIBuffer_GetSubresourceIndex_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIBuffer_GetUnknown_Proxy(
|
|
IMFDXGIBuffer* This,
|
|
REFIID guid,
|
|
REFIID riid,
|
|
LPVOID *ppvObject);
|
|
void __RPC_STUB IMFDXGIBuffer_GetUnknown_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIBuffer_SetUnknown_Proxy(
|
|
IMFDXGIBuffer* This,
|
|
REFIID guid,
|
|
IUnknown *pUnkData);
|
|
void __RPC_STUB IMFDXGIBuffer_SetUnknown_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFDXGIBuffer_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMFMediaType interface
|
|
*/
|
|
#ifndef __IMFMediaType_INTERFACE_DEFINED__
|
|
#define __IMFMediaType_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFMediaType, 0x44ae0fa8, 0xea31, 0x4109, 0x8d,0x2e, 0x4c,0xae,0x49,0x97,0xc5,0x55);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("44ae0fa8-ea31-4109-8d2e-4cae4997c555")
|
|
IMFMediaType : public IMFAttributes
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetMajorType(
|
|
GUID *pguidMajorType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsCompressedFormat(
|
|
WINBOOL *pfCompressed) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsEqual(
|
|
IMFMediaType *pIMediaType,
|
|
DWORD *pdwFlags) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetRepresentation(
|
|
GUID guidRepresentation,
|
|
LPVOID *ppvRepresentation) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE FreeRepresentation(
|
|
GUID guidRepresentation,
|
|
LPVOID pvRepresentation) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFMediaType, 0x44ae0fa8, 0xea31, 0x4109, 0x8d,0x2e, 0x4c,0xae,0x49,0x97,0xc5,0x55)
|
|
#endif
|
|
#else
|
|
typedef struct IMFMediaTypeVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFMediaType* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFMediaType* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFMediaType* This);
|
|
|
|
/*** IMFAttributes methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetItem)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemType)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CompareItem)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Compare)(
|
|
IMFMediaType* This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT32)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT64)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT64 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDouble)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
double *pfValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetGUID)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
GUID *pguidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStringLength)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetString)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedString)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlobSize)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlob)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedBlob)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUnknown)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
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,
|
|
LPCWSTR wszValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBlob)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUnknown)(
|
|
IMFMediaType* This,
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *LockStore)(
|
|
IMFMediaType* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *UnlockStore)(
|
|
IMFMediaType* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCount)(
|
|
IMFMediaType* This,
|
|
UINT32 *pcItems);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemByIndex)(
|
|
IMFMediaType* This,
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CopyAllItems)(
|
|
IMFMediaType* This,
|
|
IMFAttributes *pDest);
|
|
|
|
/*** IMFMediaType methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetMajorType)(
|
|
IMFMediaType* This,
|
|
GUID *pguidMajorType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsCompressedFormat)(
|
|
IMFMediaType* This,
|
|
WINBOOL *pfCompressed);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsEqual)(
|
|
IMFMediaType* This,
|
|
IMFMediaType *pIMediaType,
|
|
DWORD *pdwFlags);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetRepresentation)(
|
|
IMFMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID *ppvRepresentation);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *FreeRepresentation)(
|
|
IMFMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID pvRepresentation);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaTypeVtbl;
|
|
interface IMFMediaType {
|
|
CONST_VTBL IMFMediaTypeVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAttributes methods ***/
|
|
#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)
|
|
/*** IMFMediaType methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaType_QueryInterface(IMFMediaType* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaType_AddRef(IMFMediaType* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaType_Release(IMFMediaType* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAttributes methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaType_GetItem(IMFMediaType* This,REFGUID guidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItem(This,guidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetItemType(IMFMediaType* This,REFGUID guidKey,MF_ATTRIBUTE_TYPE *pType) {
|
|
return This->lpVtbl->GetItemType(This,guidKey,pType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_CompareItem(IMFMediaType* This,REFGUID guidKey,REFPROPVARIANT Value,WINBOOL *pbResult) {
|
|
return This->lpVtbl->CompareItem(This,guidKey,Value,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_Compare(IMFMediaType* This,IMFAttributes *pTheirs,MF_ATTRIBUTES_MATCH_TYPE MatchType,WINBOOL *pbResult) {
|
|
return This->lpVtbl->Compare(This,pTheirs,MatchType,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetUINT32(IMFMediaType* This,REFGUID guidKey,UINT32 *punValue) {
|
|
return This->lpVtbl->GetUINT32(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetUINT64(IMFMediaType* This,REFGUID guidKey,UINT64 *punValue) {
|
|
return This->lpVtbl->GetUINT64(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetDouble(IMFMediaType* This,REFGUID guidKey,double *pfValue) {
|
|
return This->lpVtbl->GetDouble(This,guidKey,pfValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetGUID(IMFMediaType* This,REFGUID guidKey,GUID *pguidValue) {
|
|
return This->lpVtbl->GetGUID(This,guidKey,pguidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetStringLength(IMFMediaType* This,REFGUID guidKey,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetStringLength(This,guidKey,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetString(IMFMediaType* This,REFGUID guidKey,LPWSTR pwszValue,UINT32 cchBufSize,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetString(This,guidKey,pwszValue,cchBufSize,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetAllocatedString(IMFMediaType* This,REFGUID guidKey,LPWSTR *ppwszValue,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetAllocatedString(This,guidKey,ppwszValue,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetBlobSize(IMFMediaType* This,REFGUID guidKey,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlobSize(This,guidKey,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetBlob(IMFMediaType* This,REFGUID guidKey,UINT8 *pBuf,UINT32 cbBufSize,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetAllocatedBlob(IMFMediaType* This,REFGUID guidKey,UINT8 **ppBuf,UINT32 *pcbSize) {
|
|
return This->lpVtbl->GetAllocatedBlob(This,guidKey,ppBuf,pcbSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetUnknown(IMFMediaType* This,REFGUID guidKey,REFIID riid,LPVOID *ppv) {
|
|
return This->lpVtbl->GetUnknown(This,guidKey,riid,ppv);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_SetItem(IMFMediaType* This,REFGUID guidKey,REFPROPVARIANT Value) {
|
|
return This->lpVtbl->SetItem(This,guidKey,Value);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_DeleteItem(IMFMediaType* This,REFGUID guidKey) {
|
|
return This->lpVtbl->DeleteItem(This,guidKey);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_DeleteAllItems(IMFMediaType* This) {
|
|
return This->lpVtbl->DeleteAllItems(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_SetUINT32(IMFMediaType* This,REFGUID guidKey,UINT32 unValue) {
|
|
return This->lpVtbl->SetUINT32(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_SetUINT64(IMFMediaType* This,REFGUID guidKey,UINT64 unValue) {
|
|
return This->lpVtbl->SetUINT64(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_SetDouble(IMFMediaType* This,REFGUID guidKey,double fValue) {
|
|
return This->lpVtbl->SetDouble(This,guidKey,fValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_SetGUID(IMFMediaType* This,REFGUID guidKey,REFGUID guidValue) {
|
|
return This->lpVtbl->SetGUID(This,guidKey,guidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_SetString(IMFMediaType* This,REFGUID guidKey,LPCWSTR wszValue) {
|
|
return This->lpVtbl->SetString(This,guidKey,wszValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_SetBlob(IMFMediaType* This,REFGUID guidKey,const UINT8 *pBuf,UINT32 cbBufSize) {
|
|
return This->lpVtbl->SetBlob(This,guidKey,pBuf,cbBufSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_SetUnknown(IMFMediaType* This,REFGUID guidKey,IUnknown *pUnknown) {
|
|
return This->lpVtbl->SetUnknown(This,guidKey,pUnknown);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_LockStore(IMFMediaType* This) {
|
|
return This->lpVtbl->LockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_UnlockStore(IMFMediaType* This) {
|
|
return This->lpVtbl->UnlockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetCount(IMFMediaType* This,UINT32 *pcItems) {
|
|
return This->lpVtbl->GetCount(This,pcItems);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetItemByIndex(IMFMediaType* This,UINT32 unIndex,GUID *pguidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItemByIndex(This,unIndex,pguidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_CopyAllItems(IMFMediaType* This,IMFAttributes *pDest) {
|
|
return This->lpVtbl->CopyAllItems(This,pDest);
|
|
}
|
|
/*** IMFMediaType methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaType_GetMajorType(IMFMediaType* This,GUID *pguidMajorType) {
|
|
return This->lpVtbl->GetMajorType(This,pguidMajorType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_IsCompressedFormat(IMFMediaType* This,WINBOOL *pfCompressed) {
|
|
return This->lpVtbl->IsCompressedFormat(This,pfCompressed);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_IsEqual(IMFMediaType* This,IMFMediaType *pIMediaType,DWORD *pdwFlags) {
|
|
return This->lpVtbl->IsEqual(This,pIMediaType,pdwFlags);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_GetRepresentation(IMFMediaType* This,GUID guidRepresentation,LPVOID *ppvRepresentation) {
|
|
return This->lpVtbl->GetRepresentation(This,guidRepresentation,ppvRepresentation);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaType_FreeRepresentation(IMFMediaType* This,GUID guidRepresentation,LPVOID pvRepresentation) {
|
|
return This->lpVtbl->FreeRepresentation(This,guidRepresentation,pvRepresentation);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFMediaType_GetMajorType_Proxy(
|
|
IMFMediaType* This,
|
|
GUID *pguidMajorType);
|
|
void __RPC_STUB IMFMediaType_GetMajorType_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaType_IsCompressedFormat_Proxy(
|
|
IMFMediaType* This,
|
|
WINBOOL *pfCompressed);
|
|
void __RPC_STUB IMFMediaType_IsCompressedFormat_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaType_IsEqual_Proxy(
|
|
IMFMediaType* This,
|
|
IMFMediaType *pIMediaType,
|
|
DWORD *pdwFlags);
|
|
void __RPC_STUB IMFMediaType_IsEqual_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaType_GetRepresentation_Proxy(
|
|
IMFMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID *ppvRepresentation);
|
|
void __RPC_STUB IMFMediaType_GetRepresentation_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaType_FreeRepresentation_Proxy(
|
|
IMFMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID pvRepresentation);
|
|
void __RPC_STUB IMFMediaType_FreeRepresentation_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFMediaType_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#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
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
/*****************************************************************************
|
|
* IMFAudioMediaType interface
|
|
*/
|
|
#ifndef __IMFAudioMediaType_INTERFACE_DEFINED__
|
|
#define __IMFAudioMediaType_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFAudioMediaType, 0x26a0adc3, 0xce26, 0x4672, 0x93,0x04, 0x69,0x55,0x2e,0xdd,0x3f,0xaf);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("26a0adc3-ce26-4672-9304-69552edd3faf")
|
|
IMFAudioMediaType : public IMFMediaType
|
|
{
|
|
virtual const WAVEFORMATEX * STDMETHODCALLTYPE GetAudioFormat(
|
|
) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFAudioMediaType, 0x26a0adc3, 0xce26, 0x4672, 0x93,0x04, 0x69,0x55,0x2e,0xdd,0x3f,0xaf)
|
|
#endif
|
|
#else
|
|
typedef struct IMFAudioMediaTypeVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFAudioMediaType* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFAudioMediaType* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFAudioMediaType* This);
|
|
|
|
/*** IMFAttributes methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetItem)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemType)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CompareItem)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Compare)(
|
|
IMFAudioMediaType* This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT32)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT64)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT64 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDouble)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
double *pfValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetGUID)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
GUID *pguidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStringLength)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetString)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedString)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlobSize)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlob)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedBlob)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUnknown)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
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,
|
|
LPCWSTR wszValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBlob)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUnknown)(
|
|
IMFAudioMediaType* This,
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *LockStore)(
|
|
IMFAudioMediaType* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *UnlockStore)(
|
|
IMFAudioMediaType* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCount)(
|
|
IMFAudioMediaType* This,
|
|
UINT32 *pcItems);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemByIndex)(
|
|
IMFAudioMediaType* This,
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CopyAllItems)(
|
|
IMFAudioMediaType* This,
|
|
IMFAttributes *pDest);
|
|
|
|
/*** IMFMediaType methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetMajorType)(
|
|
IMFAudioMediaType* This,
|
|
GUID *pguidMajorType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsCompressedFormat)(
|
|
IMFAudioMediaType* This,
|
|
WINBOOL *pfCompressed);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsEqual)(
|
|
IMFAudioMediaType* This,
|
|
IMFMediaType *pIMediaType,
|
|
DWORD *pdwFlags);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetRepresentation)(
|
|
IMFAudioMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID *ppvRepresentation);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *FreeRepresentation)(
|
|
IMFAudioMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID pvRepresentation);
|
|
|
|
/*** IMFAudioMediaType methods ***/
|
|
const WAVEFORMATEX * (STDMETHODCALLTYPE *GetAudioFormat)(
|
|
IMFAudioMediaType* This);
|
|
|
|
END_INTERFACE
|
|
} IMFAudioMediaTypeVtbl;
|
|
interface IMFAudioMediaType {
|
|
CONST_VTBL IMFAudioMediaTypeVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAttributes methods ***/
|
|
#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)
|
|
/*** IMFMediaType methods ***/
|
|
#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)
|
|
/*** IMFAudioMediaType methods ***/
|
|
#define IMFAudioMediaType_GetAudioFormat(This) (This)->lpVtbl->GetAudioFormat(This)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_QueryInterface(IMFAudioMediaType* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFAudioMediaType_AddRef(IMFAudioMediaType* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFAudioMediaType_Release(IMFAudioMediaType* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAttributes methods ***/
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetItem(IMFAudioMediaType* This,REFGUID guidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItem(This,guidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetItemType(IMFAudioMediaType* This,REFGUID guidKey,MF_ATTRIBUTE_TYPE *pType) {
|
|
return This->lpVtbl->GetItemType(This,guidKey,pType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_CompareItem(IMFAudioMediaType* This,REFGUID guidKey,REFPROPVARIANT Value,WINBOOL *pbResult) {
|
|
return This->lpVtbl->CompareItem(This,guidKey,Value,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_Compare(IMFAudioMediaType* This,IMFAttributes *pTheirs,MF_ATTRIBUTES_MATCH_TYPE MatchType,WINBOOL *pbResult) {
|
|
return This->lpVtbl->Compare(This,pTheirs,MatchType,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetUINT32(IMFAudioMediaType* This,REFGUID guidKey,UINT32 *punValue) {
|
|
return This->lpVtbl->GetUINT32(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetUINT64(IMFAudioMediaType* This,REFGUID guidKey,UINT64 *punValue) {
|
|
return This->lpVtbl->GetUINT64(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetDouble(IMFAudioMediaType* This,REFGUID guidKey,double *pfValue) {
|
|
return This->lpVtbl->GetDouble(This,guidKey,pfValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetGUID(IMFAudioMediaType* This,REFGUID guidKey,GUID *pguidValue) {
|
|
return This->lpVtbl->GetGUID(This,guidKey,pguidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetStringLength(IMFAudioMediaType* This,REFGUID guidKey,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetStringLength(This,guidKey,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetString(IMFAudioMediaType* This,REFGUID guidKey,LPWSTR pwszValue,UINT32 cchBufSize,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetString(This,guidKey,pwszValue,cchBufSize,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetAllocatedString(IMFAudioMediaType* This,REFGUID guidKey,LPWSTR *ppwszValue,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetAllocatedString(This,guidKey,ppwszValue,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetBlobSize(IMFAudioMediaType* This,REFGUID guidKey,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlobSize(This,guidKey,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetBlob(IMFAudioMediaType* This,REFGUID guidKey,UINT8 *pBuf,UINT32 cbBufSize,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetAllocatedBlob(IMFAudioMediaType* This,REFGUID guidKey,UINT8 **ppBuf,UINT32 *pcbSize) {
|
|
return This->lpVtbl->GetAllocatedBlob(This,guidKey,ppBuf,pcbSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetUnknown(IMFAudioMediaType* This,REFGUID guidKey,REFIID riid,LPVOID *ppv) {
|
|
return This->lpVtbl->GetUnknown(This,guidKey,riid,ppv);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_SetItem(IMFAudioMediaType* This,REFGUID guidKey,REFPROPVARIANT Value) {
|
|
return This->lpVtbl->SetItem(This,guidKey,Value);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_DeleteItem(IMFAudioMediaType* This,REFGUID guidKey) {
|
|
return This->lpVtbl->DeleteItem(This,guidKey);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_DeleteAllItems(IMFAudioMediaType* This) {
|
|
return This->lpVtbl->DeleteAllItems(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_SetUINT32(IMFAudioMediaType* This,REFGUID guidKey,UINT32 unValue) {
|
|
return This->lpVtbl->SetUINT32(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_SetUINT64(IMFAudioMediaType* This,REFGUID guidKey,UINT64 unValue) {
|
|
return This->lpVtbl->SetUINT64(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_SetDouble(IMFAudioMediaType* This,REFGUID guidKey,double fValue) {
|
|
return This->lpVtbl->SetDouble(This,guidKey,fValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_SetGUID(IMFAudioMediaType* This,REFGUID guidKey,REFGUID guidValue) {
|
|
return This->lpVtbl->SetGUID(This,guidKey,guidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_SetString(IMFAudioMediaType* This,REFGUID guidKey,LPCWSTR wszValue) {
|
|
return This->lpVtbl->SetString(This,guidKey,wszValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_SetBlob(IMFAudioMediaType* This,REFGUID guidKey,const UINT8 *pBuf,UINT32 cbBufSize) {
|
|
return This->lpVtbl->SetBlob(This,guidKey,pBuf,cbBufSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_SetUnknown(IMFAudioMediaType* This,REFGUID guidKey,IUnknown *pUnknown) {
|
|
return This->lpVtbl->SetUnknown(This,guidKey,pUnknown);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_LockStore(IMFAudioMediaType* This) {
|
|
return This->lpVtbl->LockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_UnlockStore(IMFAudioMediaType* This) {
|
|
return This->lpVtbl->UnlockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetCount(IMFAudioMediaType* This,UINT32 *pcItems) {
|
|
return This->lpVtbl->GetCount(This,pcItems);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetItemByIndex(IMFAudioMediaType* This,UINT32 unIndex,GUID *pguidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItemByIndex(This,unIndex,pguidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_CopyAllItems(IMFAudioMediaType* This,IMFAttributes *pDest) {
|
|
return This->lpVtbl->CopyAllItems(This,pDest);
|
|
}
|
|
/*** IMFMediaType methods ***/
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetMajorType(IMFAudioMediaType* This,GUID *pguidMajorType) {
|
|
return This->lpVtbl->GetMajorType(This,pguidMajorType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_IsCompressedFormat(IMFAudioMediaType* This,WINBOOL *pfCompressed) {
|
|
return This->lpVtbl->IsCompressedFormat(This,pfCompressed);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_IsEqual(IMFAudioMediaType* This,IMFMediaType *pIMediaType,DWORD *pdwFlags) {
|
|
return This->lpVtbl->IsEqual(This,pIMediaType,pdwFlags);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_GetRepresentation(IMFAudioMediaType* This,GUID guidRepresentation,LPVOID *ppvRepresentation) {
|
|
return This->lpVtbl->GetRepresentation(This,guidRepresentation,ppvRepresentation);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAudioMediaType_FreeRepresentation(IMFAudioMediaType* This,GUID guidRepresentation,LPVOID pvRepresentation) {
|
|
return This->lpVtbl->FreeRepresentation(This,guidRepresentation,pvRepresentation);
|
|
}
|
|
/*** IMFAudioMediaType methods ***/
|
|
static FORCEINLINE const WAVEFORMATEX * IMFAudioMediaType_GetAudioFormat(IMFAudioMediaType* This) {
|
|
return This->lpVtbl->GetAudioFormat(This);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
const WAVEFORMATEX * STDMETHODCALLTYPE IMFAudioMediaType_GetAudioFormat_Proxy(
|
|
IMFAudioMediaType* This);
|
|
void __RPC_STUB IMFAudioMediaType_GetAudioFormat_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFAudioMediaType_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef _WINGDI_
|
|
typedef DWORD RGBQUAD;
|
|
|
|
typedef struct __WIDL_mfobjects_generated_name_00000014 {
|
|
DWORD biSize;
|
|
LONG biWidth;
|
|
LONG biHeight;
|
|
WORD biPlanes;
|
|
WORD biBitCount;
|
|
DWORD biCompression;
|
|
DWORD biSizeImage;
|
|
LONG biXPelsPerMeter;
|
|
LONG biYPelsPerMeter;
|
|
DWORD biClrUsed;
|
|
DWORD biClrImportant;
|
|
} BITMAPINFOHEADER;
|
|
|
|
typedef struct __WIDL_mfobjects_generated_name_00000015 {
|
|
BITMAPINFOHEADER bmiHeader;
|
|
RGBQUAD bmiColors[1];
|
|
} BITMAPINFO;
|
|
#endif
|
|
|
|
typedef struct __WIDL_mfobjects_generated_name_00000016 {
|
|
GUID guidMajorType;
|
|
GUID guidSubtype;
|
|
} MFT_REGISTER_TYPE_INFO;
|
|
#endif
|
|
#ifndef _MFVIDEOFORMAT_
|
|
#define _MFVIDEOFORMAT_
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
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 = 8,
|
|
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_Last = 9,
|
|
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 = 9,
|
|
MFVideoPrimaries_ForceDWORD = 0x7fffffff
|
|
} MFVideoPrimaries;
|
|
|
|
typedef enum _MFVideoLighting {
|
|
MFVideoLighting_Unknown = 0,
|
|
MFVideoLighting_bright = 1,
|
|
MFVideoLighting_office = 2,
|
|
MFVideoLighting_dim = 3,
|
|
MFVideoLighting_dark = 4,
|
|
MFVideoLighting_Last = 5,
|
|
MFVideoLighting_ForceDWORD = 0x7fffffff
|
|
} MFVideoLighting;
|
|
|
|
typedef enum _MFVideoTransferMatrix {
|
|
MFVideoTransferMatrix_Unknown = 0,
|
|
MFVideoTransferMatrix_BT709 = 1,
|
|
MFVideoTransferMatrix_BT601 = 2,
|
|
MFVideoTransferMatrix_SMPTE240M = 3,
|
|
MFVideoTransferMatrix_Last = 4,
|
|
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_Last = 4,
|
|
MFNominalRange_ForceDWORD = 0x7fffffff
|
|
} MFNominalRange;
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
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;
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
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;
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
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;
|
|
UINT64 VideoFlags;
|
|
} MFVideoInfo;
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
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;
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
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 = 1,
|
|
MFStdVideoFormat_PAL = 2,
|
|
MFStdVideoFormat_DVD_NTSC = 3,
|
|
MFStdVideoFormat_DVD_PAL = 4,
|
|
MFStdVideoFormat_DV_PAL = 5,
|
|
MFStdVideoFormat_DV_NTSC = 6,
|
|
MFStdVideoFormat_ATSC_SD480i = 7,
|
|
MFStdVideoFormat_ATSC_HD1080i = 8,
|
|
MFStdVideoFormat_ATSC_HD720p = 9
|
|
} MFStandardVideoFormat;
|
|
#endif
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
/*****************************************************************************
|
|
* IMFVideoMediaType interface
|
|
*/
|
|
#ifndef __IMFVideoMediaType_INTERFACE_DEFINED__
|
|
#define __IMFVideoMediaType_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFVideoMediaType, 0xb99f381f, 0xa8f9, 0x47a2, 0xa5,0xaf, 0xca,0x3a,0x22,0x5a,0x38,0x90);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("b99f381f-a8f9-47a2-a5af-ca3a225a3890")
|
|
IMFVideoMediaType : public IMFMediaType
|
|
{
|
|
virtual const MFVIDEOFORMAT * STDMETHODCALLTYPE GetVideoFormat(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoRepresentation(
|
|
GUID guidRepresentation,
|
|
LPVOID *ppvRepresentation,
|
|
LONG lStride) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFVideoMediaType, 0xb99f381f, 0xa8f9, 0x47a2, 0xa5,0xaf, 0xca,0x3a,0x22,0x5a,0x38,0x90)
|
|
#endif
|
|
#else
|
|
typedef struct IMFVideoMediaTypeVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFVideoMediaType* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFVideoMediaType* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFVideoMediaType* This);
|
|
|
|
/*** IMFAttributes methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetItem)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemType)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CompareItem)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Compare)(
|
|
IMFVideoMediaType* This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT32)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT64)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT64 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDouble)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
double *pfValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetGUID)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
GUID *pguidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStringLength)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetString)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedString)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlobSize)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlob)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedBlob)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUnknown)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
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,
|
|
LPCWSTR wszValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBlob)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUnknown)(
|
|
IMFVideoMediaType* This,
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *LockStore)(
|
|
IMFVideoMediaType* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *UnlockStore)(
|
|
IMFVideoMediaType* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCount)(
|
|
IMFVideoMediaType* This,
|
|
UINT32 *pcItems);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemByIndex)(
|
|
IMFVideoMediaType* This,
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CopyAllItems)(
|
|
IMFVideoMediaType* This,
|
|
IMFAttributes *pDest);
|
|
|
|
/*** IMFMediaType methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetMajorType)(
|
|
IMFVideoMediaType* This,
|
|
GUID *pguidMajorType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsCompressedFormat)(
|
|
IMFVideoMediaType* This,
|
|
WINBOOL *pfCompressed);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsEqual)(
|
|
IMFVideoMediaType* This,
|
|
IMFMediaType *pIMediaType,
|
|
DWORD *pdwFlags);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetRepresentation)(
|
|
IMFVideoMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID *ppvRepresentation);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *FreeRepresentation)(
|
|
IMFVideoMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID pvRepresentation);
|
|
|
|
/*** IMFVideoMediaType methods ***/
|
|
const MFVIDEOFORMAT * (STDMETHODCALLTYPE *GetVideoFormat)(
|
|
IMFVideoMediaType* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetVideoRepresentation)(
|
|
IMFVideoMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID *ppvRepresentation,
|
|
LONG lStride);
|
|
|
|
END_INTERFACE
|
|
} IMFVideoMediaTypeVtbl;
|
|
interface IMFVideoMediaType {
|
|
CONST_VTBL IMFVideoMediaTypeVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAttributes methods ***/
|
|
#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)
|
|
/*** IMFMediaType methods ***/
|
|
#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)
|
|
/*** IMFVideoMediaType methods ***/
|
|
#define IMFVideoMediaType_GetVideoFormat(This) (This)->lpVtbl->GetVideoFormat(This)
|
|
#define IMFVideoMediaType_GetVideoRepresentation(This,guidRepresentation,ppvRepresentation,lStride) (This)->lpVtbl->GetVideoRepresentation(This,guidRepresentation,ppvRepresentation,lStride)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_QueryInterface(IMFVideoMediaType* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFVideoMediaType_AddRef(IMFVideoMediaType* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFVideoMediaType_Release(IMFVideoMediaType* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAttributes methods ***/
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetItem(IMFVideoMediaType* This,REFGUID guidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItem(This,guidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetItemType(IMFVideoMediaType* This,REFGUID guidKey,MF_ATTRIBUTE_TYPE *pType) {
|
|
return This->lpVtbl->GetItemType(This,guidKey,pType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_CompareItem(IMFVideoMediaType* This,REFGUID guidKey,REFPROPVARIANT Value,WINBOOL *pbResult) {
|
|
return This->lpVtbl->CompareItem(This,guidKey,Value,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_Compare(IMFVideoMediaType* This,IMFAttributes *pTheirs,MF_ATTRIBUTES_MATCH_TYPE MatchType,WINBOOL *pbResult) {
|
|
return This->lpVtbl->Compare(This,pTheirs,MatchType,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetUINT32(IMFVideoMediaType* This,REFGUID guidKey,UINT32 *punValue) {
|
|
return This->lpVtbl->GetUINT32(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetUINT64(IMFVideoMediaType* This,REFGUID guidKey,UINT64 *punValue) {
|
|
return This->lpVtbl->GetUINT64(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetDouble(IMFVideoMediaType* This,REFGUID guidKey,double *pfValue) {
|
|
return This->lpVtbl->GetDouble(This,guidKey,pfValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetGUID(IMFVideoMediaType* This,REFGUID guidKey,GUID *pguidValue) {
|
|
return This->lpVtbl->GetGUID(This,guidKey,pguidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetStringLength(IMFVideoMediaType* This,REFGUID guidKey,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetStringLength(This,guidKey,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetString(IMFVideoMediaType* This,REFGUID guidKey,LPWSTR pwszValue,UINT32 cchBufSize,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetString(This,guidKey,pwszValue,cchBufSize,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetAllocatedString(IMFVideoMediaType* This,REFGUID guidKey,LPWSTR *ppwszValue,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetAllocatedString(This,guidKey,ppwszValue,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetBlobSize(IMFVideoMediaType* This,REFGUID guidKey,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlobSize(This,guidKey,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetBlob(IMFVideoMediaType* This,REFGUID guidKey,UINT8 *pBuf,UINT32 cbBufSize,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetAllocatedBlob(IMFVideoMediaType* This,REFGUID guidKey,UINT8 **ppBuf,UINT32 *pcbSize) {
|
|
return This->lpVtbl->GetAllocatedBlob(This,guidKey,ppBuf,pcbSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetUnknown(IMFVideoMediaType* This,REFGUID guidKey,REFIID riid,LPVOID *ppv) {
|
|
return This->lpVtbl->GetUnknown(This,guidKey,riid,ppv);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_SetItem(IMFVideoMediaType* This,REFGUID guidKey,REFPROPVARIANT Value) {
|
|
return This->lpVtbl->SetItem(This,guidKey,Value);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_DeleteItem(IMFVideoMediaType* This,REFGUID guidKey) {
|
|
return This->lpVtbl->DeleteItem(This,guidKey);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_DeleteAllItems(IMFVideoMediaType* This) {
|
|
return This->lpVtbl->DeleteAllItems(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_SetUINT32(IMFVideoMediaType* This,REFGUID guidKey,UINT32 unValue) {
|
|
return This->lpVtbl->SetUINT32(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_SetUINT64(IMFVideoMediaType* This,REFGUID guidKey,UINT64 unValue) {
|
|
return This->lpVtbl->SetUINT64(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_SetDouble(IMFVideoMediaType* This,REFGUID guidKey,double fValue) {
|
|
return This->lpVtbl->SetDouble(This,guidKey,fValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_SetGUID(IMFVideoMediaType* This,REFGUID guidKey,REFGUID guidValue) {
|
|
return This->lpVtbl->SetGUID(This,guidKey,guidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_SetString(IMFVideoMediaType* This,REFGUID guidKey,LPCWSTR wszValue) {
|
|
return This->lpVtbl->SetString(This,guidKey,wszValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_SetBlob(IMFVideoMediaType* This,REFGUID guidKey,const UINT8 *pBuf,UINT32 cbBufSize) {
|
|
return This->lpVtbl->SetBlob(This,guidKey,pBuf,cbBufSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_SetUnknown(IMFVideoMediaType* This,REFGUID guidKey,IUnknown *pUnknown) {
|
|
return This->lpVtbl->SetUnknown(This,guidKey,pUnknown);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_LockStore(IMFVideoMediaType* This) {
|
|
return This->lpVtbl->LockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_UnlockStore(IMFVideoMediaType* This) {
|
|
return This->lpVtbl->UnlockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetCount(IMFVideoMediaType* This,UINT32 *pcItems) {
|
|
return This->lpVtbl->GetCount(This,pcItems);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetItemByIndex(IMFVideoMediaType* This,UINT32 unIndex,GUID *pguidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItemByIndex(This,unIndex,pguidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_CopyAllItems(IMFVideoMediaType* This,IMFAttributes *pDest) {
|
|
return This->lpVtbl->CopyAllItems(This,pDest);
|
|
}
|
|
/*** IMFMediaType methods ***/
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetMajorType(IMFVideoMediaType* This,GUID *pguidMajorType) {
|
|
return This->lpVtbl->GetMajorType(This,pguidMajorType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_IsCompressedFormat(IMFVideoMediaType* This,WINBOOL *pfCompressed) {
|
|
return This->lpVtbl->IsCompressedFormat(This,pfCompressed);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_IsEqual(IMFVideoMediaType* This,IMFMediaType *pIMediaType,DWORD *pdwFlags) {
|
|
return This->lpVtbl->IsEqual(This,pIMediaType,pdwFlags);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetRepresentation(IMFVideoMediaType* This,GUID guidRepresentation,LPVOID *ppvRepresentation) {
|
|
return This->lpVtbl->GetRepresentation(This,guidRepresentation,ppvRepresentation);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_FreeRepresentation(IMFVideoMediaType* This,GUID guidRepresentation,LPVOID pvRepresentation) {
|
|
return This->lpVtbl->FreeRepresentation(This,guidRepresentation,pvRepresentation);
|
|
}
|
|
/*** IMFVideoMediaType methods ***/
|
|
static FORCEINLINE const MFVIDEOFORMAT * IMFVideoMediaType_GetVideoFormat(IMFVideoMediaType* This) {
|
|
return This->lpVtbl->GetVideoFormat(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFVideoMediaType_GetVideoRepresentation(IMFVideoMediaType* This,GUID guidRepresentation,LPVOID *ppvRepresentation,LONG lStride) {
|
|
return This->lpVtbl->GetVideoRepresentation(This,guidRepresentation,ppvRepresentation,lStride);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
const MFVIDEOFORMAT * STDMETHODCALLTYPE IMFVideoMediaType_GetVideoFormat_Proxy(
|
|
IMFVideoMediaType* This);
|
|
void __RPC_STUB IMFVideoMediaType_GetVideoFormat_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFVideoMediaType_GetVideoRepresentation_Proxy(
|
|
IMFVideoMediaType* This,
|
|
GUID guidRepresentation,
|
|
LPVOID *ppvRepresentation,
|
|
LONG lStride);
|
|
void __RPC_STUB IMFVideoMediaType_GetVideoRepresentation_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFVideoMediaType_INTERFACE_DEFINED__ */
|
|
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
/*****************************************************************************
|
|
* IMFAsyncResult interface
|
|
*/
|
|
#ifndef __IMFAsyncResult_INTERFACE_DEFINED__
|
|
#define __IMFAsyncResult_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFAsyncResult, 0xac6b7889, 0x0740, 0x4d51, 0x86,0x19, 0x90,0x59,0x94,0xa5,0x5c,0xc6);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("ac6b7889-0740-4d51-8619-905994a55cc6")
|
|
IMFAsyncResult : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetState(
|
|
IUnknown **ppunkState) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStatus(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetStatus(
|
|
HRESULT hrStatus) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetObject(
|
|
IUnknown **ppObject) = 0;
|
|
|
|
virtual IUnknown * STDMETHODCALLTYPE GetStateNoAddRef(
|
|
) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFAsyncResult, 0xac6b7889, 0x0740, 0x4d51, 0x86,0x19, 0x90,0x59,0x94,0xa5,0x5c,0xc6)
|
|
#endif
|
|
#else
|
|
typedef struct IMFAsyncResultVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFAsyncResult* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFAsyncResult* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFAsyncResult* This);
|
|
|
|
/*** IMFAsyncResult methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetState)(
|
|
IMFAsyncResult* This,
|
|
IUnknown **ppunkState);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStatus)(
|
|
IMFAsyncResult* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetStatus)(
|
|
IMFAsyncResult* This,
|
|
HRESULT hrStatus);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetObject)(
|
|
IMFAsyncResult* This,
|
|
IUnknown **ppObject);
|
|
|
|
IUnknown * (STDMETHODCALLTYPE *GetStateNoAddRef)(
|
|
IMFAsyncResult* This);
|
|
|
|
END_INTERFACE
|
|
} IMFAsyncResultVtbl;
|
|
interface IMFAsyncResult {
|
|
CONST_VTBL IMFAsyncResultVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAsyncResult methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFAsyncResult_QueryInterface(IMFAsyncResult* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFAsyncResult_AddRef(IMFAsyncResult* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFAsyncResult_Release(IMFAsyncResult* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAsyncResult methods ***/
|
|
static FORCEINLINE HRESULT IMFAsyncResult_GetState(IMFAsyncResult* This,IUnknown **ppunkState) {
|
|
return This->lpVtbl->GetState(This,ppunkState);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAsyncResult_GetStatus(IMFAsyncResult* This) {
|
|
return This->lpVtbl->GetStatus(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAsyncResult_SetStatus(IMFAsyncResult* This,HRESULT hrStatus) {
|
|
return This->lpVtbl->SetStatus(This,hrStatus);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAsyncResult_GetObject(IMFAsyncResult* This,IUnknown **ppObject) {
|
|
return This->lpVtbl->GetObject(This,ppObject);
|
|
}
|
|
static FORCEINLINE IUnknown * IMFAsyncResult_GetStateNoAddRef(IMFAsyncResult* This) {
|
|
return This->lpVtbl->GetStateNoAddRef(This);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFAsyncResult_GetState_Proxy(
|
|
IMFAsyncResult* This,
|
|
IUnknown **ppunkState);
|
|
void __RPC_STUB IMFAsyncResult_GetState_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAsyncResult_GetStatus_Proxy(
|
|
IMFAsyncResult* This);
|
|
void __RPC_STUB IMFAsyncResult_GetStatus_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAsyncResult_SetStatus_Proxy(
|
|
IMFAsyncResult* This,
|
|
HRESULT hrStatus);
|
|
void __RPC_STUB IMFAsyncResult_SetStatus_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAsyncResult_GetObject_Proxy(
|
|
IMFAsyncResult* This,
|
|
IUnknown **ppObject);
|
|
void __RPC_STUB IMFAsyncResult_GetObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFAsyncResult_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMFAsyncCallback interface
|
|
*/
|
|
#ifndef __IMFAsyncCallback_INTERFACE_DEFINED__
|
|
#define __IMFAsyncCallback_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFAsyncCallback, 0xa27003cf, 0x2354, 0x4f2a, 0x8d,0x6a, 0xab,0x7c,0xff,0x15,0x43,0x7e);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("a27003cf-2354-4f2a-8d6a-ab7cff15437e")
|
|
IMFAsyncCallback : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetParameters(
|
|
DWORD *pdwFlags,
|
|
DWORD *pdwQueue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Invoke(
|
|
IMFAsyncResult *pAsyncResult) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFAsyncCallback, 0xa27003cf, 0x2354, 0x4f2a, 0x8d,0x6a, 0xab,0x7c,0xff,0x15,0x43,0x7e)
|
|
#endif
|
|
#else
|
|
typedef struct IMFAsyncCallbackVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFAsyncCallback* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFAsyncCallback* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFAsyncCallback* This);
|
|
|
|
/*** IMFAsyncCallback methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetParameters)(
|
|
IMFAsyncCallback* This,
|
|
DWORD *pdwFlags,
|
|
DWORD *pdwQueue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Invoke)(
|
|
IMFAsyncCallback* This,
|
|
IMFAsyncResult *pAsyncResult);
|
|
|
|
END_INTERFACE
|
|
} IMFAsyncCallbackVtbl;
|
|
interface IMFAsyncCallback {
|
|
CONST_VTBL IMFAsyncCallbackVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAsyncCallback methods ***/
|
|
#define IMFAsyncCallback_GetParameters(This,pdwFlags,pdwQueue) (This)->lpVtbl->GetParameters(This,pdwFlags,pdwQueue)
|
|
#define IMFAsyncCallback_Invoke(This,pAsyncResult) (This)->lpVtbl->Invoke(This,pAsyncResult)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFAsyncCallback_QueryInterface(IMFAsyncCallback* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFAsyncCallback_AddRef(IMFAsyncCallback* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFAsyncCallback_Release(IMFAsyncCallback* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAsyncCallback methods ***/
|
|
static FORCEINLINE HRESULT IMFAsyncCallback_GetParameters(IMFAsyncCallback* This,DWORD *pdwFlags,DWORD *pdwQueue) {
|
|
return This->lpVtbl->GetParameters(This,pdwFlags,pdwQueue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAsyncCallback_Invoke(IMFAsyncCallback* This,IMFAsyncResult *pAsyncResult) {
|
|
return This->lpVtbl->Invoke(This,pAsyncResult);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFAsyncCallback_GetParameters_Proxy(
|
|
IMFAsyncCallback* This,
|
|
DWORD *pdwFlags,
|
|
DWORD *pdwQueue);
|
|
void __RPC_STUB IMFAsyncCallback_GetParameters_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFAsyncCallback_Invoke_Proxy(
|
|
IMFAsyncCallback* This,
|
|
IMFAsyncResult *pAsyncResult);
|
|
void __RPC_STUB IMFAsyncCallback_Invoke_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFAsyncCallback_INTERFACE_DEFINED__ */
|
|
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
/*****************************************************************************
|
|
* IMFAsyncCallbackLogging interface
|
|
*/
|
|
#ifndef __IMFAsyncCallbackLogging_INTERFACE_DEFINED__
|
|
#define __IMFAsyncCallbackLogging_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFAsyncCallbackLogging, 0xc7a4dca1, 0xf5f0, 0x47b6, 0xb9,0x2b, 0xbf,0x01,0x06,0xd2,0x57,0x91);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("c7a4dca1-f5f0-47b6-b92b-bf0106d25791")
|
|
IMFAsyncCallbackLogging : public IMFAsyncCallback
|
|
{
|
|
virtual void * STDMETHODCALLTYPE GetObjectPointer(
|
|
) = 0;
|
|
|
|
virtual DWORD STDMETHODCALLTYPE GetObjectTag(
|
|
) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFAsyncCallbackLogging, 0xc7a4dca1, 0xf5f0, 0x47b6, 0xb9,0x2b, 0xbf,0x01,0x06,0xd2,0x57,0x91)
|
|
#endif
|
|
#else
|
|
typedef struct IMFAsyncCallbackLoggingVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFAsyncCallbackLogging* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFAsyncCallbackLogging* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFAsyncCallbackLogging* This);
|
|
|
|
/*** IMFAsyncCallback methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetParameters)(
|
|
IMFAsyncCallbackLogging* This,
|
|
DWORD *pdwFlags,
|
|
DWORD *pdwQueue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Invoke)(
|
|
IMFAsyncCallbackLogging* This,
|
|
IMFAsyncResult *pAsyncResult);
|
|
|
|
/*** IMFAsyncCallbackLogging methods ***/
|
|
void * (STDMETHODCALLTYPE *GetObjectPointer)(
|
|
IMFAsyncCallbackLogging* This);
|
|
|
|
DWORD (STDMETHODCALLTYPE *GetObjectTag)(
|
|
IMFAsyncCallbackLogging* This);
|
|
|
|
END_INTERFACE
|
|
} IMFAsyncCallbackLoggingVtbl;
|
|
interface IMFAsyncCallbackLogging {
|
|
CONST_VTBL IMFAsyncCallbackLoggingVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#define IMFAsyncCallbackLogging_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
|
#define IMFAsyncCallbackLogging_AddRef(This) (This)->lpVtbl->AddRef(This)
|
|
#define IMFAsyncCallbackLogging_Release(This) (This)->lpVtbl->Release(This)
|
|
/*** IMFAsyncCallback methods ***/
|
|
#define IMFAsyncCallbackLogging_GetParameters(This,pdwFlags,pdwQueue) (This)->lpVtbl->GetParameters(This,pdwFlags,pdwQueue)
|
|
#define IMFAsyncCallbackLogging_Invoke(This,pAsyncResult) (This)->lpVtbl->Invoke(This,pAsyncResult)
|
|
/*** IMFAsyncCallbackLogging methods ***/
|
|
#define IMFAsyncCallbackLogging_GetObjectPointer(This) (This)->lpVtbl->GetObjectPointer(This)
|
|
#define IMFAsyncCallbackLogging_GetObjectTag(This) (This)->lpVtbl->GetObjectTag(This)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFAsyncCallbackLogging_QueryInterface(IMFAsyncCallbackLogging* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFAsyncCallbackLogging_AddRef(IMFAsyncCallbackLogging* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFAsyncCallbackLogging_Release(IMFAsyncCallbackLogging* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAsyncCallback methods ***/
|
|
static FORCEINLINE HRESULT IMFAsyncCallbackLogging_GetParameters(IMFAsyncCallbackLogging* This,DWORD *pdwFlags,DWORD *pdwQueue) {
|
|
return This->lpVtbl->GetParameters(This,pdwFlags,pdwQueue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFAsyncCallbackLogging_Invoke(IMFAsyncCallbackLogging* This,IMFAsyncResult *pAsyncResult) {
|
|
return This->lpVtbl->Invoke(This,pAsyncResult);
|
|
}
|
|
/*** IMFAsyncCallbackLogging methods ***/
|
|
static FORCEINLINE void * IMFAsyncCallbackLogging_GetObjectPointer(IMFAsyncCallbackLogging* This) {
|
|
return This->lpVtbl->GetObjectPointer(This);
|
|
}
|
|
static FORCEINLINE DWORD IMFAsyncCallbackLogging_GetObjectTag(IMFAsyncCallbackLogging* This) {
|
|
return This->lpVtbl->GetObjectTag(This);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
void * STDMETHODCALLTYPE IMFAsyncCallbackLogging_GetObjectPointer_Proxy(
|
|
IMFAsyncCallbackLogging* This);
|
|
void __RPC_STUB IMFAsyncCallbackLogging_GetObjectPointer_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
DWORD STDMETHODCALLTYPE IMFAsyncCallbackLogging_GetObjectTag_Proxy(
|
|
IMFAsyncCallbackLogging* This);
|
|
void __RPC_STUB IMFAsyncCallbackLogging_GetObjectTag_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFAsyncCallbackLogging_INTERFACE_DEFINED__ */
|
|
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
#define MFASYNC_FAST_IO_PROCESSING_CALLBACK 0x00000001
|
|
#define MFASYNC_SIGNAL_CALLBACK 0x00000002
|
|
#define MFASYNC_BLOCKING_CALLBACK 0x00000004
|
|
#define MFASYNC_REPLY_CALLBACK 0x00000008
|
|
#define MFASYNC_LOCALIZE_REMOTE_CALLBACK 0x00000010
|
|
|
|
#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_MULTITHREADED 0x00000005
|
|
#define MFASYNC_CALLBACK_QUEUE_LONG_FUNCTION 0x00000007
|
|
#define MFASYNC_CALLBACK_QUEUE_PRIVATE_MASK 0xFFFF0000
|
|
#define MFASYNC_CALLBACK_QUEUE_ALL 0xFFFFFFFF
|
|
|
|
enum {
|
|
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,
|
|
MEReservedMax = 10000
|
|
};
|
|
|
|
|
|
typedef DWORD MediaEventType;
|
|
|
|
/*****************************************************************************
|
|
* IMFMediaEvent interface
|
|
*/
|
|
#ifndef __IMFMediaEvent_INTERFACE_DEFINED__
|
|
#define __IMFMediaEvent_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFMediaEvent, 0xdf598932, 0xf10c, 0x4e39, 0xbb,0xa2, 0xc3,0x08,0xf1,0x01,0xda,0xa3);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("df598932-f10c-4e39-bba2-c308f101daa3")
|
|
IMFMediaEvent : public IMFAttributes
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetType(
|
|
MediaEventType *pmet) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetExtendedType(
|
|
GUID *pguidExtendedType) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetStatus(
|
|
HRESULT *phrStatus) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetValue(
|
|
PROPVARIANT *pvValue) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFMediaEvent, 0xdf598932, 0xf10c, 0x4e39, 0xbb,0xa2, 0xc3,0x08,0xf1,0x01,0xda,0xa3)
|
|
#endif
|
|
#else
|
|
typedef struct IMFMediaEventVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFMediaEvent* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFMediaEvent* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFMediaEvent* This);
|
|
|
|
/*** IMFAttributes methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetItem)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemType)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CompareItem)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Compare)(
|
|
IMFMediaEvent* This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT32)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
UINT32 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT64)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
UINT64 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDouble)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
double *pfValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetGUID)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
GUID *pguidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStringLength)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetString)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedString)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlobSize)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlob)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedBlob)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUnknown)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
LPVOID *ppv);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetItem)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *DeleteItem)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *DeleteAllItems)(
|
|
IMFMediaEvent* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUINT32)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUINT64)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetDouble)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetGUID)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
REFGUID guidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetString)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
LPCWSTR wszValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBlob)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUnknown)(
|
|
IMFMediaEvent* This,
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *LockStore)(
|
|
IMFMediaEvent* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *UnlockStore)(
|
|
IMFMediaEvent* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCount)(
|
|
IMFMediaEvent* This,
|
|
UINT32 *pcItems);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemByIndex)(
|
|
IMFMediaEvent* This,
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CopyAllItems)(
|
|
IMFMediaEvent* This,
|
|
IMFAttributes *pDest);
|
|
|
|
/*** IMFMediaEvent methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetType)(
|
|
IMFMediaEvent* This,
|
|
MediaEventType *pmet);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetExtendedType)(
|
|
IMFMediaEvent* This,
|
|
GUID *pguidExtendedType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStatus)(
|
|
IMFMediaEvent* This,
|
|
HRESULT *phrStatus);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetValue)(
|
|
IMFMediaEvent* This,
|
|
PROPVARIANT *pvValue);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaEventVtbl;
|
|
interface IMFMediaEvent {
|
|
CONST_VTBL IMFMediaEventVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAttributes methods ***/
|
|
#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)
|
|
/*** IMFMediaEvent methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaEvent_QueryInterface(IMFMediaEvent* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaEvent_AddRef(IMFMediaEvent* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaEvent_Release(IMFMediaEvent* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAttributes methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetItem(IMFMediaEvent* This,REFGUID guidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItem(This,guidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetItemType(IMFMediaEvent* This,REFGUID guidKey,MF_ATTRIBUTE_TYPE *pType) {
|
|
return This->lpVtbl->GetItemType(This,guidKey,pType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_CompareItem(IMFMediaEvent* This,REFGUID guidKey,REFPROPVARIANT Value,WINBOOL *pbResult) {
|
|
return This->lpVtbl->CompareItem(This,guidKey,Value,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_Compare(IMFMediaEvent* This,IMFAttributes *pTheirs,MF_ATTRIBUTES_MATCH_TYPE MatchType,WINBOOL *pbResult) {
|
|
return This->lpVtbl->Compare(This,pTheirs,MatchType,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetUINT32(IMFMediaEvent* This,REFGUID guidKey,UINT32 *punValue) {
|
|
return This->lpVtbl->GetUINT32(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetUINT64(IMFMediaEvent* This,REFGUID guidKey,UINT64 *punValue) {
|
|
return This->lpVtbl->GetUINT64(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetDouble(IMFMediaEvent* This,REFGUID guidKey,double *pfValue) {
|
|
return This->lpVtbl->GetDouble(This,guidKey,pfValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetGUID(IMFMediaEvent* This,REFGUID guidKey,GUID *pguidValue) {
|
|
return This->lpVtbl->GetGUID(This,guidKey,pguidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetStringLength(IMFMediaEvent* This,REFGUID guidKey,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetStringLength(This,guidKey,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetString(IMFMediaEvent* This,REFGUID guidKey,LPWSTR pwszValue,UINT32 cchBufSize,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetString(This,guidKey,pwszValue,cchBufSize,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetAllocatedString(IMFMediaEvent* This,REFGUID guidKey,LPWSTR *ppwszValue,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetAllocatedString(This,guidKey,ppwszValue,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetBlobSize(IMFMediaEvent* This,REFGUID guidKey,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlobSize(This,guidKey,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetBlob(IMFMediaEvent* This,REFGUID guidKey,UINT8 *pBuf,UINT32 cbBufSize,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetAllocatedBlob(IMFMediaEvent* This,REFGUID guidKey,UINT8 **ppBuf,UINT32 *pcbSize) {
|
|
return This->lpVtbl->GetAllocatedBlob(This,guidKey,ppBuf,pcbSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetUnknown(IMFMediaEvent* This,REFGUID guidKey,REFIID riid,LPVOID *ppv) {
|
|
return This->lpVtbl->GetUnknown(This,guidKey,riid,ppv);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_SetItem(IMFMediaEvent* This,REFGUID guidKey,REFPROPVARIANT Value) {
|
|
return This->lpVtbl->SetItem(This,guidKey,Value);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_DeleteItem(IMFMediaEvent* This,REFGUID guidKey) {
|
|
return This->lpVtbl->DeleteItem(This,guidKey);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_DeleteAllItems(IMFMediaEvent* This) {
|
|
return This->lpVtbl->DeleteAllItems(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_SetUINT32(IMFMediaEvent* This,REFGUID guidKey,UINT32 unValue) {
|
|
return This->lpVtbl->SetUINT32(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_SetUINT64(IMFMediaEvent* This,REFGUID guidKey,UINT64 unValue) {
|
|
return This->lpVtbl->SetUINT64(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_SetDouble(IMFMediaEvent* This,REFGUID guidKey,double fValue) {
|
|
return This->lpVtbl->SetDouble(This,guidKey,fValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_SetGUID(IMFMediaEvent* This,REFGUID guidKey,REFGUID guidValue) {
|
|
return This->lpVtbl->SetGUID(This,guidKey,guidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_SetString(IMFMediaEvent* This,REFGUID guidKey,LPCWSTR wszValue) {
|
|
return This->lpVtbl->SetString(This,guidKey,wszValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_SetBlob(IMFMediaEvent* This,REFGUID guidKey,const UINT8 *pBuf,UINT32 cbBufSize) {
|
|
return This->lpVtbl->SetBlob(This,guidKey,pBuf,cbBufSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_SetUnknown(IMFMediaEvent* This,REFGUID guidKey,IUnknown *pUnknown) {
|
|
return This->lpVtbl->SetUnknown(This,guidKey,pUnknown);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_LockStore(IMFMediaEvent* This) {
|
|
return This->lpVtbl->LockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_UnlockStore(IMFMediaEvent* This) {
|
|
return This->lpVtbl->UnlockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetCount(IMFMediaEvent* This,UINT32 *pcItems) {
|
|
return This->lpVtbl->GetCount(This,pcItems);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetItemByIndex(IMFMediaEvent* This,UINT32 unIndex,GUID *pguidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItemByIndex(This,unIndex,pguidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_CopyAllItems(IMFMediaEvent* This,IMFAttributes *pDest) {
|
|
return This->lpVtbl->CopyAllItems(This,pDest);
|
|
}
|
|
/*** IMFMediaEvent methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetType(IMFMediaEvent* This,MediaEventType *pmet) {
|
|
return This->lpVtbl->GetType(This,pmet);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetExtendedType(IMFMediaEvent* This,GUID *pguidExtendedType) {
|
|
return This->lpVtbl->GetExtendedType(This,pguidExtendedType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetStatus(IMFMediaEvent* This,HRESULT *phrStatus) {
|
|
return This->lpVtbl->GetStatus(This,phrStatus);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEvent_GetValue(IMFMediaEvent* This,PROPVARIANT *pvValue) {
|
|
return This->lpVtbl->GetValue(This,pvValue);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEvent_GetType_Proxy(
|
|
IMFMediaEvent* This,
|
|
MediaEventType *pmet);
|
|
void __RPC_STUB IMFMediaEvent_GetType_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEvent_GetExtendedType_Proxy(
|
|
IMFMediaEvent* This,
|
|
GUID *pguidExtendedType);
|
|
void __RPC_STUB IMFMediaEvent_GetExtendedType_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEvent_GetStatus_Proxy(
|
|
IMFMediaEvent* This,
|
|
HRESULT *phrStatus);
|
|
void __RPC_STUB IMFMediaEvent_GetStatus_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEvent_GetValue_Proxy(
|
|
IMFMediaEvent* This,
|
|
PROPVARIANT *pvValue);
|
|
void __RPC_STUB IMFMediaEvent_GetValue_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFMediaEvent_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#define MF_EVENT_FLAG_NO_WAIT 0x00000001
|
|
|
|
#ifndef __IMFRemoteAsyncCallback_FWD_DEFINED__
|
|
#define __IMFRemoteAsyncCallback_FWD_DEFINED__
|
|
typedef interface IMFRemoteAsyncCallback IMFRemoteAsyncCallback;
|
|
#endif
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMFMediaEventGenerator interface
|
|
*/
|
|
#ifndef __IMFMediaEventGenerator_INTERFACE_DEFINED__
|
|
#define __IMFMediaEventGenerator_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFMediaEventGenerator, 0x2cd0bd52, 0xbcd5, 0x4b89, 0xb6,0x2c, 0xea,0xdc,0x0c,0x03,0x1e,0x7d);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("2cd0bd52-bcd5-4b89-b62c-eadc0c031e7d")
|
|
IMFMediaEventGenerator : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetEvent(
|
|
DWORD dwFlags,
|
|
IMFMediaEvent **ppEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginGetEvent(
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndGetEvent(
|
|
IMFAsyncResult *pResult,
|
|
IMFMediaEvent **ppEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueueEvent(
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
const PROPVARIANT *pvValue) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFMediaEventGenerator, 0x2cd0bd52, 0xbcd5, 0x4b89, 0xb6,0x2c, 0xea,0xdc,0x0c,0x03,0x1e,0x7d)
|
|
#endif
|
|
#else
|
|
typedef struct IMFMediaEventGeneratorVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFMediaEventGenerator* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFMediaEventGenerator* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFMediaEventGenerator* This);
|
|
|
|
/*** IMFMediaEventGenerator methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetEvent)(
|
|
IMFMediaEventGenerator* This,
|
|
DWORD dwFlags,
|
|
IMFMediaEvent **ppEvent);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *BeginGetEvent)(
|
|
IMFMediaEventGenerator* This,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *EndGetEvent)(
|
|
IMFMediaEventGenerator* This,
|
|
IMFAsyncResult *pResult,
|
|
IMFMediaEvent **ppEvent);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *QueueEvent)(
|
|
IMFMediaEventGenerator* This,
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
const PROPVARIANT *pvValue);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaEventGeneratorVtbl;
|
|
interface IMFMediaEventGenerator {
|
|
CONST_VTBL IMFMediaEventGeneratorVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFMediaEventGenerator methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaEventGenerator_QueryInterface(IMFMediaEventGenerator* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaEventGenerator_AddRef(IMFMediaEventGenerator* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaEventGenerator_Release(IMFMediaEventGenerator* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFMediaEventGenerator methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaEventGenerator_GetEvent(IMFMediaEventGenerator* This,DWORD dwFlags,IMFMediaEvent **ppEvent) {
|
|
return This->lpVtbl->GetEvent(This,dwFlags,ppEvent);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventGenerator_BeginGetEvent(IMFMediaEventGenerator* This,IMFAsyncCallback *pCallback,IUnknown *punkState) {
|
|
return This->lpVtbl->BeginGetEvent(This,pCallback,punkState);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventGenerator_EndGetEvent(IMFMediaEventGenerator* This,IMFAsyncResult *pResult,IMFMediaEvent **ppEvent) {
|
|
return This->lpVtbl->EndGetEvent(This,pResult,ppEvent);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventGenerator_QueueEvent(IMFMediaEventGenerator* This,MediaEventType met,REFGUID guidExtendedType,HRESULT hrStatus,const PROPVARIANT *pvValue) {
|
|
return This->lpVtbl->QueueEvent(This,met,guidExtendedType,hrStatus,pvValue);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_GetEvent_Proxy(
|
|
IMFMediaEventGenerator* This,
|
|
DWORD dwFlags,
|
|
IMFMediaEvent **ppEvent);
|
|
void __RPC_STUB IMFMediaEventGenerator_GetEvent_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_RemoteBeginGetEvent_Proxy(
|
|
IMFMediaEventGenerator* This,
|
|
IMFRemoteAsyncCallback *pCallback);
|
|
void __RPC_STUB IMFMediaEventGenerator_RemoteBeginGetEvent_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_RemoteEndGetEvent_Proxy(
|
|
IMFMediaEventGenerator* This,
|
|
IUnknown *pResult,
|
|
DWORD *pcbEvent,
|
|
BYTE **ppbEvent);
|
|
void __RPC_STUB IMFMediaEventGenerator_RemoteEndGetEvent_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventGenerator_QueueEvent_Proxy(
|
|
IMFMediaEventGenerator* This,
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
const PROPVARIANT *pvValue);
|
|
void __RPC_STUB IMFMediaEventGenerator_QueueEvent_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT CALLBACK IMFMediaEventGenerator_BeginGetEvent_Proxy(
|
|
IMFMediaEventGenerator* This,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
HRESULT __RPC_STUB IMFMediaEventGenerator_BeginGetEvent_Stub(
|
|
IMFMediaEventGenerator* This,
|
|
IMFRemoteAsyncCallback *pCallback);
|
|
HRESULT CALLBACK IMFMediaEventGenerator_EndGetEvent_Proxy(
|
|
IMFMediaEventGenerator* This,
|
|
IMFAsyncResult *pResult,
|
|
IMFMediaEvent **ppEvent);
|
|
HRESULT __RPC_STUB IMFMediaEventGenerator_EndGetEvent_Stub(
|
|
IMFMediaEventGenerator* This,
|
|
IUnknown *pResult,
|
|
DWORD *pcbEvent,
|
|
BYTE **ppbEvent);
|
|
|
|
#endif /* __IMFMediaEventGenerator_INTERFACE_DEFINED__ */
|
|
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
/*****************************************************************************
|
|
* IMFRemoteAsyncCallback interface
|
|
*/
|
|
#ifndef __IMFRemoteAsyncCallback_INTERFACE_DEFINED__
|
|
#define __IMFRemoteAsyncCallback_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFRemoteAsyncCallback, 0xa27003d0, 0x2354, 0x4f2a, 0x8d,0x6a, 0xab,0x7c,0xff,0x15,0x43,0x7e);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("a27003d0-2354-4f2a-8d6a-ab7cff15437e")
|
|
IMFRemoteAsyncCallback : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE Invoke(
|
|
HRESULT hr,
|
|
IUnknown *pRemoteResult) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFRemoteAsyncCallback, 0xa27003d0, 0x2354, 0x4f2a, 0x8d,0x6a, 0xab,0x7c,0xff,0x15,0x43,0x7e)
|
|
#endif
|
|
#else
|
|
typedef struct IMFRemoteAsyncCallbackVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFRemoteAsyncCallback* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFRemoteAsyncCallback* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFRemoteAsyncCallback* This);
|
|
|
|
/*** IMFRemoteAsyncCallback methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *Invoke)(
|
|
IMFRemoteAsyncCallback* This,
|
|
HRESULT hr,
|
|
IUnknown *pRemoteResult);
|
|
|
|
END_INTERFACE
|
|
} IMFRemoteAsyncCallbackVtbl;
|
|
interface IMFRemoteAsyncCallback {
|
|
CONST_VTBL IMFRemoteAsyncCallbackVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFRemoteAsyncCallback methods ***/
|
|
#define IMFRemoteAsyncCallback_Invoke(This,hr,pRemoteResult) (This)->lpVtbl->Invoke(This,hr,pRemoteResult)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFRemoteAsyncCallback_QueryInterface(IMFRemoteAsyncCallback* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFRemoteAsyncCallback_AddRef(IMFRemoteAsyncCallback* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFRemoteAsyncCallback_Release(IMFRemoteAsyncCallback* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFRemoteAsyncCallback methods ***/
|
|
static FORCEINLINE HRESULT IMFRemoteAsyncCallback_Invoke(IMFRemoteAsyncCallback* This,HRESULT hr,IUnknown *pRemoteResult) {
|
|
return This->lpVtbl->Invoke(This,hr,pRemoteResult);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFRemoteAsyncCallback_Invoke_Proxy(
|
|
IMFRemoteAsyncCallback* This,
|
|
HRESULT hr,
|
|
IUnknown *pRemoteResult);
|
|
void __RPC_STUB IMFRemoteAsyncCallback_Invoke_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFRemoteAsyncCallback_INTERFACE_DEFINED__ */
|
|
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
|
|
typedef enum _MFBYTESTREAM_SEEK_ORIGIN {
|
|
msoBegin = 0,
|
|
msoCurrent = 1
|
|
} MFBYTESTREAM_SEEK_ORIGIN;
|
|
|
|
/*****************************************************************************
|
|
* IMFByteStream interface
|
|
*/
|
|
#ifndef __IMFByteStream_INTERFACE_DEFINED__
|
|
#define __IMFByteStream_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFByteStream, 0xad4c1b00, 0x4bf7, 0x422f, 0x91,0x75, 0x75,0x66,0x93,0xd9,0x13,0x0d);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("ad4c1b00-4bf7-422f-9175-756693d9130d")
|
|
IMFByteStream : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetCapabilities(
|
|
DWORD *pdwCapabilities) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetLength(
|
|
QWORD *pqwLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetLength(
|
|
QWORD qwLength) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetCurrentPosition(
|
|
QWORD *pqwPosition) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetCurrentPosition(
|
|
QWORD qwPosition) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsEndOfStream(
|
|
WINBOOL *pfEndOfStream) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Read(
|
|
BYTE *pb,
|
|
ULONG cb,
|
|
ULONG *pcbRead) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginRead(
|
|
BYTE *pb,
|
|
ULONG cb,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndRead(
|
|
IMFAsyncResult *pResult,
|
|
ULONG *pcbRead) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Write(
|
|
const BYTE *pb,
|
|
ULONG cb,
|
|
ULONG *pcbWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginWrite(
|
|
const BYTE *pb,
|
|
ULONG cb,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndWrite(
|
|
IMFAsyncResult *pResult,
|
|
ULONG *pcbWritten) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Seek(
|
|
MFBYTESTREAM_SEEK_ORIGIN SeekOrigin,
|
|
LONGLONG llSeekOffset,
|
|
DWORD dwSeekFlags,
|
|
QWORD *pqwCurrentPosition) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Flush(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Close(
|
|
) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFByteStream, 0xad4c1b00, 0x4bf7, 0x422f, 0x91,0x75, 0x75,0x66,0x93,0xd9,0x13,0x0d)
|
|
#endif
|
|
#else
|
|
typedef struct IMFByteStreamVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFByteStream* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFByteStream* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFByteStream* This);
|
|
|
|
/*** IMFByteStream methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetCapabilities)(
|
|
IMFByteStream* This,
|
|
DWORD *pdwCapabilities);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetLength)(
|
|
IMFByteStream* This,
|
|
QWORD *pqwLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetLength)(
|
|
IMFByteStream* This,
|
|
QWORD qwLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCurrentPosition)(
|
|
IMFByteStream* This,
|
|
QWORD *pqwPosition);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetCurrentPosition)(
|
|
IMFByteStream* This,
|
|
QWORD qwPosition);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsEndOfStream)(
|
|
IMFByteStream* This,
|
|
WINBOOL *pfEndOfStream);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Read)(
|
|
IMFByteStream* This,
|
|
BYTE *pb,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *BeginRead)(
|
|
IMFByteStream* This,
|
|
BYTE *pb,
|
|
ULONG cb,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *EndRead)(
|
|
IMFByteStream* This,
|
|
IMFAsyncResult *pResult,
|
|
ULONG *pcbRead);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Write)(
|
|
IMFByteStream* This,
|
|
const BYTE *pb,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *BeginWrite)(
|
|
IMFByteStream* This,
|
|
const BYTE *pb,
|
|
ULONG cb,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *EndWrite)(
|
|
IMFByteStream* This,
|
|
IMFAsyncResult *pResult,
|
|
ULONG *pcbWritten);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Seek)(
|
|
IMFByteStream* This,
|
|
MFBYTESTREAM_SEEK_ORIGIN SeekOrigin,
|
|
LONGLONG llSeekOffset,
|
|
DWORD dwSeekFlags,
|
|
QWORD *pqwCurrentPosition);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Flush)(
|
|
IMFByteStream* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Close)(
|
|
IMFByteStream* This);
|
|
|
|
END_INTERFACE
|
|
} IMFByteStreamVtbl;
|
|
interface IMFByteStream {
|
|
CONST_VTBL IMFByteStreamVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFByteStream methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFByteStream_QueryInterface(IMFByteStream* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFByteStream_AddRef(IMFByteStream* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFByteStream_Release(IMFByteStream* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFByteStream methods ***/
|
|
static FORCEINLINE HRESULT IMFByteStream_GetCapabilities(IMFByteStream* This,DWORD *pdwCapabilities) {
|
|
return This->lpVtbl->GetCapabilities(This,pdwCapabilities);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_GetLength(IMFByteStream* This,QWORD *pqwLength) {
|
|
return This->lpVtbl->GetLength(This,pqwLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_SetLength(IMFByteStream* This,QWORD qwLength) {
|
|
return This->lpVtbl->SetLength(This,qwLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_GetCurrentPosition(IMFByteStream* This,QWORD *pqwPosition) {
|
|
return This->lpVtbl->GetCurrentPosition(This,pqwPosition);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_SetCurrentPosition(IMFByteStream* This,QWORD qwPosition) {
|
|
return This->lpVtbl->SetCurrentPosition(This,qwPosition);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_IsEndOfStream(IMFByteStream* This,WINBOOL *pfEndOfStream) {
|
|
return This->lpVtbl->IsEndOfStream(This,pfEndOfStream);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_Read(IMFByteStream* This,BYTE *pb,ULONG cb,ULONG *pcbRead) {
|
|
return This->lpVtbl->Read(This,pb,cb,pcbRead);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_BeginRead(IMFByteStream* This,BYTE *pb,ULONG cb,IMFAsyncCallback *pCallback,IUnknown *punkState) {
|
|
return This->lpVtbl->BeginRead(This,pb,cb,pCallback,punkState);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_EndRead(IMFByteStream* This,IMFAsyncResult *pResult,ULONG *pcbRead) {
|
|
return This->lpVtbl->EndRead(This,pResult,pcbRead);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_Write(IMFByteStream* This,const BYTE *pb,ULONG cb,ULONG *pcbWritten) {
|
|
return This->lpVtbl->Write(This,pb,cb,pcbWritten);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_BeginWrite(IMFByteStream* This,const BYTE *pb,ULONG cb,IMFAsyncCallback *pCallback,IUnknown *punkState) {
|
|
return This->lpVtbl->BeginWrite(This,pb,cb,pCallback,punkState);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_EndWrite(IMFByteStream* This,IMFAsyncResult *pResult,ULONG *pcbWritten) {
|
|
return This->lpVtbl->EndWrite(This,pResult,pcbWritten);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_Seek(IMFByteStream* This,MFBYTESTREAM_SEEK_ORIGIN SeekOrigin,LONGLONG llSeekOffset,DWORD dwSeekFlags,QWORD *pqwCurrentPosition) {
|
|
return This->lpVtbl->Seek(This,SeekOrigin,llSeekOffset,dwSeekFlags,pqwCurrentPosition);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_Flush(IMFByteStream* This) {
|
|
return This->lpVtbl->Flush(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFByteStream_Close(IMFByteStream* This) {
|
|
return This->lpVtbl->Close(This);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_GetCapabilities_Proxy(
|
|
IMFByteStream* This,
|
|
DWORD *pdwCapabilities);
|
|
void __RPC_STUB IMFByteStream_GetCapabilities_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_GetLength_Proxy(
|
|
IMFByteStream* This,
|
|
QWORD *pqwLength);
|
|
void __RPC_STUB IMFByteStream_GetLength_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_SetLength_Proxy(
|
|
IMFByteStream* This,
|
|
QWORD qwLength);
|
|
void __RPC_STUB IMFByteStream_SetLength_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_GetCurrentPosition_Proxy(
|
|
IMFByteStream* This,
|
|
QWORD *pqwPosition);
|
|
void __RPC_STUB IMFByteStream_GetCurrentPosition_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_SetCurrentPosition_Proxy(
|
|
IMFByteStream* This,
|
|
QWORD qwPosition);
|
|
void __RPC_STUB IMFByteStream_SetCurrentPosition_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_IsEndOfStream_Proxy(
|
|
IMFByteStream* This,
|
|
WINBOOL *pfEndOfStream);
|
|
void __RPC_STUB IMFByteStream_IsEndOfStream_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_Read_Proxy(
|
|
IMFByteStream* This,
|
|
BYTE *pb,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
void __RPC_STUB IMFByteStream_Read_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_RemoteBeginRead_Proxy(
|
|
IMFByteStream* This,
|
|
ULONG cb,
|
|
IMFRemoteAsyncCallback *pCallback);
|
|
void __RPC_STUB IMFByteStream_RemoteBeginRead_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_RemoteEndRead_Proxy(
|
|
IMFByteStream* This,
|
|
IUnknown *punkResult,
|
|
BYTE *pb,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
void __RPC_STUB IMFByteStream_RemoteEndRead_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_Write_Proxy(
|
|
IMFByteStream* This,
|
|
const BYTE *pb,
|
|
ULONG cb,
|
|
ULONG *pcbWritten);
|
|
void __RPC_STUB IMFByteStream_Write_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_RemoteBeginWrite_Proxy(
|
|
IMFByteStream* This,
|
|
const BYTE *pb,
|
|
ULONG cb,
|
|
IMFRemoteAsyncCallback *pCallback);
|
|
void __RPC_STUB IMFByteStream_RemoteBeginWrite_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_RemoteEndWrite_Proxy(
|
|
IMFByteStream* This,
|
|
IUnknown *punkResult,
|
|
ULONG *pcbWritten);
|
|
void __RPC_STUB IMFByteStream_RemoteEndWrite_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_Seek_Proxy(
|
|
IMFByteStream* This,
|
|
MFBYTESTREAM_SEEK_ORIGIN SeekOrigin,
|
|
LONGLONG llSeekOffset,
|
|
DWORD dwSeekFlags,
|
|
QWORD *pqwCurrentPosition);
|
|
void __RPC_STUB IMFByteStream_Seek_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_Flush_Proxy(
|
|
IMFByteStream* This);
|
|
void __RPC_STUB IMFByteStream_Flush_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFByteStream_Close_Proxy(
|
|
IMFByteStream* This);
|
|
void __RPC_STUB IMFByteStream_Close_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT CALLBACK IMFByteStream_BeginRead_Proxy(
|
|
IMFByteStream* This,
|
|
BYTE *pb,
|
|
ULONG cb,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
HRESULT __RPC_STUB IMFByteStream_BeginRead_Stub(
|
|
IMFByteStream* This,
|
|
ULONG cb,
|
|
IMFRemoteAsyncCallback *pCallback);
|
|
HRESULT CALLBACK IMFByteStream_EndRead_Proxy(
|
|
IMFByteStream* This,
|
|
IMFAsyncResult *pResult,
|
|
ULONG *pcbRead);
|
|
HRESULT __RPC_STUB IMFByteStream_EndRead_Stub(
|
|
IMFByteStream* This,
|
|
IUnknown *punkResult,
|
|
BYTE *pb,
|
|
ULONG cb,
|
|
ULONG *pcbRead);
|
|
HRESULT CALLBACK IMFByteStream_BeginWrite_Proxy(
|
|
IMFByteStream* This,
|
|
const BYTE *pb,
|
|
ULONG cb,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
HRESULT __RPC_STUB IMFByteStream_BeginWrite_Stub(
|
|
IMFByteStream* This,
|
|
const BYTE *pb,
|
|
ULONG cb,
|
|
IMFRemoteAsyncCallback *pCallback);
|
|
HRESULT CALLBACK IMFByteStream_EndWrite_Proxy(
|
|
IMFByteStream* This,
|
|
IMFAsyncResult *pResult,
|
|
ULONG *pcbWritten);
|
|
HRESULT __RPC_STUB IMFByteStream_EndWrite_Stub(
|
|
IMFByteStream* This,
|
|
IUnknown *punkResult,
|
|
ULONG *pcbWritten);
|
|
|
|
#endif /* __IMFByteStream_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#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
|
|
#if WINVER >= _WIN32_WINNT_WIN8
|
|
#define MFBYTESTREAM_DOES_NOT_USE_NETWORK 0x00000800
|
|
#endif
|
|
|
|
#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);
|
|
EXTERN_GUID( MF_BYTESTREAM_EFFECTIVE_URL, 0x9afa0209, 0x89d1, 0x42af, 0x84, 0x56, 0x1d, 0xe6, 0xb5, 0x62, 0xd6, 0x91);
|
|
EXTERN_GUID( MF_BYTESTREAM_TRANSCODED, 0xb6c5c282, 0x4dc9, 0x4db9, 0xab, 0x48, 0xcf, 0x3b, 0x6d, 0x8b, 0xc5, 0xe0 );
|
|
#endif
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
EXTERN_GUID(CLSID_MFByteStreamProxyClassFactory, 0x770e8e77, 0x4916, 0x441c, 0xa9, 0xa7, 0xb3, 0x42, 0xd0, 0xee, 0xbc, 0x71 );
|
|
|
|
/*****************************************************************************
|
|
* IMFByteStreamProxyClassFactory interface
|
|
*/
|
|
#ifndef __IMFByteStreamProxyClassFactory_INTERFACE_DEFINED__
|
|
#define __IMFByteStreamProxyClassFactory_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFByteStreamProxyClassFactory, 0xa6b43f84, 0x5c0a, 0x42e8, 0xa4,0x4d, 0xb1,0x85,0x7a,0x76,0x99,0x2f);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("a6b43f84-5c0a-42e8-a44d-b1857a76992f")
|
|
IMFByteStreamProxyClassFactory : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE CreateByteStreamProxy(
|
|
IMFByteStream *pByteStream,
|
|
IMFAttributes *pAttributes,
|
|
REFIID riid,
|
|
LPVOID *ppvObject) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFByteStreamProxyClassFactory, 0xa6b43f84, 0x5c0a, 0x42e8, 0xa4,0x4d, 0xb1,0x85,0x7a,0x76,0x99,0x2f)
|
|
#endif
|
|
#else
|
|
typedef struct IMFByteStreamProxyClassFactoryVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFByteStreamProxyClassFactory* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFByteStreamProxyClassFactory* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFByteStreamProxyClassFactory* This);
|
|
|
|
/*** IMFByteStreamProxyClassFactory methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *CreateByteStreamProxy)(
|
|
IMFByteStreamProxyClassFactory* This,
|
|
IMFByteStream *pByteStream,
|
|
IMFAttributes *pAttributes,
|
|
REFIID riid,
|
|
LPVOID *ppvObject);
|
|
|
|
END_INTERFACE
|
|
} IMFByteStreamProxyClassFactoryVtbl;
|
|
interface IMFByteStreamProxyClassFactory {
|
|
CONST_VTBL IMFByteStreamProxyClassFactoryVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#define IMFByteStreamProxyClassFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
|
#define IMFByteStreamProxyClassFactory_AddRef(This) (This)->lpVtbl->AddRef(This)
|
|
#define IMFByteStreamProxyClassFactory_Release(This) (This)->lpVtbl->Release(This)
|
|
/*** IMFByteStreamProxyClassFactory methods ***/
|
|
#define IMFByteStreamProxyClassFactory_CreateByteStreamProxy(This,pByteStream,pAttributes,riid,ppvObject) (This)->lpVtbl->CreateByteStreamProxy(This,pByteStream,pAttributes,riid,ppvObject)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFByteStreamProxyClassFactory_QueryInterface(IMFByteStreamProxyClassFactory* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFByteStreamProxyClassFactory_AddRef(IMFByteStreamProxyClassFactory* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFByteStreamProxyClassFactory_Release(IMFByteStreamProxyClassFactory* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFByteStreamProxyClassFactory methods ***/
|
|
static FORCEINLINE HRESULT IMFByteStreamProxyClassFactory_CreateByteStreamProxy(IMFByteStreamProxyClassFactory* This,IMFByteStream *pByteStream,IMFAttributes *pAttributes,REFIID riid,LPVOID *ppvObject) {
|
|
return This->lpVtbl->CreateByteStreamProxy(This,pByteStream,pAttributes,riid,ppvObject);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFByteStreamProxyClassFactory_CreateByteStreamProxy_Proxy(
|
|
IMFByteStreamProxyClassFactory* This,
|
|
IMFByteStream *pByteStream,
|
|
IMFAttributes *pAttributes,
|
|
REFIID riid,
|
|
LPVOID *ppvObject);
|
|
void __RPC_STUB IMFByteStreamProxyClassFactory_CreateByteStreamProxy_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFByteStreamProxyClassFactory_INTERFACE_DEFINED__ */
|
|
|
|
|
|
typedef enum __WIDL_mfobjects_generated_name_00000017 {
|
|
MF_ACCESSMODE_READ = 1,
|
|
MF_ACCESSMODE_WRITE = 2,
|
|
MF_ACCESSMODE_READWRITE = 3
|
|
} MF_FILE_ACCESSMODE;
|
|
|
|
typedef enum __WIDL_mfobjects_generated_name_00000018 {
|
|
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 enum __WIDL_mfobjects_generated_name_00000019 {
|
|
MF_FILEFLAGS_NONE = 0x0,
|
|
MF_FILEFLAGS_NOBUFFERING = 0x1
|
|
} MF_FILE_FLAGS;
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
/*****************************************************************************
|
|
* IMFSampleOutputStream interface
|
|
*/
|
|
#ifndef __IMFSampleOutputStream_INTERFACE_DEFINED__
|
|
#define __IMFSampleOutputStream_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFSampleOutputStream, 0x8feed468, 0x6f7e, 0x440d, 0x86,0x9a, 0x49,0xbd,0xd2,0x83,0xad,0x0d);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("8feed468-6f7e-440d-869a-49bdd283ad0d")
|
|
IMFSampleOutputStream : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE BeginWriteSample(
|
|
IMFSample *pSample,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndWriteSample(
|
|
IMFAsyncResult *pResult) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Close(
|
|
) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFSampleOutputStream, 0x8feed468, 0x6f7e, 0x440d, 0x86,0x9a, 0x49,0xbd,0xd2,0x83,0xad,0x0d)
|
|
#endif
|
|
#else
|
|
typedef struct IMFSampleOutputStreamVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFSampleOutputStream* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFSampleOutputStream* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFSampleOutputStream* This);
|
|
|
|
/*** IMFSampleOutputStream methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *BeginWriteSample)(
|
|
IMFSampleOutputStream* This,
|
|
IMFSample *pSample,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *EndWriteSample)(
|
|
IMFSampleOutputStream* This,
|
|
IMFAsyncResult *pResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Close)(
|
|
IMFSampleOutputStream* This);
|
|
|
|
END_INTERFACE
|
|
} IMFSampleOutputStreamVtbl;
|
|
interface IMFSampleOutputStream {
|
|
CONST_VTBL IMFSampleOutputStreamVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#define IMFSampleOutputStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
|
#define IMFSampleOutputStream_AddRef(This) (This)->lpVtbl->AddRef(This)
|
|
#define IMFSampleOutputStream_Release(This) (This)->lpVtbl->Release(This)
|
|
/*** IMFSampleOutputStream methods ***/
|
|
#define IMFSampleOutputStream_BeginWriteSample(This,pSample,pCallback,punkState) (This)->lpVtbl->BeginWriteSample(This,pSample,pCallback,punkState)
|
|
#define IMFSampleOutputStream_EndWriteSample(This,pResult) (This)->lpVtbl->EndWriteSample(This,pResult)
|
|
#define IMFSampleOutputStream_Close(This) (This)->lpVtbl->Close(This)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFSampleOutputStream_QueryInterface(IMFSampleOutputStream* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFSampleOutputStream_AddRef(IMFSampleOutputStream* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFSampleOutputStream_Release(IMFSampleOutputStream* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFSampleOutputStream methods ***/
|
|
static FORCEINLINE HRESULT IMFSampleOutputStream_BeginWriteSample(IMFSampleOutputStream* This,IMFSample *pSample,IMFAsyncCallback *pCallback,IUnknown *punkState) {
|
|
return This->lpVtbl->BeginWriteSample(This,pSample,pCallback,punkState);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSampleOutputStream_EndWriteSample(IMFSampleOutputStream* This,IMFAsyncResult *pResult) {
|
|
return This->lpVtbl->EndWriteSample(This,pResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFSampleOutputStream_Close(IMFSampleOutputStream* This) {
|
|
return This->lpVtbl->Close(This);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFSampleOutputStream_BeginWriteSample_Proxy(
|
|
IMFSampleOutputStream* This,
|
|
IMFSample *pSample,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
void __RPC_STUB IMFSampleOutputStream_BeginWriteSample_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSampleOutputStream_EndWriteSample_Proxy(
|
|
IMFSampleOutputStream* This,
|
|
IMFAsyncResult *pResult);
|
|
void __RPC_STUB IMFSampleOutputStream_EndWriteSample_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFSampleOutputStream_Close_Proxy(
|
|
IMFSampleOutputStream* This);
|
|
void __RPC_STUB IMFSampleOutputStream_Close_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFSampleOutputStream_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMFCollection interface
|
|
*/
|
|
#ifndef __IMFCollection_INTERFACE_DEFINED__
|
|
#define __IMFCollection_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFCollection, 0x5bc8a76b, 0x869a, 0x46a3, 0x9b,0x03, 0xfa,0x21,0x8a,0x66,0xae,0xbe);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("5bc8a76b-869a-46a3-9b03-fa218a66aebe")
|
|
IMFCollection : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetElementCount(
|
|
DWORD *pcElements) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetElement(
|
|
DWORD dwElementIndex,
|
|
IUnknown **ppUnkElement) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE AddElement(
|
|
IUnknown *pUnkElement) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RemoveElement(
|
|
DWORD dwElementIndex,
|
|
IUnknown **ppUnkElement) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE InsertElementAt(
|
|
DWORD dwIndex,
|
|
IUnknown *pUnknown) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RemoveAllElements(
|
|
) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFCollection, 0x5bc8a76b, 0x869a, 0x46a3, 0x9b,0x03, 0xfa,0x21,0x8a,0x66,0xae,0xbe)
|
|
#endif
|
|
#else
|
|
typedef struct IMFCollectionVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFCollection* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFCollection* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFCollection* This);
|
|
|
|
/*** IMFCollection methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetElementCount)(
|
|
IMFCollection* This,
|
|
DWORD *pcElements);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetElement)(
|
|
IMFCollection* This,
|
|
DWORD dwElementIndex,
|
|
IUnknown **ppUnkElement);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *AddElement)(
|
|
IMFCollection* This,
|
|
IUnknown *pUnkElement);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *RemoveElement)(
|
|
IMFCollection* This,
|
|
DWORD dwElementIndex,
|
|
IUnknown **ppUnkElement);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *InsertElementAt)(
|
|
IMFCollection* This,
|
|
DWORD dwIndex,
|
|
IUnknown *pUnknown);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *RemoveAllElements)(
|
|
IMFCollection* This);
|
|
|
|
END_INTERFACE
|
|
} IMFCollectionVtbl;
|
|
interface IMFCollection {
|
|
CONST_VTBL IMFCollectionVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFCollection methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFCollection_QueryInterface(IMFCollection* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFCollection_AddRef(IMFCollection* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFCollection_Release(IMFCollection* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFCollection methods ***/
|
|
static FORCEINLINE HRESULT IMFCollection_GetElementCount(IMFCollection* This,DWORD *pcElements) {
|
|
return This->lpVtbl->GetElementCount(This,pcElements);
|
|
}
|
|
static FORCEINLINE HRESULT IMFCollection_GetElement(IMFCollection* This,DWORD dwElementIndex,IUnknown **ppUnkElement) {
|
|
return This->lpVtbl->GetElement(This,dwElementIndex,ppUnkElement);
|
|
}
|
|
static FORCEINLINE HRESULT IMFCollection_AddElement(IMFCollection* This,IUnknown *pUnkElement) {
|
|
return This->lpVtbl->AddElement(This,pUnkElement);
|
|
}
|
|
static FORCEINLINE HRESULT IMFCollection_RemoveElement(IMFCollection* This,DWORD dwElementIndex,IUnknown **ppUnkElement) {
|
|
return This->lpVtbl->RemoveElement(This,dwElementIndex,ppUnkElement);
|
|
}
|
|
static FORCEINLINE HRESULT IMFCollection_InsertElementAt(IMFCollection* This,DWORD dwIndex,IUnknown *pUnknown) {
|
|
return This->lpVtbl->InsertElementAt(This,dwIndex,pUnknown);
|
|
}
|
|
static FORCEINLINE HRESULT IMFCollection_RemoveAllElements(IMFCollection* This) {
|
|
return This->lpVtbl->RemoveAllElements(This);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFCollection_GetElementCount_Proxy(
|
|
IMFCollection* This,
|
|
DWORD *pcElements);
|
|
void __RPC_STUB IMFCollection_GetElementCount_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFCollection_GetElement_Proxy(
|
|
IMFCollection* This,
|
|
DWORD dwElementIndex,
|
|
IUnknown **ppUnkElement);
|
|
void __RPC_STUB IMFCollection_GetElement_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFCollection_AddElement_Proxy(
|
|
IMFCollection* This,
|
|
IUnknown *pUnkElement);
|
|
void __RPC_STUB IMFCollection_AddElement_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFCollection_RemoveElement_Proxy(
|
|
IMFCollection* This,
|
|
DWORD dwElementIndex,
|
|
IUnknown **ppUnkElement);
|
|
void __RPC_STUB IMFCollection_RemoveElement_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFCollection_InsertElementAt_Proxy(
|
|
IMFCollection* This,
|
|
DWORD dwIndex,
|
|
IUnknown *pUnknown);
|
|
void __RPC_STUB IMFCollection_InsertElementAt_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFCollection_RemoveAllElements_Proxy(
|
|
IMFCollection* This);
|
|
void __RPC_STUB IMFCollection_RemoveAllElements_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFCollection_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMFMediaEventQueue interface
|
|
*/
|
|
#ifndef __IMFMediaEventQueue_INTERFACE_DEFINED__
|
|
#define __IMFMediaEventQueue_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFMediaEventQueue, 0x36f846fc, 0x2256, 0x48b6, 0xb5,0x8e, 0xe2,0xb6,0x38,0x31,0x65,0x81);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("36f846fc-2256-48b6-b58e-e2b638316581")
|
|
IMFMediaEventQueue : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetEvent(
|
|
DWORD dwFlags,
|
|
IMFMediaEvent **ppEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BeginGetEvent(
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE EndGetEvent(
|
|
IMFAsyncResult *pResult,
|
|
IMFMediaEvent **ppEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueueEvent(
|
|
IMFMediaEvent *pEvent) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueueEventParamVar(
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
const PROPVARIANT *pvValue) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueueEventParamUnk(
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
IUnknown *pUnk) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Shutdown(
|
|
) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFMediaEventQueue, 0x36f846fc, 0x2256, 0x48b6, 0xb5,0x8e, 0xe2,0xb6,0x38,0x31,0x65,0x81)
|
|
#endif
|
|
#else
|
|
typedef struct IMFMediaEventQueueVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFMediaEventQueue* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFMediaEventQueue* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFMediaEventQueue* This);
|
|
|
|
/*** IMFMediaEventQueue methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetEvent)(
|
|
IMFMediaEventQueue* This,
|
|
DWORD dwFlags,
|
|
IMFMediaEvent **ppEvent);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *BeginGetEvent)(
|
|
IMFMediaEventQueue* This,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *EndGetEvent)(
|
|
IMFMediaEventQueue* This,
|
|
IMFAsyncResult *pResult,
|
|
IMFMediaEvent **ppEvent);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *QueueEvent)(
|
|
IMFMediaEventQueue* This,
|
|
IMFMediaEvent *pEvent);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *QueueEventParamVar)(
|
|
IMFMediaEventQueue* This,
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
const PROPVARIANT *pvValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *QueueEventParamUnk)(
|
|
IMFMediaEventQueue* This,
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
IUnknown *pUnk);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Shutdown)(
|
|
IMFMediaEventQueue* This);
|
|
|
|
END_INTERFACE
|
|
} IMFMediaEventQueueVtbl;
|
|
interface IMFMediaEventQueue {
|
|
CONST_VTBL IMFMediaEventQueueVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFMediaEventQueue methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaEventQueue_QueryInterface(IMFMediaEventQueue* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaEventQueue_AddRef(IMFMediaEventQueue* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFMediaEventQueue_Release(IMFMediaEventQueue* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFMediaEventQueue methods ***/
|
|
static FORCEINLINE HRESULT IMFMediaEventQueue_GetEvent(IMFMediaEventQueue* This,DWORD dwFlags,IMFMediaEvent **ppEvent) {
|
|
return This->lpVtbl->GetEvent(This,dwFlags,ppEvent);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventQueue_BeginGetEvent(IMFMediaEventQueue* This,IMFAsyncCallback *pCallback,IUnknown *punkState) {
|
|
return This->lpVtbl->BeginGetEvent(This,pCallback,punkState);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventQueue_EndGetEvent(IMFMediaEventQueue* This,IMFAsyncResult *pResult,IMFMediaEvent **ppEvent) {
|
|
return This->lpVtbl->EndGetEvent(This,pResult,ppEvent);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventQueue_QueueEvent(IMFMediaEventQueue* This,IMFMediaEvent *pEvent) {
|
|
return This->lpVtbl->QueueEvent(This,pEvent);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventQueue_QueueEventParamVar(IMFMediaEventQueue* This,MediaEventType met,REFGUID guidExtendedType,HRESULT hrStatus,const PROPVARIANT *pvValue) {
|
|
return This->lpVtbl->QueueEventParamVar(This,met,guidExtendedType,hrStatus,pvValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventQueue_QueueEventParamUnk(IMFMediaEventQueue* This,MediaEventType met,REFGUID guidExtendedType,HRESULT hrStatus,IUnknown *pUnk) {
|
|
return This->lpVtbl->QueueEventParamUnk(This,met,guidExtendedType,hrStatus,pUnk);
|
|
}
|
|
static FORCEINLINE HRESULT IMFMediaEventQueue_Shutdown(IMFMediaEventQueue* This) {
|
|
return This->lpVtbl->Shutdown(This);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventQueue_GetEvent_Proxy(
|
|
IMFMediaEventQueue* This,
|
|
DWORD dwFlags,
|
|
IMFMediaEvent **ppEvent);
|
|
void __RPC_STUB IMFMediaEventQueue_GetEvent_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventQueue_BeginGetEvent_Proxy(
|
|
IMFMediaEventQueue* This,
|
|
IMFAsyncCallback *pCallback,
|
|
IUnknown *punkState);
|
|
void __RPC_STUB IMFMediaEventQueue_BeginGetEvent_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventQueue_EndGetEvent_Proxy(
|
|
IMFMediaEventQueue* This,
|
|
IMFAsyncResult *pResult,
|
|
IMFMediaEvent **ppEvent);
|
|
void __RPC_STUB IMFMediaEventQueue_EndGetEvent_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventQueue_QueueEvent_Proxy(
|
|
IMFMediaEventQueue* This,
|
|
IMFMediaEvent *pEvent);
|
|
void __RPC_STUB IMFMediaEventQueue_QueueEvent_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventQueue_QueueEventParamVar_Proxy(
|
|
IMFMediaEventQueue* This,
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
const PROPVARIANT *pvValue);
|
|
void __RPC_STUB IMFMediaEventQueue_QueueEventParamVar_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventQueue_QueueEventParamUnk_Proxy(
|
|
IMFMediaEventQueue* This,
|
|
MediaEventType met,
|
|
REFGUID guidExtendedType,
|
|
HRESULT hrStatus,
|
|
IUnknown *pUnk);
|
|
void __RPC_STUB IMFMediaEventQueue_QueueEventParamUnk_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFMediaEventQueue_Shutdown_Proxy(
|
|
IMFMediaEventQueue* This);
|
|
void __RPC_STUB IMFMediaEventQueue_Shutdown_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFMediaEventQueue_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/*****************************************************************************
|
|
* IMFActivate interface
|
|
*/
|
|
#ifndef __IMFActivate_INTERFACE_DEFINED__
|
|
#define __IMFActivate_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFActivate, 0x7fee9e9a, 0x4a89, 0x47a6, 0x89,0x9c, 0xb6,0xa5,0x3a,0x70,0xfb,0x67);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("7fee9e9a-4a89-47a6-899c-b6a53a70fb67")
|
|
IMFActivate : public IMFAttributes
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE ActivateObject(
|
|
REFIID riid,
|
|
void **ppv) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ShutdownObject(
|
|
) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DetachObject(
|
|
) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFActivate, 0x7fee9e9a, 0x4a89, 0x47a6, 0x89,0x9c, 0xb6,0xa5,0x3a,0x70,0xfb,0x67)
|
|
#endif
|
|
#else
|
|
typedef struct IMFActivateVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFActivate* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFActivate* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFActivate* This);
|
|
|
|
/*** IMFAttributes methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetItem)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemType)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
MF_ATTRIBUTE_TYPE *pType);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CompareItem)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *Compare)(
|
|
IMFActivate* This,
|
|
IMFAttributes *pTheirs,
|
|
MF_ATTRIBUTES_MATCH_TYPE MatchType,
|
|
WINBOOL *pbResult);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT32)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
UINT32 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUINT64)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
UINT64 *punValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDouble)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
double *pfValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetGUID)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
GUID *pguidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetStringLength)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetString)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
LPWSTR pwszValue,
|
|
UINT32 cchBufSize,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedString)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
LPWSTR *ppwszValue,
|
|
UINT32 *pcchLength);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlobSize)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetBlob)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
UINT8 *pBuf,
|
|
UINT32 cbBufSize,
|
|
UINT32 *pcbBlobSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetAllocatedBlob)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
UINT8 **ppBuf,
|
|
UINT32 *pcbSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetUnknown)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
REFIID riid,
|
|
LPVOID *ppv);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetItem)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
REFPROPVARIANT Value);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *DeleteItem)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *DeleteAllItems)(
|
|
IMFActivate* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUINT32)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
UINT32 unValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUINT64)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
UINT64 unValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetDouble)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
double fValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetGUID)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
REFGUID guidValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetString)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
LPCWSTR wszValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetBlob)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
const UINT8 *pBuf,
|
|
UINT32 cbBufSize);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetUnknown)(
|
|
IMFActivate* This,
|
|
REFGUID guidKey,
|
|
IUnknown *pUnknown);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *LockStore)(
|
|
IMFActivate* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *UnlockStore)(
|
|
IMFActivate* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetCount)(
|
|
IMFActivate* This,
|
|
UINT32 *pcItems);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetItemByIndex)(
|
|
IMFActivate* This,
|
|
UINT32 unIndex,
|
|
GUID *pguidKey,
|
|
PROPVARIANT *pValue);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *CopyAllItems)(
|
|
IMFActivate* This,
|
|
IMFAttributes *pDest);
|
|
|
|
/*** IMFActivate methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *ActivateObject)(
|
|
IMFActivate* This,
|
|
REFIID riid,
|
|
void **ppv);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ShutdownObject)(
|
|
IMFActivate* This);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *DetachObject)(
|
|
IMFActivate* This);
|
|
|
|
END_INTERFACE
|
|
} IMFActivateVtbl;
|
|
interface IMFActivate {
|
|
CONST_VTBL IMFActivateVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFAttributes methods ***/
|
|
#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)
|
|
/*** IMFActivate methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFActivate_QueryInterface(IMFActivate* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFActivate_AddRef(IMFActivate* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFActivate_Release(IMFActivate* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFAttributes methods ***/
|
|
static FORCEINLINE HRESULT IMFActivate_GetItem(IMFActivate* This,REFGUID guidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItem(This,guidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetItemType(IMFActivate* This,REFGUID guidKey,MF_ATTRIBUTE_TYPE *pType) {
|
|
return This->lpVtbl->GetItemType(This,guidKey,pType);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_CompareItem(IMFActivate* This,REFGUID guidKey,REFPROPVARIANT Value,WINBOOL *pbResult) {
|
|
return This->lpVtbl->CompareItem(This,guidKey,Value,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_Compare(IMFActivate* This,IMFAttributes *pTheirs,MF_ATTRIBUTES_MATCH_TYPE MatchType,WINBOOL *pbResult) {
|
|
return This->lpVtbl->Compare(This,pTheirs,MatchType,pbResult);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetUINT32(IMFActivate* This,REFGUID guidKey,UINT32 *punValue) {
|
|
return This->lpVtbl->GetUINT32(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetUINT64(IMFActivate* This,REFGUID guidKey,UINT64 *punValue) {
|
|
return This->lpVtbl->GetUINT64(This,guidKey,punValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetDouble(IMFActivate* This,REFGUID guidKey,double *pfValue) {
|
|
return This->lpVtbl->GetDouble(This,guidKey,pfValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetGUID(IMFActivate* This,REFGUID guidKey,GUID *pguidValue) {
|
|
return This->lpVtbl->GetGUID(This,guidKey,pguidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetStringLength(IMFActivate* This,REFGUID guidKey,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetStringLength(This,guidKey,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetString(IMFActivate* This,REFGUID guidKey,LPWSTR pwszValue,UINT32 cchBufSize,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetString(This,guidKey,pwszValue,cchBufSize,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetAllocatedString(IMFActivate* This,REFGUID guidKey,LPWSTR *ppwszValue,UINT32 *pcchLength) {
|
|
return This->lpVtbl->GetAllocatedString(This,guidKey,ppwszValue,pcchLength);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetBlobSize(IMFActivate* This,REFGUID guidKey,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlobSize(This,guidKey,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetBlob(IMFActivate* This,REFGUID guidKey,UINT8 *pBuf,UINT32 cbBufSize,UINT32 *pcbBlobSize) {
|
|
return This->lpVtbl->GetBlob(This,guidKey,pBuf,cbBufSize,pcbBlobSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetAllocatedBlob(IMFActivate* This,REFGUID guidKey,UINT8 **ppBuf,UINT32 *pcbSize) {
|
|
return This->lpVtbl->GetAllocatedBlob(This,guidKey,ppBuf,pcbSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetUnknown(IMFActivate* This,REFGUID guidKey,REFIID riid,LPVOID *ppv) {
|
|
return This->lpVtbl->GetUnknown(This,guidKey,riid,ppv);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_SetItem(IMFActivate* This,REFGUID guidKey,REFPROPVARIANT Value) {
|
|
return This->lpVtbl->SetItem(This,guidKey,Value);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_DeleteItem(IMFActivate* This,REFGUID guidKey) {
|
|
return This->lpVtbl->DeleteItem(This,guidKey);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_DeleteAllItems(IMFActivate* This) {
|
|
return This->lpVtbl->DeleteAllItems(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_SetUINT32(IMFActivate* This,REFGUID guidKey,UINT32 unValue) {
|
|
return This->lpVtbl->SetUINT32(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_SetUINT64(IMFActivate* This,REFGUID guidKey,UINT64 unValue) {
|
|
return This->lpVtbl->SetUINT64(This,guidKey,unValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_SetDouble(IMFActivate* This,REFGUID guidKey,double fValue) {
|
|
return This->lpVtbl->SetDouble(This,guidKey,fValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_SetGUID(IMFActivate* This,REFGUID guidKey,REFGUID guidValue) {
|
|
return This->lpVtbl->SetGUID(This,guidKey,guidValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_SetString(IMFActivate* This,REFGUID guidKey,LPCWSTR wszValue) {
|
|
return This->lpVtbl->SetString(This,guidKey,wszValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_SetBlob(IMFActivate* This,REFGUID guidKey,const UINT8 *pBuf,UINT32 cbBufSize) {
|
|
return This->lpVtbl->SetBlob(This,guidKey,pBuf,cbBufSize);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_SetUnknown(IMFActivate* This,REFGUID guidKey,IUnknown *pUnknown) {
|
|
return This->lpVtbl->SetUnknown(This,guidKey,pUnknown);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_LockStore(IMFActivate* This) {
|
|
return This->lpVtbl->LockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_UnlockStore(IMFActivate* This) {
|
|
return This->lpVtbl->UnlockStore(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetCount(IMFActivate* This,UINT32 *pcItems) {
|
|
return This->lpVtbl->GetCount(This,pcItems);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_GetItemByIndex(IMFActivate* This,UINT32 unIndex,GUID *pguidKey,PROPVARIANT *pValue) {
|
|
return This->lpVtbl->GetItemByIndex(This,unIndex,pguidKey,pValue);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_CopyAllItems(IMFActivate* This,IMFAttributes *pDest) {
|
|
return This->lpVtbl->CopyAllItems(This,pDest);
|
|
}
|
|
/*** IMFActivate methods ***/
|
|
static FORCEINLINE HRESULT IMFActivate_ActivateObject(IMFActivate* This,REFIID riid,void **ppv) {
|
|
return This->lpVtbl->ActivateObject(This,riid,ppv);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_ShutdownObject(IMFActivate* This) {
|
|
return This->lpVtbl->ShutdownObject(This);
|
|
}
|
|
static FORCEINLINE HRESULT IMFActivate_DetachObject(IMFActivate* This) {
|
|
return This->lpVtbl->DetachObject(This);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFActivate_ActivateObject_Proxy(
|
|
IMFActivate* This,
|
|
REFIID riid,
|
|
void **ppv);
|
|
void __RPC_STUB IMFActivate_ActivateObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFActivate_ShutdownObject_Proxy(
|
|
IMFActivate* This);
|
|
void __RPC_STUB IMFActivate_ShutdownObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFActivate_DetachObject_Proxy(
|
|
IMFActivate* This);
|
|
void __RPC_STUB IMFActivate_DetachObject_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFActivate_INTERFACE_DEFINED__ */
|
|
|
|
#endif
|
|
|
|
#if WINVER >= _WIN32_WINNT_WIN7
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
|
|
typedef enum _MF_Plugin_Type {
|
|
MF_Plugin_Type_MFT = 0,
|
|
MF_Plugin_Type_MediaSource = 1,
|
|
MF_Plugin_Type_MFT_MatchOutputType = 2,
|
|
MF_Plugin_Type_Other = (DWORD)-1
|
|
} MF_Plugin_Type;
|
|
|
|
/*****************************************************************************
|
|
* IMFPluginControl interface
|
|
*/
|
|
#ifndef __IMFPluginControl_INTERFACE_DEFINED__
|
|
#define __IMFPluginControl_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFPluginControl, 0x5c6c44bf, 0x1db6, 0x435b, 0x92,0x49, 0xe8,0xcd,0x10,0xfd,0xec,0x96);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("5c6c44bf-1db6-435b-9249-e8cd10fdec96")
|
|
IMFPluginControl : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE GetPreferredClsid(
|
|
DWORD pluginType,
|
|
LPCWSTR selector,
|
|
CLSID *clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetPreferredClsidByIndex(
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
LPWSTR *selector,
|
|
CLSID *clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetPreferredClsid(
|
|
DWORD pluginType,
|
|
LPCWSTR selector,
|
|
const CLSID *clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsDisabled(
|
|
DWORD pluginType,
|
|
REFCLSID clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetDisabledByIndex(
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
CLSID *clsid) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetDisabled(
|
|
DWORD pluginType,
|
|
REFCLSID clsid,
|
|
WINBOOL disabled) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFPluginControl, 0x5c6c44bf, 0x1db6, 0x435b, 0x92,0x49, 0xe8,0xcd,0x10,0xfd,0xec,0x96)
|
|
#endif
|
|
#else
|
|
typedef struct IMFPluginControlVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFPluginControl* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFPluginControl* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFPluginControl* This);
|
|
|
|
/*** IMFPluginControl methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetPreferredClsid)(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
LPCWSTR selector,
|
|
CLSID *clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetPreferredClsidByIndex)(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
LPWSTR *selector,
|
|
CLSID *clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetPreferredClsid)(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
LPCWSTR selector,
|
|
const CLSID *clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsDisabled)(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
REFCLSID clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDisabledByIndex)(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
CLSID *clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetDisabled)(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
REFCLSID clsid,
|
|
WINBOOL disabled);
|
|
|
|
END_INTERFACE
|
|
} IMFPluginControlVtbl;
|
|
interface IMFPluginControl {
|
|
CONST_VTBL IMFPluginControlVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#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)
|
|
/*** IMFPluginControl methods ***/
|
|
#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)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFPluginControl_QueryInterface(IMFPluginControl* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFPluginControl_AddRef(IMFPluginControl* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFPluginControl_Release(IMFPluginControl* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFPluginControl methods ***/
|
|
static FORCEINLINE HRESULT IMFPluginControl_GetPreferredClsid(IMFPluginControl* This,DWORD pluginType,LPCWSTR selector,CLSID *clsid) {
|
|
return This->lpVtbl->GetPreferredClsid(This,pluginType,selector,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl_GetPreferredClsidByIndex(IMFPluginControl* This,DWORD pluginType,DWORD index,LPWSTR *selector,CLSID *clsid) {
|
|
return This->lpVtbl->GetPreferredClsidByIndex(This,pluginType,index,selector,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl_SetPreferredClsid(IMFPluginControl* This,DWORD pluginType,LPCWSTR selector,const CLSID *clsid) {
|
|
return This->lpVtbl->SetPreferredClsid(This,pluginType,selector,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl_IsDisabled(IMFPluginControl* This,DWORD pluginType,REFCLSID clsid) {
|
|
return This->lpVtbl->IsDisabled(This,pluginType,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl_GetDisabledByIndex(IMFPluginControl* This,DWORD pluginType,DWORD index,CLSID *clsid) {
|
|
return This->lpVtbl->GetDisabledByIndex(This,pluginType,index,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl_SetDisabled(IMFPluginControl* This,DWORD pluginType,REFCLSID clsid,WINBOOL disabled) {
|
|
return This->lpVtbl->SetDisabled(This,pluginType,clsid,disabled);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFPluginControl_GetPreferredClsid_Proxy(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
LPCWSTR selector,
|
|
CLSID *clsid);
|
|
void __RPC_STUB IMFPluginControl_GetPreferredClsid_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFPluginControl_GetPreferredClsidByIndex_Proxy(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
LPWSTR *selector,
|
|
CLSID *clsid);
|
|
void __RPC_STUB IMFPluginControl_GetPreferredClsidByIndex_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFPluginControl_SetPreferredClsid_Proxy(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
LPCWSTR selector,
|
|
const CLSID *clsid);
|
|
void __RPC_STUB IMFPluginControl_SetPreferredClsid_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFPluginControl_IsDisabled_Proxy(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
REFCLSID clsid);
|
|
void __RPC_STUB IMFPluginControl_IsDisabled_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFPluginControl_GetDisabledByIndex_Proxy(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
CLSID *clsid);
|
|
void __RPC_STUB IMFPluginControl_GetDisabledByIndex_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFPluginControl_SetDisabled_Proxy(
|
|
IMFPluginControl* This,
|
|
DWORD pluginType,
|
|
REFCLSID clsid,
|
|
WINBOOL disabled);
|
|
void __RPC_STUB IMFPluginControl_SetDisabled_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFPluginControl_INTERFACE_DEFINED__ */
|
|
|
|
|
|
typedef enum MF_PLUGIN_CONTROL_POLICY {
|
|
MF_PLUGIN_CONTROL_POLICY_USE_ALL_PLUGINS = 0,
|
|
MF_PLUGIN_CONTROL_POLICY_USE_APPROVED_PLUGINS = 1,
|
|
MF_PLUGIN_CONTROL_POLICY_USE_WEB_PLUGINS = 2
|
|
} MF_PLUGIN_CONTROL_POLICY;
|
|
|
|
/*****************************************************************************
|
|
* IMFPluginControl2 interface
|
|
*/
|
|
#ifndef __IMFPluginControl2_INTERFACE_DEFINED__
|
|
#define __IMFPluginControl2_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFPluginControl2, 0xc6982083, 0x3ddc, 0x45cb, 0xaf,0x5e, 0x0f,0x7a,0x8c,0xe4,0xde,0x77);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("c6982083-3ddc-45cb-af5e-0f7a8ce4de77")
|
|
IMFPluginControl2 : public IMFPluginControl
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE SetPolicy(
|
|
MF_PLUGIN_CONTROL_POLICY policy) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFPluginControl2, 0xc6982083, 0x3ddc, 0x45cb, 0xaf,0x5e, 0x0f,0x7a,0x8c,0xe4,0xde,0x77)
|
|
#endif
|
|
#else
|
|
typedef struct IMFPluginControl2Vtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFPluginControl2* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFPluginControl2* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFPluginControl2* This);
|
|
|
|
/*** IMFPluginControl methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *GetPreferredClsid)(
|
|
IMFPluginControl2* This,
|
|
DWORD pluginType,
|
|
LPCWSTR selector,
|
|
CLSID *clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetPreferredClsidByIndex)(
|
|
IMFPluginControl2* This,
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
LPWSTR *selector,
|
|
CLSID *clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetPreferredClsid)(
|
|
IMFPluginControl2* This,
|
|
DWORD pluginType,
|
|
LPCWSTR selector,
|
|
const CLSID *clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *IsDisabled)(
|
|
IMFPluginControl2* This,
|
|
DWORD pluginType,
|
|
REFCLSID clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetDisabledByIndex)(
|
|
IMFPluginControl2* This,
|
|
DWORD pluginType,
|
|
DWORD index,
|
|
CLSID *clsid);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *SetDisabled)(
|
|
IMFPluginControl2* This,
|
|
DWORD pluginType,
|
|
REFCLSID clsid,
|
|
WINBOOL disabled);
|
|
|
|
/*** IMFPluginControl2 methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *SetPolicy)(
|
|
IMFPluginControl2* This,
|
|
MF_PLUGIN_CONTROL_POLICY policy);
|
|
|
|
END_INTERFACE
|
|
} IMFPluginControl2Vtbl;
|
|
interface IMFPluginControl2 {
|
|
CONST_VTBL IMFPluginControl2Vtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#define IMFPluginControl2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
|
#define IMFPluginControl2_AddRef(This) (This)->lpVtbl->AddRef(This)
|
|
#define IMFPluginControl2_Release(This) (This)->lpVtbl->Release(This)
|
|
/*** IMFPluginControl methods ***/
|
|
#define IMFPluginControl2_GetPreferredClsid(This,pluginType,selector,clsid) (This)->lpVtbl->GetPreferredClsid(This,pluginType,selector,clsid)
|
|
#define IMFPluginControl2_GetPreferredClsidByIndex(This,pluginType,index,selector,clsid) (This)->lpVtbl->GetPreferredClsidByIndex(This,pluginType,index,selector,clsid)
|
|
#define IMFPluginControl2_SetPreferredClsid(This,pluginType,selector,clsid) (This)->lpVtbl->SetPreferredClsid(This,pluginType,selector,clsid)
|
|
#define IMFPluginControl2_IsDisabled(This,pluginType,clsid) (This)->lpVtbl->IsDisabled(This,pluginType,clsid)
|
|
#define IMFPluginControl2_GetDisabledByIndex(This,pluginType,index,clsid) (This)->lpVtbl->GetDisabledByIndex(This,pluginType,index,clsid)
|
|
#define IMFPluginControl2_SetDisabled(This,pluginType,clsid,disabled) (This)->lpVtbl->SetDisabled(This,pluginType,clsid,disabled)
|
|
/*** IMFPluginControl2 methods ***/
|
|
#define IMFPluginControl2_SetPolicy(This,policy) (This)->lpVtbl->SetPolicy(This,policy)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFPluginControl2_QueryInterface(IMFPluginControl2* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFPluginControl2_AddRef(IMFPluginControl2* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFPluginControl2_Release(IMFPluginControl2* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFPluginControl methods ***/
|
|
static FORCEINLINE HRESULT IMFPluginControl2_GetPreferredClsid(IMFPluginControl2* This,DWORD pluginType,LPCWSTR selector,CLSID *clsid) {
|
|
return This->lpVtbl->GetPreferredClsid(This,pluginType,selector,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl2_GetPreferredClsidByIndex(IMFPluginControl2* This,DWORD pluginType,DWORD index,LPWSTR *selector,CLSID *clsid) {
|
|
return This->lpVtbl->GetPreferredClsidByIndex(This,pluginType,index,selector,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl2_SetPreferredClsid(IMFPluginControl2* This,DWORD pluginType,LPCWSTR selector,const CLSID *clsid) {
|
|
return This->lpVtbl->SetPreferredClsid(This,pluginType,selector,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl2_IsDisabled(IMFPluginControl2* This,DWORD pluginType,REFCLSID clsid) {
|
|
return This->lpVtbl->IsDisabled(This,pluginType,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl2_GetDisabledByIndex(IMFPluginControl2* This,DWORD pluginType,DWORD index,CLSID *clsid) {
|
|
return This->lpVtbl->GetDisabledByIndex(This,pluginType,index,clsid);
|
|
}
|
|
static FORCEINLINE HRESULT IMFPluginControl2_SetDisabled(IMFPluginControl2* This,DWORD pluginType,REFCLSID clsid,WINBOOL disabled) {
|
|
return This->lpVtbl->SetDisabled(This,pluginType,clsid,disabled);
|
|
}
|
|
/*** IMFPluginControl2 methods ***/
|
|
static FORCEINLINE HRESULT IMFPluginControl2_SetPolicy(IMFPluginControl2* This,MF_PLUGIN_CONTROL_POLICY policy) {
|
|
return This->lpVtbl->SetPolicy(This,policy);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFPluginControl2_SetPolicy_Proxy(
|
|
IMFPluginControl2* This,
|
|
MF_PLUGIN_CONTROL_POLICY policy);
|
|
void __RPC_STUB IMFPluginControl2_SetPolicy_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFPluginControl2_INTERFACE_DEFINED__ */
|
|
|
|
#endif
|
|
|
|
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
|
/*****************************************************************************
|
|
* IMFDXGIDeviceManager interface
|
|
*/
|
|
#ifndef __IMFDXGIDeviceManager_INTERFACE_DEFINED__
|
|
#define __IMFDXGIDeviceManager_INTERFACE_DEFINED__
|
|
|
|
DEFINE_GUID(IID_IMFDXGIDeviceManager, 0xeb533d5d, 0x2db6, 0x40f8, 0x97,0xa9, 0x49,0x46,0x92,0x01,0x4f,0x07);
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
MIDL_INTERFACE("eb533d5d-2db6-40f8-97a9-494692014f07")
|
|
IMFDXGIDeviceManager : public IUnknown
|
|
{
|
|
virtual HRESULT STDMETHODCALLTYPE CloseDeviceHandle(
|
|
HANDLE hDevice) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetVideoService(
|
|
HANDLE hDevice,
|
|
REFIID riid,
|
|
void **ppService) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE LockDevice(
|
|
HANDLE hDevice,
|
|
REFIID riid,
|
|
void **ppUnkDevice,
|
|
WINBOOL fBlock) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE OpenDeviceHandle(
|
|
HANDLE *phDevice) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ResetDevice(
|
|
IUnknown *pUnkDevice,
|
|
UINT resetToken) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE TestDevice(
|
|
HANDLE hDevice) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE UnlockDevice(
|
|
HANDLE hDevice,
|
|
WINBOOL fSaveState) = 0;
|
|
|
|
};
|
|
#ifdef __CRT_UUID_DECL
|
|
__CRT_UUID_DECL(IMFDXGIDeviceManager, 0xeb533d5d, 0x2db6, 0x40f8, 0x97,0xa9, 0x49,0x46,0x92,0x01,0x4f,0x07)
|
|
#endif
|
|
#else
|
|
typedef struct IMFDXGIDeviceManagerVtbl {
|
|
BEGIN_INTERFACE
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
|
|
IMFDXGIDeviceManager* This,
|
|
REFIID riid,
|
|
void **ppvObject);
|
|
|
|
ULONG (STDMETHODCALLTYPE *AddRef)(
|
|
IMFDXGIDeviceManager* This);
|
|
|
|
ULONG (STDMETHODCALLTYPE *Release)(
|
|
IMFDXGIDeviceManager* This);
|
|
|
|
/*** IMFDXGIDeviceManager methods ***/
|
|
HRESULT (STDMETHODCALLTYPE *CloseDeviceHandle)(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *GetVideoService)(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice,
|
|
REFIID riid,
|
|
void **ppService);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *LockDevice)(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice,
|
|
REFIID riid,
|
|
void **ppUnkDevice,
|
|
WINBOOL fBlock);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *OpenDeviceHandle)(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE *phDevice);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *ResetDevice)(
|
|
IMFDXGIDeviceManager* This,
|
|
IUnknown *pUnkDevice,
|
|
UINT resetToken);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *TestDevice)(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice);
|
|
|
|
HRESULT (STDMETHODCALLTYPE *UnlockDevice)(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice,
|
|
WINBOOL fSaveState);
|
|
|
|
END_INTERFACE
|
|
} IMFDXGIDeviceManagerVtbl;
|
|
interface IMFDXGIDeviceManager {
|
|
CONST_VTBL IMFDXGIDeviceManagerVtbl* lpVtbl;
|
|
};
|
|
|
|
#ifdef COBJMACROS
|
|
#ifndef WIDL_C_INLINE_WRAPPERS
|
|
/*** IUnknown methods ***/
|
|
#define IMFDXGIDeviceManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
|
|
#define IMFDXGIDeviceManager_AddRef(This) (This)->lpVtbl->AddRef(This)
|
|
#define IMFDXGIDeviceManager_Release(This) (This)->lpVtbl->Release(This)
|
|
/*** IMFDXGIDeviceManager methods ***/
|
|
#define IMFDXGIDeviceManager_CloseDeviceHandle(This,hDevice) (This)->lpVtbl->CloseDeviceHandle(This,hDevice)
|
|
#define IMFDXGIDeviceManager_GetVideoService(This,hDevice,riid,ppService) (This)->lpVtbl->GetVideoService(This,hDevice,riid,ppService)
|
|
#define IMFDXGIDeviceManager_LockDevice(This,hDevice,riid,ppUnkDevice,fBlock) (This)->lpVtbl->LockDevice(This,hDevice,riid,ppUnkDevice,fBlock)
|
|
#define IMFDXGIDeviceManager_OpenDeviceHandle(This,phDevice) (This)->lpVtbl->OpenDeviceHandle(This,phDevice)
|
|
#define IMFDXGIDeviceManager_ResetDevice(This,pUnkDevice,resetToken) (This)->lpVtbl->ResetDevice(This,pUnkDevice,resetToken)
|
|
#define IMFDXGIDeviceManager_TestDevice(This,hDevice) (This)->lpVtbl->TestDevice(This,hDevice)
|
|
#define IMFDXGIDeviceManager_UnlockDevice(This,hDevice,fSaveState) (This)->lpVtbl->UnlockDevice(This,hDevice,fSaveState)
|
|
#else
|
|
/*** IUnknown methods ***/
|
|
static FORCEINLINE HRESULT IMFDXGIDeviceManager_QueryInterface(IMFDXGIDeviceManager* This,REFIID riid,void **ppvObject) {
|
|
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
|
|
}
|
|
static FORCEINLINE ULONG IMFDXGIDeviceManager_AddRef(IMFDXGIDeviceManager* This) {
|
|
return This->lpVtbl->AddRef(This);
|
|
}
|
|
static FORCEINLINE ULONG IMFDXGIDeviceManager_Release(IMFDXGIDeviceManager* This) {
|
|
return This->lpVtbl->Release(This);
|
|
}
|
|
/*** IMFDXGIDeviceManager methods ***/
|
|
static FORCEINLINE HRESULT IMFDXGIDeviceManager_CloseDeviceHandle(IMFDXGIDeviceManager* This,HANDLE hDevice) {
|
|
return This->lpVtbl->CloseDeviceHandle(This,hDevice);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIDeviceManager_GetVideoService(IMFDXGIDeviceManager* This,HANDLE hDevice,REFIID riid,void **ppService) {
|
|
return This->lpVtbl->GetVideoService(This,hDevice,riid,ppService);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIDeviceManager_LockDevice(IMFDXGIDeviceManager* This,HANDLE hDevice,REFIID riid,void **ppUnkDevice,WINBOOL fBlock) {
|
|
return This->lpVtbl->LockDevice(This,hDevice,riid,ppUnkDevice,fBlock);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIDeviceManager_OpenDeviceHandle(IMFDXGIDeviceManager* This,HANDLE *phDevice) {
|
|
return This->lpVtbl->OpenDeviceHandle(This,phDevice);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIDeviceManager_ResetDevice(IMFDXGIDeviceManager* This,IUnknown *pUnkDevice,UINT resetToken) {
|
|
return This->lpVtbl->ResetDevice(This,pUnkDevice,resetToken);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIDeviceManager_TestDevice(IMFDXGIDeviceManager* This,HANDLE hDevice) {
|
|
return This->lpVtbl->TestDevice(This,hDevice);
|
|
}
|
|
static FORCEINLINE HRESULT IMFDXGIDeviceManager_UnlockDevice(IMFDXGIDeviceManager* This,HANDLE hDevice,WINBOOL fSaveState) {
|
|
return This->lpVtbl->UnlockDevice(This,hDevice,fSaveState);
|
|
}
|
|
#endif
|
|
#endif
|
|
|
|
#endif
|
|
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIDeviceManager_CloseDeviceHandle_Proxy(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice);
|
|
void __RPC_STUB IMFDXGIDeviceManager_CloseDeviceHandle_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIDeviceManager_GetVideoService_Proxy(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice,
|
|
REFIID riid,
|
|
void **ppService);
|
|
void __RPC_STUB IMFDXGIDeviceManager_GetVideoService_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIDeviceManager_LockDevice_Proxy(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice,
|
|
REFIID riid,
|
|
void **ppUnkDevice,
|
|
WINBOOL fBlock);
|
|
void __RPC_STUB IMFDXGIDeviceManager_LockDevice_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIDeviceManager_OpenDeviceHandle_Proxy(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE *phDevice);
|
|
void __RPC_STUB IMFDXGIDeviceManager_OpenDeviceHandle_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIDeviceManager_ResetDevice_Proxy(
|
|
IMFDXGIDeviceManager* This,
|
|
IUnknown *pUnkDevice,
|
|
UINT resetToken);
|
|
void __RPC_STUB IMFDXGIDeviceManager_ResetDevice_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIDeviceManager_TestDevice_Proxy(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice);
|
|
void __RPC_STUB IMFDXGIDeviceManager_TestDevice_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
HRESULT STDMETHODCALLTYPE IMFDXGIDeviceManager_UnlockDevice_Proxy(
|
|
IMFDXGIDeviceManager* This,
|
|
HANDLE hDevice,
|
|
WINBOOL fSaveState);
|
|
void __RPC_STUB IMFDXGIDeviceManager_UnlockDevice_Stub(
|
|
IRpcStubBuffer* This,
|
|
IRpcChannelBuffer* pRpcChannelBuffer,
|
|
PRPC_MESSAGE pRpcMessage,
|
|
DWORD* pdwStubPhase);
|
|
|
|
#endif /* __IMFDXGIDeviceManager_INTERFACE_DEFINED__ */
|
|
|
|
#endif
|
|
|
|
#endif
|
|
/* Begin additional prototypes for all interfaces */
|
|
|
|
ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *);
|
|
unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *);
|
|
unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
|
|
void __RPC_USER BSTR_UserFree (ULONG *, BSTR *);
|
|
ULONG __RPC_USER LPSAFEARRAY_UserSize (ULONG *, ULONG, LPSAFEARRAY *);
|
|
unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal (ULONG *, unsigned char *, LPSAFEARRAY *);
|
|
unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *);
|
|
void __RPC_USER LPSAFEARRAY_UserFree (ULONG *, LPSAFEARRAY *);
|
|
|
|
/* End additional prototypes */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* __mfobjects_h__ */
|