blob: 9dccc907ebef39a36c854c63f0d1ae620da28715 [file] [log] [blame]
/*** Autogenerated by WIDL 5.16 from include/amvideo.idl - Do not edit ***/
#ifdef _WIN32
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include <rpc.h>
#include <rpcndr.h>
#endif
#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif
#ifndef __amvideo_h__
#define __amvideo_h__
/* Forward declarations */
#ifndef __IDirectDrawVideo_FWD_DEFINED__
#define __IDirectDrawVideo_FWD_DEFINED__
typedef interface IDirectDrawVideo IDirectDrawVideo;
#ifdef __cplusplus
interface IDirectDrawVideo;
#endif /* __cplusplus */
#endif
#ifndef __IQualProp_FWD_DEFINED__
#define __IQualProp_FWD_DEFINED__
typedef interface IQualProp IQualProp;
#ifdef __cplusplus
interface IQualProp;
#endif /* __cplusplus */
#endif
#ifndef __IFullScreenVideo_FWD_DEFINED__
#define __IFullScreenVideo_FWD_DEFINED__
typedef interface IFullScreenVideo IFullScreenVideo;
#ifdef __cplusplus
interface IFullScreenVideo;
#endif /* __cplusplus */
#endif
#ifndef __IFullScreenVideoEx_FWD_DEFINED__
#define __IFullScreenVideoEx_FWD_DEFINED__
typedef interface IFullScreenVideoEx IFullScreenVideoEx;
#ifdef __cplusplus
interface IFullScreenVideoEx;
#endif /* __cplusplus */
#endif
#ifndef __IBaseVideoMixer_FWD_DEFINED__
#define __IBaseVideoMixer_FWD_DEFINED__
typedef interface IBaseVideoMixer IBaseVideoMixer;
#ifdef __cplusplus
interface IBaseVideoMixer;
#endif /* __cplusplus */
#endif
/* Headers for imported files */
#include <objidl.h>
#ifdef __cplusplus
extern "C" {
#endif
#if 0
#ifndef __IDirectDraw_FWD_DEFINED__
#define __IDirectDraw_FWD_DEFINED__
typedef interface IDirectDraw IDirectDraw;
#ifdef __cplusplus
interface IDirectDraw;
#endif /* __cplusplus */
#endif
typedef void DDSURFACEDESC;
typedef void DDCAPS;
typedef DWORD RGBQUAD;
typedef LONGLONG REFERENCE_TIME;
typedef struct __WIDL_amvideo_generated_name_0000000E {
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_amvideo_generated_name_0000000E *PBITMAPINFOHEADER;
typedef struct __WIDL_amvideo_generated_name_0000000E *LPBITMAPINFOHEADER;
#endif
#include <ddraw.h>
#define AMDDS_NONE 0x00
#define AMDDS_DCIPS 0x01
#define AMDDS_PS 0x02
#define AMDDS_RGBOVR 0x04
#define AMDDS_YUVOVR 0x08
#define AMDDS_RGBOFF 0x10
#define AMDDS_YUVOFF 0x20
#define AMDDS_RGBFLP 0x40
#define AMDDS_YUVFLP 0x80
#define AMDDS_ALL 0xFF
#define AMDDS_DEFAULT AMDDS_ALL
#define AMDDS_YUV (AMDDS_YUVOFF | AMDDS_YUVOVR | AMDDS_YUVFLP)
#define AMDDS_RGB (AMDDS_RGBOFF | AMDDS_RGBOVR | AMDDS_RGBFLP)
#define AMDSS_PRIMARY (AMDDS_DCIPS | AMDDS_PS)
/*****************************************************************************
* IDirectDrawVideo interface
*/
#ifndef __IDirectDrawVideo_INTERFACE_DEFINED__
#define __IDirectDrawVideo_INTERFACE_DEFINED__
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IDirectDrawVideo : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE GetSwitches(
DWORD *pSwitches) = 0;
virtual HRESULT STDMETHODCALLTYPE SetSwitches(
DWORD Switches) = 0;
virtual HRESULT STDMETHODCALLTYPE GetCaps(
DDCAPS *pCaps) = 0;
virtual HRESULT STDMETHODCALLTYPE GetEmulatedCaps(
DDCAPS *pCaps) = 0;
virtual HRESULT STDMETHODCALLTYPE GetSurfaceDesc(
DDSURFACEDESC *pSurfaceDesc) = 0;
virtual HRESULT STDMETHODCALLTYPE GetFourCCCodes(
DWORD *pCount,
DWORD *pCodes) = 0;
virtual HRESULT STDMETHODCALLTYPE SetDirectDraw(
IDirectDraw *ddraw) = 0;
virtual HRESULT STDMETHODCALLTYPE GetDirectDraw(
IDirectDraw **ddraw) = 0;
virtual HRESULT STDMETHODCALLTYPE GetSurfaceType(
DWORD *pSurfaceType) = 0;
virtual HRESULT STDMETHODCALLTYPE SetDefault(
) = 0;
virtual HRESULT STDMETHODCALLTYPE UseScanLine(
LONG UseScanLine) = 0;
virtual HRESULT STDMETHODCALLTYPE CanUseScanLine(
LONG *UseScanLine) = 0;
virtual HRESULT STDMETHODCALLTYPE UseOverlayStretch(
LONG UseOverlayStretch) = 0;
virtual HRESULT STDMETHODCALLTYPE CanUseOverlayStretch(
LONG *UseOverlayStretch) = 0;
virtual HRESULT STDMETHODCALLTYPE UseWhenFullScreen(
LONG UseWhenFullScreen) = 0;
virtual HRESULT STDMETHODCALLTYPE WillUseFullScreen(
LONG *UseWhenFullScreen) = 0;
};
#else
typedef struct IDirectDrawVideoVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IDirectDrawVideo *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IDirectDrawVideo *This);
ULONG (STDMETHODCALLTYPE *Release)(
IDirectDrawVideo *This);
/*** IDirectDrawVideo methods ***/
HRESULT (STDMETHODCALLTYPE *GetSwitches)(
IDirectDrawVideo *This,
DWORD *pSwitches);
HRESULT (STDMETHODCALLTYPE *SetSwitches)(
IDirectDrawVideo *This,
DWORD Switches);
HRESULT (STDMETHODCALLTYPE *GetCaps)(
IDirectDrawVideo *This,
DDCAPS *pCaps);
HRESULT (STDMETHODCALLTYPE *GetEmulatedCaps)(
IDirectDrawVideo *This,
DDCAPS *pCaps);
HRESULT (STDMETHODCALLTYPE *GetSurfaceDesc)(
IDirectDrawVideo *This,
DDSURFACEDESC *pSurfaceDesc);
HRESULT (STDMETHODCALLTYPE *GetFourCCCodes)(
IDirectDrawVideo *This,
DWORD *pCount,
DWORD *pCodes);
HRESULT (STDMETHODCALLTYPE *SetDirectDraw)(
IDirectDrawVideo *This,
IDirectDraw *ddraw);
HRESULT (STDMETHODCALLTYPE *GetDirectDraw)(
IDirectDrawVideo *This,
IDirectDraw **ddraw);
HRESULT (STDMETHODCALLTYPE *GetSurfaceType)(
IDirectDrawVideo *This,
DWORD *pSurfaceType);
HRESULT (STDMETHODCALLTYPE *SetDefault)(
IDirectDrawVideo *This);
HRESULT (STDMETHODCALLTYPE *UseScanLine)(
IDirectDrawVideo *This,
LONG UseScanLine);
HRESULT (STDMETHODCALLTYPE *CanUseScanLine)(
IDirectDrawVideo *This,
LONG *UseScanLine);
HRESULT (STDMETHODCALLTYPE *UseOverlayStretch)(
IDirectDrawVideo *This,
LONG UseOverlayStretch);
HRESULT (STDMETHODCALLTYPE *CanUseOverlayStretch)(
IDirectDrawVideo *This,
LONG *UseOverlayStretch);
HRESULT (STDMETHODCALLTYPE *UseWhenFullScreen)(
IDirectDrawVideo *This,
LONG UseWhenFullScreen);
HRESULT (STDMETHODCALLTYPE *WillUseFullScreen)(
IDirectDrawVideo *This,
LONG *UseWhenFullScreen);
END_INTERFACE
} IDirectDrawVideoVtbl;
interface IDirectDrawVideo {
CONST_VTBL IDirectDrawVideoVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IDirectDrawVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IDirectDrawVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IDirectDrawVideo_Release(This) (This)->lpVtbl->Release(This)
/*** IDirectDrawVideo methods ***/
#define IDirectDrawVideo_GetSwitches(This,pSwitches) (This)->lpVtbl->GetSwitches(This,pSwitches)
#define IDirectDrawVideo_SetSwitches(This,Switches) (This)->lpVtbl->SetSwitches(This,Switches)
#define IDirectDrawVideo_GetCaps(This,pCaps) (This)->lpVtbl->GetCaps(This,pCaps)
#define IDirectDrawVideo_GetEmulatedCaps(This,pCaps) (This)->lpVtbl->GetEmulatedCaps(This,pCaps)
#define IDirectDrawVideo_GetSurfaceDesc(This,pSurfaceDesc) (This)->lpVtbl->GetSurfaceDesc(This,pSurfaceDesc)
#define IDirectDrawVideo_GetFourCCCodes(This,pCount,pCodes) (This)->lpVtbl->GetFourCCCodes(This,pCount,pCodes)
#define IDirectDrawVideo_SetDirectDraw(This,ddraw) (This)->lpVtbl->SetDirectDraw(This,ddraw)
#define IDirectDrawVideo_GetDirectDraw(This,ddraw) (This)->lpVtbl->GetDirectDraw(This,ddraw)
#define IDirectDrawVideo_GetSurfaceType(This,pSurfaceType) (This)->lpVtbl->GetSurfaceType(This,pSurfaceType)
#define IDirectDrawVideo_SetDefault(This) (This)->lpVtbl->SetDefault(This)
#define IDirectDrawVideo_UseScanLine(This,UseScanLine) (This)->lpVtbl->UseScanLine(This,UseScanLine)
#define IDirectDrawVideo_CanUseScanLine(This,UseScanLine) (This)->lpVtbl->CanUseScanLine(This,UseScanLine)
#define IDirectDrawVideo_UseOverlayStretch(This,UseOverlayStretch) (This)->lpVtbl->UseOverlayStretch(This,UseOverlayStretch)
#define IDirectDrawVideo_CanUseOverlayStretch(This,UseOverlayStretch) (This)->lpVtbl->CanUseOverlayStretch(This,UseOverlayStretch)
#define IDirectDrawVideo_UseWhenFullScreen(This,UseWhenFullScreen) (This)->lpVtbl->UseWhenFullScreen(This,UseWhenFullScreen)
#define IDirectDrawVideo_WillUseFullScreen(This,UseWhenFullScreen) (This)->lpVtbl->WillUseFullScreen(This,UseWhenFullScreen)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IDirectDrawVideo_QueryInterface(IDirectDrawVideo* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IDirectDrawVideo_AddRef(IDirectDrawVideo* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IDirectDrawVideo_Release(IDirectDrawVideo* This) {
return This->lpVtbl->Release(This);
}
/*** IDirectDrawVideo methods ***/
static FORCEINLINE HRESULT IDirectDrawVideo_GetSwitches(IDirectDrawVideo* This,DWORD *pSwitches) {
return This->lpVtbl->GetSwitches(This,pSwitches);
}
static FORCEINLINE HRESULT IDirectDrawVideo_SetSwitches(IDirectDrawVideo* This,DWORD Switches) {
return This->lpVtbl->SetSwitches(This,Switches);
}
static FORCEINLINE HRESULT IDirectDrawVideo_GetCaps(IDirectDrawVideo* This,DDCAPS *pCaps) {
return This->lpVtbl->GetCaps(This,pCaps);
}
static FORCEINLINE HRESULT IDirectDrawVideo_GetEmulatedCaps(IDirectDrawVideo* This,DDCAPS *pCaps) {
return This->lpVtbl->GetEmulatedCaps(This,pCaps);
}
static FORCEINLINE HRESULT IDirectDrawVideo_GetSurfaceDesc(IDirectDrawVideo* This,DDSURFACEDESC *pSurfaceDesc) {
return This->lpVtbl->GetSurfaceDesc(This,pSurfaceDesc);
}
static FORCEINLINE HRESULT IDirectDrawVideo_GetFourCCCodes(IDirectDrawVideo* This,DWORD *pCount,DWORD *pCodes) {
return This->lpVtbl->GetFourCCCodes(This,pCount,pCodes);
}
static FORCEINLINE HRESULT IDirectDrawVideo_SetDirectDraw(IDirectDrawVideo* This,IDirectDraw *ddraw) {
return This->lpVtbl->SetDirectDraw(This,ddraw);
}
static FORCEINLINE HRESULT IDirectDrawVideo_GetDirectDraw(IDirectDrawVideo* This,IDirectDraw **ddraw) {
return This->lpVtbl->GetDirectDraw(This,ddraw);
}
static FORCEINLINE HRESULT IDirectDrawVideo_GetSurfaceType(IDirectDrawVideo* This,DWORD *pSurfaceType) {
return This->lpVtbl->GetSurfaceType(This,pSurfaceType);
}
static FORCEINLINE HRESULT IDirectDrawVideo_SetDefault(IDirectDrawVideo* This) {
return This->lpVtbl->SetDefault(This);
}
static FORCEINLINE HRESULT IDirectDrawVideo_UseScanLine(IDirectDrawVideo* This,LONG UseScanLine) {
return This->lpVtbl->UseScanLine(This,UseScanLine);
}
static FORCEINLINE HRESULT IDirectDrawVideo_CanUseScanLine(IDirectDrawVideo* This,LONG *UseScanLine) {
return This->lpVtbl->CanUseScanLine(This,UseScanLine);
}
static FORCEINLINE HRESULT IDirectDrawVideo_UseOverlayStretch(IDirectDrawVideo* This,LONG UseOverlayStretch) {
return This->lpVtbl->UseOverlayStretch(This,UseOverlayStretch);
}
static FORCEINLINE HRESULT IDirectDrawVideo_CanUseOverlayStretch(IDirectDrawVideo* This,LONG *UseOverlayStretch) {
return This->lpVtbl->CanUseOverlayStretch(This,UseOverlayStretch);
}
static FORCEINLINE HRESULT IDirectDrawVideo_UseWhenFullScreen(IDirectDrawVideo* This,LONG UseWhenFullScreen) {
return This->lpVtbl->UseWhenFullScreen(This,UseWhenFullScreen);
}
static FORCEINLINE HRESULT IDirectDrawVideo_WillUseFullScreen(IDirectDrawVideo* This,LONG *UseWhenFullScreen) {
return This->lpVtbl->WillUseFullScreen(This,UseWhenFullScreen);
}
#endif
#endif
#endif
#endif /* __IDirectDrawVideo_INTERFACE_DEFINED__ */
/*****************************************************************************
* IQualProp interface
*/
#ifndef __IQualProp_INTERFACE_DEFINED__
#define __IQualProp_INTERFACE_DEFINED__
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IQualProp : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE get_FramesDroppedInRenderer(
int *pcFrames) = 0;
virtual HRESULT STDMETHODCALLTYPE get_FramesDrawn(
int *pcFramesDrawn) = 0;
virtual HRESULT STDMETHODCALLTYPE get_AvgFrameRate(
int *piAvgFrameRate) = 0;
virtual HRESULT STDMETHODCALLTYPE get_Jitter(
int *iJitter) = 0;
virtual HRESULT STDMETHODCALLTYPE get_AvgSyncOffset(
int *piAvg) = 0;
virtual HRESULT STDMETHODCALLTYPE get_DevSyncOffset(
int *piDev) = 0;
};
#else
typedef struct IQualPropVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IQualProp *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IQualProp *This);
ULONG (STDMETHODCALLTYPE *Release)(
IQualProp *This);
/*** IQualProp methods ***/
HRESULT (STDMETHODCALLTYPE *get_FramesDroppedInRenderer)(
IQualProp *This,
int *pcFrames);
HRESULT (STDMETHODCALLTYPE *get_FramesDrawn)(
IQualProp *This,
int *pcFramesDrawn);
HRESULT (STDMETHODCALLTYPE *get_AvgFrameRate)(
IQualProp *This,
int *piAvgFrameRate);
HRESULT (STDMETHODCALLTYPE *get_Jitter)(
IQualProp *This,
int *iJitter);
HRESULT (STDMETHODCALLTYPE *get_AvgSyncOffset)(
IQualProp *This,
int *piAvg);
HRESULT (STDMETHODCALLTYPE *get_DevSyncOffset)(
IQualProp *This,
int *piDev);
END_INTERFACE
} IQualPropVtbl;
interface IQualProp {
CONST_VTBL IQualPropVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IQualProp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IQualProp_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IQualProp_Release(This) (This)->lpVtbl->Release(This)
/*** IQualProp methods ***/
#define IQualProp_get_FramesDroppedInRenderer(This,pcFrames) (This)->lpVtbl->get_FramesDroppedInRenderer(This,pcFrames)
#define IQualProp_get_FramesDrawn(This,pcFramesDrawn) (This)->lpVtbl->get_FramesDrawn(This,pcFramesDrawn)
#define IQualProp_get_AvgFrameRate(This,piAvgFrameRate) (This)->lpVtbl->get_AvgFrameRate(This,piAvgFrameRate)
#define IQualProp_get_Jitter(This,iJitter) (This)->lpVtbl->get_Jitter(This,iJitter)
#define IQualProp_get_AvgSyncOffset(This,piAvg) (This)->lpVtbl->get_AvgSyncOffset(This,piAvg)
#define IQualProp_get_DevSyncOffset(This,piDev) (This)->lpVtbl->get_DevSyncOffset(This,piDev)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IQualProp_QueryInterface(IQualProp* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IQualProp_AddRef(IQualProp* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IQualProp_Release(IQualProp* This) {
return This->lpVtbl->Release(This);
}
/*** IQualProp methods ***/
static FORCEINLINE HRESULT IQualProp_get_FramesDroppedInRenderer(IQualProp* This,int *pcFrames) {
return This->lpVtbl->get_FramesDroppedInRenderer(This,pcFrames);
}
static FORCEINLINE HRESULT IQualProp_get_FramesDrawn(IQualProp* This,int *pcFramesDrawn) {
return This->lpVtbl->get_FramesDrawn(This,pcFramesDrawn);
}
static FORCEINLINE HRESULT IQualProp_get_AvgFrameRate(IQualProp* This,int *piAvgFrameRate) {
return This->lpVtbl->get_AvgFrameRate(This,piAvgFrameRate);
}
static FORCEINLINE HRESULT IQualProp_get_Jitter(IQualProp* This,int *iJitter) {
return This->lpVtbl->get_Jitter(This,iJitter);
}
static FORCEINLINE HRESULT IQualProp_get_AvgSyncOffset(IQualProp* This,int *piAvg) {
return This->lpVtbl->get_AvgSyncOffset(This,piAvg);
}
static FORCEINLINE HRESULT IQualProp_get_DevSyncOffset(IQualProp* This,int *piDev) {
return This->lpVtbl->get_DevSyncOffset(This,piDev);
}
#endif
#endif
#endif
#endif /* __IQualProp_INTERFACE_DEFINED__ */
/*****************************************************************************
* IFullScreenVideo interface
*/
#ifndef __IFullScreenVideo_INTERFACE_DEFINED__
#define __IFullScreenVideo_INTERFACE_DEFINED__
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IFullScreenVideo : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE CountModes(
LONG *pModes) = 0;
virtual HRESULT STDMETHODCALLTYPE GetModeInfo(
LONG Mode,
LONG *pWidth,
LONG *pHeight,
LONG *pDepth) = 0;
virtual HRESULT STDMETHODCALLTYPE GetCurrentMode(
LONG *pMode) = 0;
virtual HRESULT STDMETHODCALLTYPE IsModeAvailable(
LONG Mode) = 0;
virtual HRESULT STDMETHODCALLTYPE IsModeEnabled(
LONG Mode) = 0;
virtual HRESULT STDMETHODCALLTYPE SetEnabled(
LONG Mode,
LONG bEnabled) = 0;
virtual HRESULT STDMETHODCALLTYPE GetClipFactor(
LONG *pClipFactor) = 0;
virtual HRESULT STDMETHODCALLTYPE SetClipFactor(
LONG ClipFactor) = 0;
virtual HRESULT STDMETHODCALLTYPE SetMessageDrain(
HWND hwnd) = 0;
virtual HRESULT STDMETHODCALLTYPE GetMessageDrain(
HWND *hwnd) = 0;
virtual HRESULT STDMETHODCALLTYPE SetMonitor(
LONG Monitor) = 0;
virtual HRESULT STDMETHODCALLTYPE GetMonitor(
LONG *Monitor) = 0;
virtual HRESULT STDMETHODCALLTYPE HideOnDeactivate(
LONG Hide) = 0;
virtual HRESULT STDMETHODCALLTYPE IsHideOnDeactivate(
) = 0;
virtual HRESULT STDMETHODCALLTYPE SetCaption(
BSTR strCaption) = 0;
virtual HRESULT STDMETHODCALLTYPE GetCaption(
BSTR *pstrCaption) = 0;
virtual HRESULT STDMETHODCALLTYPE SetDefault(
) = 0;
};
#else
typedef struct IFullScreenVideoVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IFullScreenVideo *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IFullScreenVideo *This);
ULONG (STDMETHODCALLTYPE *Release)(
IFullScreenVideo *This);
/*** IFullScreenVideo methods ***/
HRESULT (STDMETHODCALLTYPE *CountModes)(
IFullScreenVideo *This,
LONG *pModes);
HRESULT (STDMETHODCALLTYPE *GetModeInfo)(
IFullScreenVideo *This,
LONG Mode,
LONG *pWidth,
LONG *pHeight,
LONG *pDepth);
HRESULT (STDMETHODCALLTYPE *GetCurrentMode)(
IFullScreenVideo *This,
LONG *pMode);
HRESULT (STDMETHODCALLTYPE *IsModeAvailable)(
IFullScreenVideo *This,
LONG Mode);
HRESULT (STDMETHODCALLTYPE *IsModeEnabled)(
IFullScreenVideo *This,
LONG Mode);
HRESULT (STDMETHODCALLTYPE *SetEnabled)(
IFullScreenVideo *This,
LONG Mode,
LONG bEnabled);
HRESULT (STDMETHODCALLTYPE *GetClipFactor)(
IFullScreenVideo *This,
LONG *pClipFactor);
HRESULT (STDMETHODCALLTYPE *SetClipFactor)(
IFullScreenVideo *This,
LONG ClipFactor);
HRESULT (STDMETHODCALLTYPE *SetMessageDrain)(
IFullScreenVideo *This,
HWND hwnd);
HRESULT (STDMETHODCALLTYPE *GetMessageDrain)(
IFullScreenVideo *This,
HWND *hwnd);
HRESULT (STDMETHODCALLTYPE *SetMonitor)(
IFullScreenVideo *This,
LONG Monitor);
HRESULT (STDMETHODCALLTYPE *GetMonitor)(
IFullScreenVideo *This,
LONG *Monitor);
HRESULT (STDMETHODCALLTYPE *HideOnDeactivate)(
IFullScreenVideo *This,
LONG Hide);
HRESULT (STDMETHODCALLTYPE *IsHideOnDeactivate)(
IFullScreenVideo *This);
HRESULT (STDMETHODCALLTYPE *SetCaption)(
IFullScreenVideo *This,
BSTR strCaption);
HRESULT (STDMETHODCALLTYPE *GetCaption)(
IFullScreenVideo *This,
BSTR *pstrCaption);
HRESULT (STDMETHODCALLTYPE *SetDefault)(
IFullScreenVideo *This);
END_INTERFACE
} IFullScreenVideoVtbl;
interface IFullScreenVideo {
CONST_VTBL IFullScreenVideoVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IFullScreenVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IFullScreenVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IFullScreenVideo_Release(This) (This)->lpVtbl->Release(This)
/*** IFullScreenVideo methods ***/
#define IFullScreenVideo_CountModes(This,pModes) (This)->lpVtbl->CountModes(This,pModes)
#define IFullScreenVideo_GetModeInfo(This,Mode,pWidth,pHeight,pDepth) (This)->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth)
#define IFullScreenVideo_GetCurrentMode(This,pMode) (This)->lpVtbl->GetCurrentMode(This,pMode)
#define IFullScreenVideo_IsModeAvailable(This,Mode) (This)->lpVtbl->IsModeAvailable(This,Mode)
#define IFullScreenVideo_IsModeEnabled(This,Mode) (This)->lpVtbl->IsModeEnabled(This,Mode)
#define IFullScreenVideo_SetEnabled(This,Mode,bEnabled) (This)->lpVtbl->SetEnabled(This,Mode,bEnabled)
#define IFullScreenVideo_GetClipFactor(This,pClipFactor) (This)->lpVtbl->GetClipFactor(This,pClipFactor)
#define IFullScreenVideo_SetClipFactor(This,ClipFactor) (This)->lpVtbl->SetClipFactor(This,ClipFactor)
#define IFullScreenVideo_SetMessageDrain(This,hwnd) (This)->lpVtbl->SetMessageDrain(This,hwnd)
#define IFullScreenVideo_GetMessageDrain(This,hwnd) (This)->lpVtbl->GetMessageDrain(This,hwnd)
#define IFullScreenVideo_SetMonitor(This,Monitor) (This)->lpVtbl->SetMonitor(This,Monitor)
#define IFullScreenVideo_GetMonitor(This,Monitor) (This)->lpVtbl->GetMonitor(This,Monitor)
#define IFullScreenVideo_HideOnDeactivate(This,Hide) (This)->lpVtbl->HideOnDeactivate(This,Hide)
#define IFullScreenVideo_IsHideOnDeactivate(This) (This)->lpVtbl->IsHideOnDeactivate(This)
#define IFullScreenVideo_SetCaption(This,strCaption) (This)->lpVtbl->SetCaption(This,strCaption)
#define IFullScreenVideo_GetCaption(This,pstrCaption) (This)->lpVtbl->GetCaption(This,pstrCaption)
#define IFullScreenVideo_SetDefault(This) (This)->lpVtbl->SetDefault(This)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IFullScreenVideo_QueryInterface(IFullScreenVideo* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IFullScreenVideo_AddRef(IFullScreenVideo* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IFullScreenVideo_Release(IFullScreenVideo* This) {
return This->lpVtbl->Release(This);
}
/*** IFullScreenVideo methods ***/
static FORCEINLINE HRESULT IFullScreenVideo_CountModes(IFullScreenVideo* This,LONG *pModes) {
return This->lpVtbl->CountModes(This,pModes);
}
static FORCEINLINE HRESULT IFullScreenVideo_GetModeInfo(IFullScreenVideo* This,LONG Mode,LONG *pWidth,LONG *pHeight,LONG *pDepth) {
return This->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth);
}
static FORCEINLINE HRESULT IFullScreenVideo_GetCurrentMode(IFullScreenVideo* This,LONG *pMode) {
return This->lpVtbl->GetCurrentMode(This,pMode);
}
static FORCEINLINE HRESULT IFullScreenVideo_IsModeAvailable(IFullScreenVideo* This,LONG Mode) {
return This->lpVtbl->IsModeAvailable(This,Mode);
}
static FORCEINLINE HRESULT IFullScreenVideo_IsModeEnabled(IFullScreenVideo* This,LONG Mode) {
return This->lpVtbl->IsModeEnabled(This,Mode);
}
static FORCEINLINE HRESULT IFullScreenVideo_SetEnabled(IFullScreenVideo* This,LONG Mode,LONG bEnabled) {
return This->lpVtbl->SetEnabled(This,Mode,bEnabled);
}
static FORCEINLINE HRESULT IFullScreenVideo_GetClipFactor(IFullScreenVideo* This,LONG *pClipFactor) {
return This->lpVtbl->GetClipFactor(This,pClipFactor);
}
static FORCEINLINE HRESULT IFullScreenVideo_SetClipFactor(IFullScreenVideo* This,LONG ClipFactor) {
return This->lpVtbl->SetClipFactor(This,ClipFactor);
}
static FORCEINLINE HRESULT IFullScreenVideo_SetMessageDrain(IFullScreenVideo* This,HWND hwnd) {
return This->lpVtbl->SetMessageDrain(This,hwnd);
}
static FORCEINLINE HRESULT IFullScreenVideo_GetMessageDrain(IFullScreenVideo* This,HWND *hwnd) {
return This->lpVtbl->GetMessageDrain(This,hwnd);
}
static FORCEINLINE HRESULT IFullScreenVideo_SetMonitor(IFullScreenVideo* This,LONG Monitor) {
return This->lpVtbl->SetMonitor(This,Monitor);
}
static FORCEINLINE HRESULT IFullScreenVideo_GetMonitor(IFullScreenVideo* This,LONG *Monitor) {
return This->lpVtbl->GetMonitor(This,Monitor);
}
static FORCEINLINE HRESULT IFullScreenVideo_HideOnDeactivate(IFullScreenVideo* This,LONG Hide) {
return This->lpVtbl->HideOnDeactivate(This,Hide);
}
static FORCEINLINE HRESULT IFullScreenVideo_IsHideOnDeactivate(IFullScreenVideo* This) {
return This->lpVtbl->IsHideOnDeactivate(This);
}
static FORCEINLINE HRESULT IFullScreenVideo_SetCaption(IFullScreenVideo* This,BSTR strCaption) {
return This->lpVtbl->SetCaption(This,strCaption);
}
static FORCEINLINE HRESULT IFullScreenVideo_GetCaption(IFullScreenVideo* This,BSTR *pstrCaption) {
return This->lpVtbl->GetCaption(This,pstrCaption);
}
static FORCEINLINE HRESULT IFullScreenVideo_SetDefault(IFullScreenVideo* This) {
return This->lpVtbl->SetDefault(This);
}
#endif
#endif
#endif
#endif /* __IFullScreenVideo_INTERFACE_DEFINED__ */
/*****************************************************************************
* IFullScreenVideoEx interface
*/
#ifndef __IFullScreenVideoEx_INTERFACE_DEFINED__
#define __IFullScreenVideoEx_INTERFACE_DEFINED__
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IFullScreenVideoEx : public IFullScreenVideo
{
virtual HRESULT STDMETHODCALLTYPE SetAcceleratorTable(
HWND hwnd,
HACCEL hAccel) = 0;
virtual HRESULT STDMETHODCALLTYPE GetAcceleratorTable(
HWND *phwnd,
HACCEL *phAccel) = 0;
virtual HRESULT STDMETHODCALLTYPE KeepPixelAspectRatio(
LONG KeepAspect) = 0;
virtual HRESULT STDMETHODCALLTYPE IsKeepPixelAspectRatio(
LONG *pKeepAspect) = 0;
};
#else
typedef struct IFullScreenVideoExVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IFullScreenVideoEx *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IFullScreenVideoEx *This);
ULONG (STDMETHODCALLTYPE *Release)(
IFullScreenVideoEx *This);
/*** IFullScreenVideo methods ***/
HRESULT (STDMETHODCALLTYPE *CountModes)(
IFullScreenVideoEx *This,
LONG *pModes);
HRESULT (STDMETHODCALLTYPE *GetModeInfo)(
IFullScreenVideoEx *This,
LONG Mode,
LONG *pWidth,
LONG *pHeight,
LONG *pDepth);
HRESULT (STDMETHODCALLTYPE *GetCurrentMode)(
IFullScreenVideoEx *This,
LONG *pMode);
HRESULT (STDMETHODCALLTYPE *IsModeAvailable)(
IFullScreenVideoEx *This,
LONG Mode);
HRESULT (STDMETHODCALLTYPE *IsModeEnabled)(
IFullScreenVideoEx *This,
LONG Mode);
HRESULT (STDMETHODCALLTYPE *SetEnabled)(
IFullScreenVideoEx *This,
LONG Mode,
LONG bEnabled);
HRESULT (STDMETHODCALLTYPE *GetClipFactor)(
IFullScreenVideoEx *This,
LONG *pClipFactor);
HRESULT (STDMETHODCALLTYPE *SetClipFactor)(
IFullScreenVideoEx *This,
LONG ClipFactor);
HRESULT (STDMETHODCALLTYPE *SetMessageDrain)(
IFullScreenVideoEx *This,
HWND hwnd);
HRESULT (STDMETHODCALLTYPE *GetMessageDrain)(
IFullScreenVideoEx *This,
HWND *hwnd);
HRESULT (STDMETHODCALLTYPE *SetMonitor)(
IFullScreenVideoEx *This,
LONG Monitor);
HRESULT (STDMETHODCALLTYPE *GetMonitor)(
IFullScreenVideoEx *This,
LONG *Monitor);
HRESULT (STDMETHODCALLTYPE *HideOnDeactivate)(
IFullScreenVideoEx *This,
LONG Hide);
HRESULT (STDMETHODCALLTYPE *IsHideOnDeactivate)(
IFullScreenVideoEx *This);
HRESULT (STDMETHODCALLTYPE *SetCaption)(
IFullScreenVideoEx *This,
BSTR strCaption);
HRESULT (STDMETHODCALLTYPE *GetCaption)(
IFullScreenVideoEx *This,
BSTR *pstrCaption);
HRESULT (STDMETHODCALLTYPE *SetDefault)(
IFullScreenVideoEx *This);
/*** IFullScreenVideoEx methods ***/
HRESULT (STDMETHODCALLTYPE *SetAcceleratorTable)(
IFullScreenVideoEx *This,
HWND hwnd,
HACCEL hAccel);
HRESULT (STDMETHODCALLTYPE *GetAcceleratorTable)(
IFullScreenVideoEx *This,
HWND *phwnd,
HACCEL *phAccel);
HRESULT (STDMETHODCALLTYPE *KeepPixelAspectRatio)(
IFullScreenVideoEx *This,
LONG KeepAspect);
HRESULT (STDMETHODCALLTYPE *IsKeepPixelAspectRatio)(
IFullScreenVideoEx *This,
LONG *pKeepAspect);
END_INTERFACE
} IFullScreenVideoExVtbl;
interface IFullScreenVideoEx {
CONST_VTBL IFullScreenVideoExVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IFullScreenVideoEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IFullScreenVideoEx_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IFullScreenVideoEx_Release(This) (This)->lpVtbl->Release(This)
/*** IFullScreenVideo methods ***/
#define IFullScreenVideoEx_CountModes(This,pModes) (This)->lpVtbl->CountModes(This,pModes)
#define IFullScreenVideoEx_GetModeInfo(This,Mode,pWidth,pHeight,pDepth) (This)->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth)
#define IFullScreenVideoEx_GetCurrentMode(This,pMode) (This)->lpVtbl->GetCurrentMode(This,pMode)
#define IFullScreenVideoEx_IsModeAvailable(This,Mode) (This)->lpVtbl->IsModeAvailable(This,Mode)
#define IFullScreenVideoEx_IsModeEnabled(This,Mode) (This)->lpVtbl->IsModeEnabled(This,Mode)
#define IFullScreenVideoEx_SetEnabled(This,Mode,bEnabled) (This)->lpVtbl->SetEnabled(This,Mode,bEnabled)
#define IFullScreenVideoEx_GetClipFactor(This,pClipFactor) (This)->lpVtbl->GetClipFactor(This,pClipFactor)
#define IFullScreenVideoEx_SetClipFactor(This,ClipFactor) (This)->lpVtbl->SetClipFactor(This,ClipFactor)
#define IFullScreenVideoEx_SetMessageDrain(This,hwnd) (This)->lpVtbl->SetMessageDrain(This,hwnd)
#define IFullScreenVideoEx_GetMessageDrain(This,hwnd) (This)->lpVtbl->GetMessageDrain(This,hwnd)
#define IFullScreenVideoEx_SetMonitor(This,Monitor) (This)->lpVtbl->SetMonitor(This,Monitor)
#define IFullScreenVideoEx_GetMonitor(This,Monitor) (This)->lpVtbl->GetMonitor(This,Monitor)
#define IFullScreenVideoEx_HideOnDeactivate(This,Hide) (This)->lpVtbl->HideOnDeactivate(This,Hide)
#define IFullScreenVideoEx_IsHideOnDeactivate(This) (This)->lpVtbl->IsHideOnDeactivate(This)
#define IFullScreenVideoEx_SetCaption(This,strCaption) (This)->lpVtbl->SetCaption(This,strCaption)
#define IFullScreenVideoEx_GetCaption(This,pstrCaption) (This)->lpVtbl->GetCaption(This,pstrCaption)
#define IFullScreenVideoEx_SetDefault(This) (This)->lpVtbl->SetDefault(This)
/*** IFullScreenVideoEx methods ***/
#define IFullScreenVideoEx_SetAcceleratorTable(This,hwnd,hAccel) (This)->lpVtbl->SetAcceleratorTable(This,hwnd,hAccel)
#define IFullScreenVideoEx_GetAcceleratorTable(This,phwnd,phAccel) (This)->lpVtbl->GetAcceleratorTable(This,phwnd,phAccel)
#define IFullScreenVideoEx_KeepPixelAspectRatio(This,KeepAspect) (This)->lpVtbl->KeepPixelAspectRatio(This,KeepAspect)
#define IFullScreenVideoEx_IsKeepPixelAspectRatio(This,pKeepAspect) (This)->lpVtbl->IsKeepPixelAspectRatio(This,pKeepAspect)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IFullScreenVideoEx_QueryInterface(IFullScreenVideoEx* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IFullScreenVideoEx_AddRef(IFullScreenVideoEx* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IFullScreenVideoEx_Release(IFullScreenVideoEx* This) {
return This->lpVtbl->Release(This);
}
/*** IFullScreenVideo methods ***/
static FORCEINLINE HRESULT IFullScreenVideoEx_CountModes(IFullScreenVideoEx* This,LONG *pModes) {
return This->lpVtbl->CountModes(This,pModes);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_GetModeInfo(IFullScreenVideoEx* This,LONG Mode,LONG *pWidth,LONG *pHeight,LONG *pDepth) {
return This->lpVtbl->GetModeInfo(This,Mode,pWidth,pHeight,pDepth);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_GetCurrentMode(IFullScreenVideoEx* This,LONG *pMode) {
return This->lpVtbl->GetCurrentMode(This,pMode);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_IsModeAvailable(IFullScreenVideoEx* This,LONG Mode) {
return This->lpVtbl->IsModeAvailable(This,Mode);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_IsModeEnabled(IFullScreenVideoEx* This,LONG Mode) {
return This->lpVtbl->IsModeEnabled(This,Mode);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_SetEnabled(IFullScreenVideoEx* This,LONG Mode,LONG bEnabled) {
return This->lpVtbl->SetEnabled(This,Mode,bEnabled);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_GetClipFactor(IFullScreenVideoEx* This,LONG *pClipFactor) {
return This->lpVtbl->GetClipFactor(This,pClipFactor);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_SetClipFactor(IFullScreenVideoEx* This,LONG ClipFactor) {
return This->lpVtbl->SetClipFactor(This,ClipFactor);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_SetMessageDrain(IFullScreenVideoEx* This,HWND hwnd) {
return This->lpVtbl->SetMessageDrain(This,hwnd);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_GetMessageDrain(IFullScreenVideoEx* This,HWND *hwnd) {
return This->lpVtbl->GetMessageDrain(This,hwnd);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_SetMonitor(IFullScreenVideoEx* This,LONG Monitor) {
return This->lpVtbl->SetMonitor(This,Monitor);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_GetMonitor(IFullScreenVideoEx* This,LONG *Monitor) {
return This->lpVtbl->GetMonitor(This,Monitor);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_HideOnDeactivate(IFullScreenVideoEx* This,LONG Hide) {
return This->lpVtbl->HideOnDeactivate(This,Hide);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_IsHideOnDeactivate(IFullScreenVideoEx* This) {
return This->lpVtbl->IsHideOnDeactivate(This);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_SetCaption(IFullScreenVideoEx* This,BSTR strCaption) {
return This->lpVtbl->SetCaption(This,strCaption);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_GetCaption(IFullScreenVideoEx* This,BSTR *pstrCaption) {
return This->lpVtbl->GetCaption(This,pstrCaption);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_SetDefault(IFullScreenVideoEx* This) {
return This->lpVtbl->SetDefault(This);
}
/*** IFullScreenVideoEx methods ***/
static FORCEINLINE HRESULT IFullScreenVideoEx_SetAcceleratorTable(IFullScreenVideoEx* This,HWND hwnd,HACCEL hAccel) {
return This->lpVtbl->SetAcceleratorTable(This,hwnd,hAccel);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_GetAcceleratorTable(IFullScreenVideoEx* This,HWND *phwnd,HACCEL *phAccel) {
return This->lpVtbl->GetAcceleratorTable(This,phwnd,phAccel);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_KeepPixelAspectRatio(IFullScreenVideoEx* This,LONG KeepAspect) {
return This->lpVtbl->KeepPixelAspectRatio(This,KeepAspect);
}
static FORCEINLINE HRESULT IFullScreenVideoEx_IsKeepPixelAspectRatio(IFullScreenVideoEx* This,LONG *pKeepAspect) {
return This->lpVtbl->IsKeepPixelAspectRatio(This,pKeepAspect);
}
#endif
#endif
#endif
#endif /* __IFullScreenVideoEx_INTERFACE_DEFINED__ */
/*****************************************************************************
* IBaseVideoMixer interface
*/
#ifndef __IBaseVideoMixer_INTERFACE_DEFINED__
#define __IBaseVideoMixer_INTERFACE_DEFINED__
#if defined(__cplusplus) && !defined(CINTERFACE)
interface IBaseVideoMixer : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE SetLeadPin(
int iPin) = 0;
virtual HRESULT STDMETHODCALLTYPE GetLeadPin(
int *piPin) = 0;
virtual HRESULT STDMETHODCALLTYPE GetInputPinCount(
int *piPinCount) = 0;
virtual HRESULT STDMETHODCALLTYPE IsUsingClock(
int *pbValue) = 0;
virtual HRESULT STDMETHODCALLTYPE SetUsingClock(
int bValue) = 0;
virtual HRESULT STDMETHODCALLTYPE GetClockPeriod(
int *pbValue) = 0;
virtual HRESULT STDMETHODCALLTYPE SetClockPeriod(
int bValue) = 0;
};
#else
typedef struct IBaseVideoMixerVtbl {
BEGIN_INTERFACE
/*** IUnknown methods ***/
HRESULT (STDMETHODCALLTYPE *QueryInterface)(
IBaseVideoMixer *This,
REFIID riid,
void **ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IBaseVideoMixer *This);
ULONG (STDMETHODCALLTYPE *Release)(
IBaseVideoMixer *This);
/*** IBaseVideoMixer methods ***/
HRESULT (STDMETHODCALLTYPE *SetLeadPin)(
IBaseVideoMixer *This,
int iPin);
HRESULT (STDMETHODCALLTYPE *GetLeadPin)(
IBaseVideoMixer *This,
int *piPin);
HRESULT (STDMETHODCALLTYPE *GetInputPinCount)(
IBaseVideoMixer *This,
int *piPinCount);
HRESULT (STDMETHODCALLTYPE *IsUsingClock)(
IBaseVideoMixer *This,
int *pbValue);
HRESULT (STDMETHODCALLTYPE *SetUsingClock)(
IBaseVideoMixer *This,
int bValue);
HRESULT (STDMETHODCALLTYPE *GetClockPeriod)(
IBaseVideoMixer *This,
int *pbValue);
HRESULT (STDMETHODCALLTYPE *SetClockPeriod)(
IBaseVideoMixer *This,
int bValue);
END_INTERFACE
} IBaseVideoMixerVtbl;
interface IBaseVideoMixer {
CONST_VTBL IBaseVideoMixerVtbl* lpVtbl;
};
#ifdef COBJMACROS
#ifndef WIDL_C_INLINE_WRAPPERS
/*** IUnknown methods ***/
#define IBaseVideoMixer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
#define IBaseVideoMixer_AddRef(This) (This)->lpVtbl->AddRef(This)
#define IBaseVideoMixer_Release(This) (This)->lpVtbl->Release(This)
/*** IBaseVideoMixer methods ***/
#define IBaseVideoMixer_SetLeadPin(This,iPin) (This)->lpVtbl->SetLeadPin(This,iPin)
#define IBaseVideoMixer_GetLeadPin(This,piPin) (This)->lpVtbl->GetLeadPin(This,piPin)
#define IBaseVideoMixer_GetInputPinCount(This,piPinCount) (This)->lpVtbl->GetInputPinCount(This,piPinCount)
#define IBaseVideoMixer_IsUsingClock(This,pbValue) (This)->lpVtbl->IsUsingClock(This,pbValue)
#define IBaseVideoMixer_SetUsingClock(This,bValue) (This)->lpVtbl->SetUsingClock(This,bValue)
#define IBaseVideoMixer_GetClockPeriod(This,pbValue) (This)->lpVtbl->GetClockPeriod(This,pbValue)
#define IBaseVideoMixer_SetClockPeriod(This,bValue) (This)->lpVtbl->SetClockPeriod(This,bValue)
#else
/*** IUnknown methods ***/
static FORCEINLINE HRESULT IBaseVideoMixer_QueryInterface(IBaseVideoMixer* This,REFIID riid,void **ppvObject) {
return This->lpVtbl->QueryInterface(This,riid,ppvObject);
}
static FORCEINLINE ULONG IBaseVideoMixer_AddRef(IBaseVideoMixer* This) {
return This->lpVtbl->AddRef(This);
}
static FORCEINLINE ULONG IBaseVideoMixer_Release(IBaseVideoMixer* This) {
return This->lpVtbl->Release(This);
}
/*** IBaseVideoMixer methods ***/
static FORCEINLINE HRESULT IBaseVideoMixer_SetLeadPin(IBaseVideoMixer* This,int iPin) {
return This->lpVtbl->SetLeadPin(This,iPin);
}
static FORCEINLINE HRESULT IBaseVideoMixer_GetLeadPin(IBaseVideoMixer* This,int *piPin) {
return This->lpVtbl->GetLeadPin(This,piPin);
}
static FORCEINLINE HRESULT IBaseVideoMixer_GetInputPinCount(IBaseVideoMixer* This,int *piPinCount) {
return This->lpVtbl->GetInputPinCount(This,piPinCount);
}
static FORCEINLINE HRESULT IBaseVideoMixer_IsUsingClock(IBaseVideoMixer* This,int *pbValue) {
return This->lpVtbl->IsUsingClock(This,pbValue);
}
static FORCEINLINE HRESULT IBaseVideoMixer_SetUsingClock(IBaseVideoMixer* This,int bValue) {
return This->lpVtbl->SetUsingClock(This,bValue);
}
static FORCEINLINE HRESULT IBaseVideoMixer_GetClockPeriod(IBaseVideoMixer* This,int *pbValue) {
return This->lpVtbl->GetClockPeriod(This,pbValue);
}
static FORCEINLINE HRESULT IBaseVideoMixer_SetClockPeriod(IBaseVideoMixer* This,int bValue) {
return This->lpVtbl->SetClockPeriod(This,bValue);
}
#endif
#endif
#endif
#endif /* __IBaseVideoMixer_INTERFACE_DEFINED__ */
#define iPALETTE_COLORS 256
#define iEGA_COLORS 16
#define iMASK_COLORS 3
#define iTRUECOLOR 16
#define iRED 0
#define iGREEN 1
#define iBLUE 2
#define iPALETTE 8
#define iMAXBITS 8
typedef struct tag_TRUECOLORINFO {
DWORD dwBitMasks[3];
RGBQUAD bmiColors[256];
} TRUECOLORINFO;
typedef struct tagVIDEOINFOHEADER {
RECT rcSource;
RECT rcTarget;
DWORD dwBitRate;
DWORD dwBitErrorRate;
REFERENCE_TIME AvgTimePerFrame;
BITMAPINFOHEADER bmiHeader;
} VIDEOINFOHEADER;
typedef struct tagVIDEOINFO {
RECT rcSource;
RECT rcTarget;
DWORD dwBitRate;
DWORD dwBitErrorRate;
REFERENCE_TIME AvgTimePerFrame;
BITMAPINFOHEADER bmiHeader;
__C89_NAMELESS union {
RGBQUAD bmiColors[256];
DWORD dwBitMasks[3];
TRUECOLORINFO TrueColorInfo;
} __C89_NAMELESSUNIONNAME;
} VIDEOINFO;
typedef struct tagMPEG1VIDEOINFO {
VIDEOINFOHEADER hdr;
DWORD dwStartTimeCode;
DWORD cbSequenceHeader;
BYTE bSequenceHeader[1];
} MPEG1VIDEOINFO;
#define MAX_SIZE_MPEG1_SEQUENCE_INFO 140
#define MPEG1_SEQUENCE_INFO(pv) ((const BYTE *)(pv)->bSequenceHeader)
typedef struct tagAnalogVideoInfo {
RECT rcSource;
RECT rcTarget;
DWORD dwActiveWidth;
DWORD dwActiveHeight;
REFERENCE_TIME AvgTimePerFrame;
} ANALOGVIDEOINFO;
typedef enum __WIDL_amvideo_generated_name_0000000F {
AM_PROPERTY_FRAMESTEP_STEP = 0x1,
AM_PROPERTY_FRAMESTEP_CANCEL = 0x2,
AM_PROPERTY_FRAMESTEP_CANSTEP = 0x3,
AM_PROPERTY_FRAMESTEP_CANSTEPMULTIPLE = 0x4
} AM_PROPERTY_FRAMESTEP;
typedef struct _AM_FRAMESTEP_STEP {
DWORD dwFramesToStep;
} AM_FRAMESTEP_STEP;
/* Begin additional prototypes for all interfaces */
ULONG __RPC_USER HWND_UserSize (ULONG *, ULONG, HWND *);
unsigned char * __RPC_USER HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
void __RPC_USER HWND_UserFree (ULONG *, HWND *);
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 *);
/* End additional prototypes */
#ifdef __cplusplus
}
#endif
#endif /* __amvideo_h__ */