This repository has been archived on 2024-12-16. You can view files and clone it, but cannot push or open issues or pull requests.
CodeBlocksPortable/WATCOM/h/nt/qedit.h

1834 lines
79 KiB
C

/*
* qedit.h DirectShow editing interfaces
*
* =========================================================================
*
* Open Watcom Project
*
* Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
*
* This file is automatically generated. Do not edit directly.
*
* =========================================================================
*/
#include <rpc.h>
#include <rpcndr.h>
#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#endif
#ifndef __qedit_h__
#define __qedit_h__
#ifndef _ENABLE_AUTODEPEND
#pragma read_only_file;
#endif
#include <oaidl.h>
#include <ocidl.h>
#include <dxtrans.h>
#include <amstream.h>
#include <msxml.h>
#ifdef __cplusplus
extern "C" {
#endif
/* Forward declarations */
typedef interface IAMTimeline IAMTimeline;
typedef interface IAMTimelineGroup IAMTimelineGroup;
typedef interface ISampleGrabber ISampleGrabber;
/* Dexter error codes */
#define DEX_IDS_BAD_SOURCE_NAME 1400
#define DEX_IDS_BAD_SOURCE_NAME2 1401
#define DEX_IDS_MISSING_SOURCE_NAME 1402
#define DEX_IDS_UNKNOWN_SOURCE 1403
#define DEX_IDS_INSTALL_PROBLEM 1404
#define DEX_IDS_NO_SOURCE_NAMES 1405
#define DEX_IDS_BAD_MEDIATYPE 1406
#define DEX_IDS_STREAM_NUMBER 1407
#define DEX_IDS_OUTOFMEMORY 1408
#define DEX_IDS_DIBSEQ_NOTALLSAME 1409
#define DEX_IDS_CLIPTOOSHORT 1410
#define DEX_IDS_INVALID_DXT 1411
#define DEX_IDS_INVALID_DEFAULT_DXT 1412
#define DEX_IDS_NO_3D 1413
#define DEX_IDS_BROKEN_DXT 1414
#define DEX_IDS_NO_SUCH_PROPERTY 1415
#define DEX_IDS_ILLEGAL_PROPERTY_VAL 1416
#define DEX_IDS_INVALID_XML 1417
#define DEX_IDS_CANT_FIND_FILTER 1418
#define DEX_IDS_DISK_WRITE_ERROR 1419
#define DEX_IDS_INVALID_AUDIO_FX 1420
#define DEX_IDS_CANT_FIND_COMPRESSOR 1421
#define DEX_IDS_TIMELINE_PARSE 1426
#define DEX_IDS_GRAPH_ERROR 1427
#define DEX_IDS_GRID_ERROR 1428
#define DEX_IDS_INTERFACE_ERROR 1429
/* Dexter flags */
typedef enum {
DEXTERF_JUMP = 0,
DEXTERF_INTERPOLATE = 1
} DEXTERF;
/* Dexter parameter */
typedef struct {
BSTR Name;
DISPID dispID;
LONG nValues;
} DEXTER_PARAM;
/* Dexter value */
typedef struct {
VARIANT v;
REFERENCE_TIME rt;
DWORD dwInterp;
} DEXTER_VALUE;
/* Dexter audio methods */
enum {
DEXTER_AUDIO_JUMP = 0,
DEXTER_AUDIO_INTERPOLATE = 1
};
/* Dexter audio volume envelope */
typedef struct {
REFERENCE_TIME rtEnd;
double dLevel;
BOOL bMethod;
} DEXTER_AUDIO_VOLUMEENVELOPE;
/* Timeline insert modes */
enum {
TIMELINE_INSERT_MODE_INSERT = 1,
TIMELINE_INSERT_MODE_OVERLAY = 2
};
/* Timeline major types */
typedef enum {
TIMELINE_MAJOR_TYPE_COMPOSITE = 1,
TIMELINE_MAJOR_TYPE_TRACK = 2,
TIMELINE_MAJOR_TYPE_SOURCE = 4,
TIMELINE_MAJOR_TYPE_TRANSITION = 8,
TIMELINE_MAJOR_TYPE_EFFECT = 16,
TIMELINE_MAJOR_TYPE_GROUP = 128
} TIMELINE_MAJOR_TYPE;
/* Dexter track search flags */
typedef enum {
DEXTERF_BOUNDING = -1,
DEXTERF_EXACTLY_AT = 0,
DEXTERF_FORWARDS = 1
} DEXTERF_TRACK_SEARCH_FLAGS;
/* Smart compression format */
typedef struct _SCompFmt0 {
long nFormatId;
AM_MEDIA_TYPE MediaType;
} SCompFmt0;
/* Resize flags */
enum {
RESIZEF_STRETCH = 0,
RESIZEF_CROP = 1,
RESIZEF_PRESERVEASPECTRATIO = 2,
RESIZEF_PRESERVEASPECTRATIO_NOLETTERBOX = 3
};
/* Connect flags */
enum {
CONNECTF_DYNAMIC_NONE = 0x00000000,
CONNECTF_DYNAMIC_SOURCES = 0x00000001,
CONNECTF_DYNAMIC_EFFECTS = 0x00000002
};
/* Validate flags */
enum {
SFN_VALIDATEF_CHECK = 0x00000001,
SFN_VALIDATEF_POPUP = 0x00000002,
SFN_VALIDATEF_TELLME = 0x00000004,
SFN_VALIDATEF_REPLACE = 0x00000008,
SFN_VALIDATEF_USELOCAL = 0x00000010,
SFN_VALIDATEF_NOFIND = 0x00000020,
SFN_VALIDATEF_IGNOREMUTED = 0x00000040,
SFN_VALIDATEF_END
};
/* DirectX transformation keys */
enum {
DXTKEY_RGB = 0,
DXTKEY_NONRED = 1,
DXTKEY_LUMINANCE = 2,
DXTKEY_ALPHA = 3,
DXTKEY_HUE = 4
};
/* Editing return codes */
enum {
E_NOTINTREE = 0x80040400,
E_RENDER_ENGINE_IS_BROKEN = 0x80040401,
E_MUST_INIT_RENDERER = 0x80040402,
E_NOTDETERMINED = 0x80040403,
E_NO_TIMELINE = 0x80040404,
S_WARN_OUTPUTRESET = 40404
};
/* GUIDs */
EXTERN_C const IID IID_IPropertySetter;
EXTERN_C const IID IID_IDxtCompositor;
EXTERN_C const IID IID_IDxtAlphaSetter;
EXTERN_C const IID IID_IDxtJpeg;
EXTERN_C const IID IID_IDxtKey;
EXTERN_C const IID IID_IMediaLocator;
EXTERN_C const IID IID_IMediaDet;
EXTERN_C const IID IID_IGrfCache;
EXTERN_C const IID IID_IRenderEngine;
EXTERN_C const IID IID_IRenderEngine2;
EXTERN_C const IID IID_IFindCompressorCB;
EXTERN_C const IID IID_ISmartRenderEngine;
EXTERN_C const IID IID_IAMTimelineObj;
EXTERN_C const IID IID_IAMTimelineEffectable;
EXTERN_C const IID IID_IAMTimelineEffect;
EXTERN_C const IID IID_IAMTimelineTransable;
EXTERN_C const IID IID_IAMTimelineSplittable;
EXTERN_C const IID IID_IAMTimelineTrans;
EXTERN_C const IID IID_IAMTimelineSrc;
EXTERN_C const IID IID_IAMTimelineTrack;
EXTERN_C const IID IID_IAMTimelineVirtualTrack;
EXTERN_C const IID IID_IAMTimelineComp;
EXTERN_C const IID IID_IAMTimelineGroup;
EXTERN_C const IID IID_IAMTimeline;
EXTERN_C const IID IID_IXml2Dex;
EXTERN_C const IID IID_IAMErrorLog;
EXTERN_C const IID IID_IAMSetErrorLog;
EXTERN_C const IID IID_ISampleGrabberCB;
EXTERN_C const IID IID_ISampleGrabber;
EXTERN_C const IID LIBID_DexterLib;
EXTERN_C const IID IID_IResize;
EXTERN_C const CLSID CLSID_AMTimeline;
EXTERN_C const CLSID CLSID_AMTimelineObj;
EXTERN_C const CLSID CLSID_AMTimelineSrc;
EXTERN_C const CLSID CLSID_AMTimelineTrack;
EXTERN_C const CLSID CLSID_AMTimelineComp;
EXTERN_C const CLSID CLSID_AMTimelineGroup;
EXTERN_C const CLSID CLSID_AMTimelineTrans;
EXTERN_C const CLSID CLSID_AMTimelineEffect;
EXTERN_C const CLSID CLSID_RenderEngine;
EXTERN_C const CLSID CLSID_SmartRenderEngine;
EXTERN_C const CLSID CLSID_AudMixer;
EXTERN_C const CLSID CLSID_Xml2Dex;
EXTERN_C const CLSID CLSID_MediaLocator;
EXTERN_C const CLSID CLSID_PropertySetter;
EXTERN_C const CLSID CLSID_MediaDet;
EXTERN_C const CLSID CLSID_SampleGrabber;
EXTERN_C const CLSID CLSID_NullRenderer;
EXTERN_C const CLSID CLSID_DxtCompositor;
EXTERN_C const CLSID CLSID_DxtAlphaSetter;
EXTERN_C const CLSID CLSID_DxtJpeg;
EXTERN_C const CLSID CLSID_ColorSource;
EXTERN_C const CLSID CLSID_DxtKey;
/* IPropertySetter interface */
#undef INTERFACE
#define INTERFACE IPropertySetter
DECLARE_INTERFACE_( IPropertySetter, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IPropertySetter methods */
STDMETHOD( LoadXML )( THIS_ IUnknown * ) PURE;
STDMETHOD( PrintXML )( THIS_ char *, int, int *, int ) PURE;
STDMETHOD( CloneProps )( THIS_ IPropertySetter **, REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( AddProp )( THIS_ DEXTER_PARAM, DEXTER_VALUE * ) PURE;
STDMETHOD( GetProps )( THIS_ LONG *, DEXTER_PARAM **, DEXTER_VALUE ** ) PURE;
STDMETHOD( FreeProps )( THIS_ LONG, DEXTER_PARAM *, DEXTER_VALUE * ) PURE;
STDMETHOD( ClearProps )( THIS ) PURE;
STDMETHOD( SaveToBlob )( THIS_ LONG *, BYTE ** ) PURE;
STDMETHOD( LoadFromBlob )( THIS_ LONG, BYTE * ) PURE;
STDMETHOD( SetProps )( THIS_ IUnknown *, REFERENCE_TIME ) PURE;
STDMETHOD( PrintXMLW )( THIS_ WCHAR *, int, int *, int ) PURE;
};
/* IDxtCompositor interface */
#undef INTERFACE
#define INTERFACE IDxtCompositor
DECLARE_INTERFACE_( IDxtCompositor, IDXEffect ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IDispatch methods */
STDMETHOD( GetTypeInfoCount )( THIS_ UINT * ) PURE;
STDMETHOD( GetTypeInfo )( THIS_ UINT, LCID, ITypeInfo ** ) PURE;
STDMETHOD( GetIDsOfNames )( THIS_ REFIID, LPOLESTR *, UINT, LCID, DISPID * ) PURE;
STDMETHOD( Invoke )( THIS_ DISPID, REFIID, LCID, WORD, DISPPARAMS *, VARIANT *, EXCEPINFO *, UINT * ) PURE;
/* IDXEffect methods */
STDMETHOD( get_Capabilities )( THIS_ long * ) PURE;
STDMETHOD( get_Progress )( THIS_ float * ) PURE;
STDMETHOD( put_Progress )( THIS_ float ) PURE;
STDMETHOD( get_StepResolution )( THIS_ float * ) PURE;
STDMETHOD( get_Duration )( THIS_ float * ) PURE;
STDMETHOD( put_Duration )( THIS_ float ) PURE;
/* IDxtCompositor methods */
STDMETHOD( get_OffsetX )( THIS_ long * ) PURE;
STDMETHOD( put_OffsetX )( THIS_ long ) PURE;
STDMETHOD( get_OffsetY )( THIS_ long * ) PURE;
STDMETHOD( put_OffsetY )( THIS_ long ) PURE;
STDMETHOD( get_Width )( THIS_ long * ) PURE;
STDMETHOD( put_Width )( THIS_ long ) PURE;
STDMETHOD( get_Height )( THIS_ long * ) PURE;
STDMETHOD( put_Height )( THIS_ long ) PURE;
STDMETHOD( get_SrcOffsetX )( THIS_ long * ) PURE;
STDMETHOD( put_SrcOffsetX )( THIS_ long ) PURE;
STDMETHOD( get_SrcOffsetY )( THIS_ long * ) PURE;
STDMETHOD( put_SrcOffsetY )( THIS_ long ) PURE;
STDMETHOD( get_SrcWidth )( THIS_ long * ) PURE;
STDMETHOD( put_SrcWidth )( THIS_ long ) PURE;
STDMETHOD( get_SrcHeight )( THIS_ long * ) PURE;
STDMETHOD( put_SrcHeight )( THIS_ long ) PURE;
};
/* IDxtAlphaSetter interface */
#undef INTERFACE
#define INTERFACE IDxtAlphaSetter
DECLARE_INTERFACE_( IDxtAlphaSetter, IDXEffect ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IDispatch methods */
STDMETHOD( GetTypeInfoCount )( THIS_ UINT * ) PURE;
STDMETHOD( GetTypeInfo )( THIS_ UINT, LCID, ITypeInfo ** ) PURE;
STDMETHOD( GetIDsOfNames )( THIS_ REFIID, LPOLESTR *, UINT, LCID, DISPID * ) PURE;
STDMETHOD( Invoke )( THIS_ DISPID, REFIID, LCID, WORD, DISPPARAMS *, VARIANT *, EXCEPINFO *, UINT * ) PURE;
/* IDXEffect methods */
STDMETHOD( get_Capabilities )( THIS_ long * ) PURE;
STDMETHOD( get_Progress )( THIS_ float * ) PURE;
STDMETHOD( put_Progress )( THIS_ float ) PURE;
STDMETHOD( get_StepResolution )( THIS_ float * ) PURE;
STDMETHOD( get_Duration )( THIS_ float * ) PURE;
STDMETHOD( put_Duration )( THIS_ float ) PURE;
/* IDxtAlphaSetter methods */
STDMETHOD( get_Alpha )( THIS_ long * ) PURE;
STDMETHOD( put_Alpha )( THIS_ long ) PURE;
STDMETHOD( get_AlphaRamp )( THIS_ double * ) PURE;
STDMETHOD( put_AlphaRamp )( THIS_ double ) PURE;
};
/* IDxtJpeg interface */
#undef INTERFACE
#define INTERFACE IDxtJpeg
DECLARE_INTERFACE_( IDxtJpeg, IDXEffect ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IDispatch methods */
STDMETHOD( GetTypeInfoCount )( THIS_ UINT * ) PURE;
STDMETHOD( GetTypeInfo )( THIS_ UINT, LCID, ITypeInfo ** ) PURE;
STDMETHOD( GetIDsOfNames )( THIS_ REFIID, LPOLESTR *, UINT, LCID, DISPID * ) PURE;
STDMETHOD( Invoke )( THIS_ DISPID, REFIID, LCID, WORD, DISPPARAMS *, VARIANT *, EXCEPINFO *, UINT * ) PURE;
/* IDXEffect methods */
STDMETHOD( get_Capabilities )( THIS_ long * ) PURE;
STDMETHOD( get_Progress )( THIS_ float * ) PURE;
STDMETHOD( put_Progress )( THIS_ float ) PURE;
STDMETHOD( get_StepResolution )( THIS_ float * ) PURE;
STDMETHOD( get_Duration )( THIS_ float * ) PURE;
STDMETHOD( put_Duration )( THIS_ float ) PURE;
/* IDxtJpeg methods */
STDMETHOD( get_MaskNum )( THIS_ long * ) PURE;
STDMETHOD( put_MaskNum )( THIS_ long ) PURE;
STDMETHOD( get_MaskName )( THIS_ BSTR * ) PURE;
STDMETHOD( put_MaskName )( THIS_ BSTR ) PURE;
STDMETHOD( get_ScaleX )( THIS_ double * ) PURE;
STDMETHOD( put_ScaleX )( THIS_ double ) PURE;
STDMETHOD( get_ScaleY )( THIS_ double * ) PURE;
STDMETHOD( put_ScaleY )( THIS_ double ) PURE;
STDMETHOD( get_OffsetX )( THIS_ long * ) PURE;
STDMETHOD( put_OffsetX )( THIS_ long ) PURE;
STDMETHOD( get_OffsetY )( THIS_ long * ) PURE;
STDMETHOD( put_OffsetY )( THIS_ long ) PURE;
STDMETHOD( get_ReplicateX )( THIS_ long * ) PURE;
STDMETHOD( put_ReplicateX )( THIS_ long ) PURE;
STDMETHOD( get_ReplicateY )( THIS_ long * ) PURE;
STDMETHOD( put_ReplicateY )( THIS_ long ) PURE;
STDMETHOD( get_BorderColor )( THIS_ long * ) PURE;
STDMETHOD( put_BorderColor )( THIS_ long ) PURE;
STDMETHOD( get_BorderWidth )( THIS_ long * ) PURE;
STDMETHOD( put_BorderWidth )( THIS_ long ) PURE;
STDMETHOD( get_BorderSoftness )( THIS_ long * ) PURE;
STDMETHOD( put_BorderSoftness )( THIS_ long ) PURE;
STDMETHOD( ApplyChanges )( THIS ) PURE;
STDMETHOD( LoadDefSettings )( THIS ) PURE;
};
/* IDxtKey interface */
#undef INTERFACE
#define INTERFACE IDxtKey
DECLARE_INTERFACE_( IDxtKey, IDXEffect ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IDispatch methods */
STDMETHOD( GetTypeInfoCount )( THIS_ UINT * ) PURE;
STDMETHOD( GetTypeInfo )( THIS_ UINT, LCID, ITypeInfo ** ) PURE;
STDMETHOD( GetIDsOfNames )( THIS_ REFIID, LPOLESTR *, UINT, LCID, DISPID * ) PURE;
STDMETHOD( Invoke )( THIS_ DISPID, REFIID, LCID, WORD, DISPPARAMS *, VARIANT *, EXCEPINFO *, UINT * ) PURE;
/* IDXEffect methods */
STDMETHOD( get_Capabilities )( THIS_ long * ) PURE;
STDMETHOD( get_Progress )( THIS_ float * ) PURE;
STDMETHOD( put_Progress )( THIS_ float ) PURE;
STDMETHOD( get_StepResolution )( THIS_ float * ) PURE;
STDMETHOD( get_Duration )( THIS_ float * ) PURE;
STDMETHOD( put_Duration )( THIS_ float ) PURE;
/* IDxtKey methods */
STDMETHOD( get_KeyType )( THIS_ int * ) PURE;
STDMETHOD( put_KeyType )( THIS_ int ) PURE;
STDMETHOD( get_Hue )( THIS_ int * ) PURE;
STDMETHOD( put_Hue )( THIS_ int ) PURE;
STDMETHOD( get_Luminance )( THIS_ int * ) PURE;
STDMETHOD( put_Luminance )( THIS_ int ) PURE;
STDMETHOD( get_RGB )( THIS_ DWORD * ) PURE;
STDMETHOD( put_RGB )( THIS_ DWORD ) PURE;
STDMETHOD( get_Similarity )( THIS_ int * ) PURE;
STDMETHOD( put_Similarity )( THIS_ int ) PURE;
STDMETHOD( get_Invert )( THIS_ BOOL * ) PURE;
STDMETHOD( put_Invert )( THIS_ BOOL ) PURE;
};
/* IMediaLocator interface */
#undef INTERFACE
#define INTERFACE IMediaLocator
DECLARE_INTERFACE_( IMediaLocator, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IMediaLocator methods */
STDMETHOD( FindMediaFile )( THIS_ BSTR, BSTR, BSTR *, long ) PURE;
STDMETHOD( AddFoundLocation )( THIS_ BSTR ) PURE;
};
/* IMediaDet interface */
#undef INTERFACE
#define INTERFACE IMediaDet
DECLARE_INTERFACE_( IMediaDet, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IMediaDet methods */
STDMETHOD( get_Filter )( THIS_ IUnknown ** ) PURE;
STDMETHOD( put_Filter )( THIS_ IUnknown * ) PURE;
STDMETHOD( get_OutputStreams )( THIS_ long * ) PURE;
STDMETHOD( get_CurrentStream )( THIS_ long * ) PURE;
STDMETHOD( put_CurrentStream )( THIS_ long ) PURE;
STDMETHOD( get_StreamType )( THIS_ GUID * ) PURE;
STDMETHOD( get_StreamTypeB )( THIS_ BSTR * ) PURE;
STDMETHOD( get_StreamLength )( THIS_ double * ) PURE;
STDMETHOD( get_Filename )( THIS_ BSTR * ) PURE;
STDMETHOD( put_Filename )( THIS_ BSTR ) PURE;
STDMETHOD( GetBitmapBits )( THIS_ double, long *, char *, long, long ) PURE;
STDMETHOD( WriteBitmapBits )( THIS_ double, long, long, BSTR ) PURE;
STDMETHOD( get_StreamMediaType )( THIS_ AM_MEDIA_TYPE * ) PURE;
STDMETHOD( GetSampleGrabber )( THIS_ ISampleGrabber ** ) PURE;
STDMETHOD( get_FrameRate )( THIS_ double * ) PURE;
STDMETHOD( EnterBitmapGrabMode )( THIS_ double ) PURE;
};
/* IGrfCache interface */
#undef INTERFACE
#define INTERFACE IGrfCache
DECLARE_INTERFACE_( IGrfCache, IDispatch ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IDispatch methods */
STDMETHOD( GetTypeInfoCount )( THIS_ UINT * ) PURE;
STDMETHOD( GetTypeInfo )( THIS_ UINT, LCID, ITypeInfo ** ) PURE;
STDMETHOD( GetIDsOfNames )( THIS_ REFIID, LPOLESTR *, UINT, LCID, DISPID * ) PURE;
STDMETHOD( Invoke )( THIS_ DISPID, REFIID, LCID, WORD, DISPPARAMS *, VARIANT *, EXCEPINFO *, UINT * ) PURE;
/* IGrfCache methods */
STDMETHOD( AddFilter )( THIS_ IGrfCache *, LONGLONG, const IBaseFilter *, LPCWSTR ) PURE;
STDMETHOD( ConnectPins )( THIS_ IGrfCache *, LONGLONG, const IPin *, LONGLONG, const IPin * ) PURE;
STDMETHOD( SetGraph )( THIS_ const IGraphBuilder * ) PURE;
STDMETHOD( DoConnectionsNow )( THIS ) PURE;
};
/* IRenderEngine interface */
#undef INTERFACE
#define INTERFACE IRenderEngine
DECLARE_INTERFACE_( IRenderEngine, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IRenderEngine methods */
STDMETHOD( SetTimelineObject )( THIS_ IAMTimeline * ) PURE;
STDMETHOD( GetTimelineObject )( THIS_ IAMTimeline ** ) PURE;
STDMETHOD( GetFilterGraph )( THIS_ IGraphBuilder ** ) PURE;
STDMETHOD( SetFilterGraph )( THIS_ IGraphBuilder * ) PURE;
STDMETHOD( SetInterestRange )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( SetInterestRange2 )( THIS_ double, double ) PURE;
STDMETHOD( SetRenderRange )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( SetRenderRange2 )( THIS_ double, double ) PURE;
STDMETHOD( GetGroupOutputPin )( THIS_ long, IPin ** ) PURE;
STDMETHOD( ScrapIt )( THIS ) PURE;
STDMETHOD( RenderOutputPins )( THIS ) PURE;
STDMETHOD( GetVendorString )( THIS_ BSTR * ) PURE;
STDMETHOD( ConnectFrontEnd )( THIS ) PURE;
STDMETHOD( SetSourceConnectCallback )( THIS_ IGrfCache * ) PURE;
STDMETHOD( SetDynamicReconnectLevel )( THIS_ long ) PURE;
STDMETHOD( DoSmartRecompression )( THIS ) PURE;
STDMETHOD( UseInSmartRecompressionGraph )( THIS ) PURE;
STDMETHOD( SetSourceNameValidation )( THIS_ BSTR, IMediaLocator *, LONG ) PURE;
STDMETHOD( Commit )( THIS ) PURE;
STDMETHOD( Decommit )( THIS ) PURE;
STDMETHOD( GetCaps )( THIS_ long, long * ) PURE;
};
/* IRenderEngine2 interface */
#undef INTERFACE
#define INTERFACE IRenderEngine2
DECLARE_INTERFACE_( IRenderEngine2, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IRenderEngine2 methods */
STDMETHOD( SetResizerGUID )( THIS_ GUID ) PURE;
};
/* IFindCompressorCB interface */
#undef INTERFACE
#define INTERFACE IFindCompressorCB
DECLARE_INTERFACE_( IFindCompressorCB, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IFindCompressorCB methods */
STDMETHOD( GetCompressor )( THIS_ AM_MEDIA_TYPE *, AM_MEDIA_TYPE *, IBaseFilter ** ) PURE;
};
/* ISmartRenderEngine interface */
#undef INTERFACE
#define INTERFACE ISmartRenderEngine
DECLARE_INTERFACE_( ISmartRenderEngine, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* ISmartRenderEngine methods */
STDMETHOD( SetGroupCompressor )( THIS_ long, IBaseFilter * ) PURE;
STDMETHOD( GetGroupCompressor )( THIS_ long, IBaseFilter ** ) PURE;
STDMETHOD( SetFindCompressorCB )( THIS_ IFindCompressorCB * ) PURE;
};
/* IAMTimelineObj interface */
#undef INTERFACE
#define INTERFACE IAMTimelineObj
DECLARE_INTERFACE_( IAMTimelineObj, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineObj methods */
STDMETHOD( GetStartStop )( THIS_ REFERENCE_TIME *, REFERENCE_TIME * ) PURE;
STDMETHOD( GetStartStop2 )( THIS_ REFTIME *, REFTIME * ) PURE;
STDMETHOD( FixTimes )( THIS_ REFERENCE_TIME *, REFERENCE_TIME * ) PURE;
STDMETHOD( FixTimes2 )( THIS_ REFTIME *, REFTIME * ) PURE;
STDMETHOD( SetStartStop )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( SetStartStop2 )( THIS_ REFTIME, REFTIME ) PURE;
STDMETHOD( GetPropertySetter )( THIS_ IPropertySetter ** ) PURE;
STDMETHOD( SetPropertySetter )( THIS_ IPropertySetter * ) PURE;
STDMETHOD( GetSubObject )( THIS_ IUnknown ** ) PURE;
STDMETHOD( SetSubObject )( THIS_ IUnknown * ) PURE;
STDMETHOD( SetSubObjectGUID )( THIS_ GUID ) PURE;
STDMETHOD( SetSubObjectGUIDB )( THIS_ BSTR ) PURE;
STDMETHOD( GetSubObjectGUID )( THIS_ GUID * ) PURE;
STDMETHOD( GetSubObjectGUIDB )( THIS_ BSTR * ) PURE;
STDMETHOD( GetSubObjectLoaded )( THIS_ BOOL * ) PURE;
STDMETHOD( GetTimelineType )( THIS_ TIMELINE_MAJOR_TYPE * ) PURE;
STDMETHOD( SetTimelineType )( THIS_ TIMELINE_MAJOR_TYPE ) PURE;
STDMETHOD( GetUserID )( THIS_ long * ) PURE;
STDMETHOD( SetUserID )( THIS_ long ) PURE;
STDMETHOD( GetGenID )( THIS_ long * ) PURE;
STDMETHOD( GetUserName )( THIS_ BSTR * ) PURE;
STDMETHOD( SetUserName )( THIS_ BSTR ) PURE;
STDMETHOD( GetUserData )( THIS_ BYTE *, long * ) PURE;
STDMETHOD( SetUserData )( THIS_ BYTE *, long ) PURE;
STDMETHOD( GetMuted )( THIS_ BOOL * ) PURE;
STDMETHOD( SetMuted )( THIS_ BOOL ) PURE;
STDMETHOD( GetLocked )( THIS_ BOOL * ) PURE;
STDMETHOD( SetLocked )( THIS_ BOOL ) PURE;
STDMETHOD( GetDirtyRange )( THIS_ REFERENCE_TIME *, REFERENCE_TIME * ) PURE;
STDMETHOD( GetDirtyRange2 )( THIS_ REFTIME *, REFTIME * ) PURE;
STDMETHOD( SetDirtyRange )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( SetDirtyRange2 )( THIS_ REFTIME, REFTIME ) PURE;
STDMETHOD( ClearDirty )( THIS ) PURE;
STDMETHOD( Remove )( THIS ) PURE;
STDMETHOD( RemoveAll )( THIS ) PURE;
STDMETHOD( GetTimelineNoRef )( THIS_ IAMTimeline ** ) PURE;
STDMETHOD( GetGroupIBelongTo )( THIS_ IAMTimelineGroup ** ) PURE;
STDMETHOD( GetEmbedDepth )( THIS_ long * ) PURE;
};
/* IAMTimelineEffectable interface */
#undef INTERFACE
#define INTERFACE IAMTimelineEffectable
DECLARE_INTERFACE_( IAMTimelineEffectable, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineEffectable methods */
STDMETHOD( EffectInsBefore )( THIS_ IAMTimelineObj *, long ) PURE;
STDMETHOD( EffectSwapPriorities )( THIS_ long, long ) PURE;
STDMETHOD( EffectGetCount )( THIS_ long * ) PURE;
STDMETHOD( GetEffect )( THIS_ IAMTimelineObj **, long ) PURE;
};
/* IAMTimelineEffect interface */
#undef INTERFACE
#define INTERFACE IAMTimelineEffect
DECLARE_INTERFACE_( IAMTimelineEffect, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineEffect methods */
STDMETHOD( EffectGetPriority )( THIS_ long * ) PURE;
};
/* IAMTimelineTransable interface */
#undef INTERFACE
#define INTERFACE IAMTimelineTransable
DECLARE_INTERFACE_( IAMTimelineTransable, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineTransable methods */
STDMETHOD( TransAdd )( THIS_ IAMTimelineObj * ) PURE;
STDMETHOD( TransGetCount )( THIS_ long * ) PURE;
STDMETHOD( GetNextTrans )( THIS_ IAMTimelineObj **, REFERENCE_TIME * ) PURE;
STDMETHOD( GetNextTrans2 )( THIS_ IAMTimelineObj **, REFTIME * ) PURE;
STDMETHOD( GetTransAtTime )( THIS_ IAMTimelineObj **, REFERENCE_TIME, long ) PURE;
STDMETHOD( GetTransAtTime2 )( THIS_ IAMTimelineObj **, REFTIME, long ) PURE;
};
/* IAMTimelineSplittable interface */
#undef INTERFACE
#define INTERFACE IAMTimelineSplittable
DECLARE_INTERFACE_( IAMTimelineSplittable, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineSplittable methods */
STDMETHOD( SplitAt )( THIS_ REFERENCE_TIME ) PURE;
STDMETHOD( SplitAt2 )( THIS_ REFTIME ) PURE;
};
/* IAMTimelineTrans interface */
#undef INTERFACE
#define INTERFACE IAMTimelineTrans
DECLARE_INTERFACE_( IAMTimelineTrans, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineTrans methods */
STDMETHOD( GetCutPoint )( THIS_ REFERENCE_TIME * ) PURE;
STDMETHOD( GetCutPoint2 )( THIS_ REFTIME * ) PURE;
STDMETHOD( SetCutPoint )( THIS_ REFERENCE_TIME ) PURE;
STDMETHOD( SetCutPoint2 )( THIS_ REFTIME ) PURE;
STDMETHOD( GetSwapInputs )( THIS_ BOOL * ) PURE;
STDMETHOD( SetSwapInputs )( THIS_ BOOL ) PURE;
STDMETHOD( GetCutsOnly )( THIS_ BOOL * ) PURE;
STDMETHOD( SetCutsOnly )( THIS_ BOOL ) PURE;
};
/* IAMTimelineSrc interface */
#undef INTERFACE
#define INTERFACE IAMTimelineSrc
DECLARE_INTERFACE_( IAMTimelineSrc, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineSrc methods */
STDMETHOD( GetMediaTimes )( THIS_ REFERENCE_TIME *, REFERENCE_TIME * ) PURE;
STDMETHOD( GetMediaTimes2 )( THIS_ REFTIME *, REFTIME * ) PURE;
STDMETHOD( ModifyStopTime )( THIS_ REFERENCE_TIME ) PURE;
STDMETHOD( ModifyStopTime2 )( THIS_ REFTIME ) PURE;
STDMETHOD( FixMediaTimes )( THIS_ REFERENCE_TIME *, REFERENCE_TIME * ) PURE;
STDMETHOD( FixMediaTimes2 )( THIS_ REFTIME *, REFTIME * ) PURE;
STDMETHOD( SetMediaTimes )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( SetMediaTimes2 )( THIS_ REFTIME, REFTIME ) PURE;
STDMETHOD( SetMediaLength )( THIS_ REFERENCE_TIME ) PURE;
STDMETHOD( SetMediaLength2 )( THIS_ REFTIME ) PURE;
STDMETHOD( GetMediaLength )( THIS_ REFERENCE_TIME * ) PURE;
STDMETHOD( GetMediaLength2 )( THIS_ REFTIME * ) PURE;
STDMETHOD( GetMediaName )( THIS_ BSTR * ) PURE;
STDMETHOD( SetMediaName )( THIS_ BSTR ) PURE;
STDMETHOD( SpliceWithNext )( THIS_ IAMTimelineObj * ) PURE;
STDMETHOD( GetStreamNumber )( THIS_ long * ) PURE;
STDMETHOD( SetStreamNumber )( THIS_ long ) PURE;
STDMETHOD( IsNormalRate )( THIS_ BOOL * ) PURE;
STDMETHOD( GetDefaultEPS )( THIS_ double * ) PURE;
STDMETHOD( SetDefaultEPS )( THIS_ double ) PURE;
STDMETHOD( GetStretchMode )( THIS_ int * ) PURE;
STDMETHOD( SetStretchMode )( THIS_ int ) PURE;
};
/* IAMTimelineTrack interface */
#undef INTERFACE
#define INTERFACE IAMTimelineTrack
DECLARE_INTERFACE_( IAMTimelineTrack, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineTrack methods */
STDMETHOD( SrcAdd )( THIS_ IAMTimelineObj * ) PURE;
STDMETHOD( GetNextSrc )( THIS_ IAMTimelineObj **, REFERENCE_TIME * ) PURE;
STDMETHOD( GetNextSrc2 )( THIS_ IAMTimelineObj **, REFTIME * ) PURE;
STDMETHOD( MoveEverythingBy )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( MoveEverythingBy2 )( THIS_ REFTIME, REFTIME ) PURE;
STDMETHOD( GetSourcesCount )( THIS_ long * ) PURE;
STDMETHOD( AreYouBlank )( THIS_ long * ) PURE;
STDMETHOD( GetSrcAtTime )( THIS_ IAMTimelineObj **, REFERENCE_TIME, long ) PURE;
STDMETHOD( GetSrcAtTime2 )( THIS_ IAMTimelineObj **, REFTIME, long ) PURE;
STDMETHOD( InsertSpace )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( InsertSpace2 )( THIS_ REFTIME, REFTIME ) PURE;
STDMETHOD( ZeroBetween )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( ZeroBetween2 )( THIS_ REFTIME, REFTIME ) PURE;
STDMETHOD( GetNextSrcEx )( THIS_ IAMTimelineObj *, IAMTimelineObj ** ) PURE;
};
/* IAMTimelineVirtualTrack interface */
#undef INTERFACE
#define INTERFACE IAMTimelineVirtualTrack
DECLARE_INTERFACE_( IAMTimelineVirtualTrack, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineVirtualTrack methods */
STDMETHOD( TrackGetPriority )( THIS_ long * ) PURE;
STDMETHOD( SetTrackDirty )( THIS ) PURE;
};
/* IAMTimelineComp interface */
#undef INTERFACE
#define INTERFACE IAMTimelineComp
DECLARE_INTERFACE_( IAMTimelineComp, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineComp methods */
STDMETHOD( VTrackInsBefore )( THIS_ IAMTimelineObj *, long ) PURE;
STDMETHOD( VTrackSwapPriorities )( THIS_ long, long ) PURE;
STDMETHOD( VTrackGetCount )( THIS_ long * ) PURE;
STDMETHOD( GetVTrack )( THIS_ IAMTimelineObj **, long ) PURE;
STDMETHOD( GetCountOfType )( THIS_ long *, long *, TIMELINE_MAJOR_TYPE ) PURE;
STDMETHOD( GetRecursiveLayerOfType )( THIS_ IAMTimelineObj **, long, TIMELINE_MAJOR_TYPE ) PURE;
STDMETHOD( GetRecursiveLayerOfTypeI )( THIS_ IAMTimelineObj **, long *, TIMELINE_MAJOR_TYPE ) PURE;
STDMETHOD( GetNextVTrack )( THIS_ IAMTimelineObj *, IAMTimelineObj ** ) PURE;
};
/* IAMTimelineGroup interface */
#undef INTERFACE
#define INTERFACE IAMTimelineGroup
DECLARE_INTERFACE_( IAMTimelineGroup, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimelineGroup methods */
STDMETHOD( SetTimeline )( THIS_ IAMTimeline * ) PURE;
STDMETHOD( GetTimeline )( THIS_ IAMTimeline ** ) PURE;
STDMETHOD( GetPriority )( THIS_ long * ) PURE;
STDMETHOD( GetMediaType )( THIS_ AM_MEDIA_TYPE * ) PURE;
STDMETHOD( SetMediaType )( THIS_ AM_MEDIA_TYPE * ) PURE;
STDMETHOD( SetOutputFPS )( THIS_ double ) PURE;
STDMETHOD( GetOutputFPS )( THIS_ double * ) PURE;
STDMETHOD( SetGroupName )( THIS_ BSTR ) PURE;
STDMETHOD( GetGroupName )( THIS_ BSTR * ) PURE;
STDMETHOD( SetPreviewMode )( THIS_ BOOL ) PURE;
STDMETHOD( GetPreviewMode )( THIS_ BOOL * ) PURE;
STDMETHOD( SetMediaTypeForVB )( THIS_ long ) PURE;
STDMETHOD( GetOutputBuffering )( THIS_ int * ) PURE;
STDMETHOD( SetOutputBuffering )( THIS_ int ) PURE;
STDMETHOD( SetSmartRecompressFormat )( THIS_ long * ) PURE;
STDMETHOD( GetSmartRecompressFormat )( THIS_ long ** ) PURE;
STDMETHOD( IsSmartRecompressFormatSet )( THIS_ BOOL * ) PURE;
STDMETHOD( IsRecompressFormatDirty )( THIS_ BOOL * ) PURE;
STDMETHOD( ClearRecompressFormatDirty )( THIS ) PURE;
STDMETHOD( SetRecompFormatFromSource )( THIS_ IAMTimelineSrc * ) PURE;
};
/* IAMTimeline interface */
#undef INTERFACE
#define INTERFACE IAMTimeline
DECLARE_INTERFACE_( IAMTimeline, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMTimeline methods */
STDMETHOD( CreateEmptyNode )( THIS_ IAMTimelineObj **, TIMELINE_MAJOR_TYPE ) PURE;
STDMETHOD( AddGroup )( THIS_ IAMTimelineObj * ) PURE;
STDMETHOD( RemGroupFromList )( THIS_ IAMTimelineObj * ) PURE;
STDMETHOD( GetGroup )( THIS_ IAMTimelineObj *, long ) PURE;
STDMETHOD( GetGroupCount )( THIS_ long * ) PURE;
STDMETHOD( ClearAllGroups )( THIS ) PURE;
STDMETHOD( GetInsertMode )( THIS_ long * ) PURE;
STDMETHOD( SetInsertMode )( THIS_ long ) PURE;
STDMETHOD( EnableTransitions )( THIS_ BOOL ) PURE;
STDMETHOD( TransitionsEnabled )( THIS_ BOOL * ) PURE;
STDMETHOD( EnableEffects )( THIS_ BOOL ) PURE;
STDMETHOD( EffectsEnabled )( THIS_ BOOL * ) PURE;
STDMETHOD( SetInterestRange )( THIS_ REFERENCE_TIME, REFERENCE_TIME ) PURE;
STDMETHOD( GetDuration )( THIS_ REFERENCE_TIME * ) PURE;
STDMETHOD( GetDuration2 )( THIS_ double * ) PURE;
STDMETHOD( SetDefaultFPS )( THIS_ double ) PURE;
STDMETHOD( GetDefaultFPS )( THIS_ double * ) PURE;
STDMETHOD( IsDirty )( THIS_ BOOL * ) PURE;
STDMETHOD( GetDirtyRange )( THIS_ REFERENCE_TIME *, REFERENCE_TIME * ) PURE;
STDMETHOD( GetCountOfType )( THIS_ long, long *, long *, TIMELINE_MAJOR_TYPE ) PURE;
STDMETHOD( ValidateSourceNames )( THIS_ long, IMediaLocator *, LONG_PTR ) PURE;
STDMETHOD( SetDefaultTransition )( THIS_ GUID * ) PURE;
STDMETHOD( GetDefaultTransition )( THIS_ GUID * ) PURE;
STDMETHOD( SetDefaultEffect )( THIS_ GUID * ) PURE;
STDMETHOD( GetDefaultEffect )( THIS_ GUID * ) PURE;
STDMETHOD( SetDefaultTransitionB )( THIS_ BSTR ) PURE;
STDMETHOD( GetDefaultTransitionB )( THIS_ BSTR * ) PURE;
STDMETHOD( SetDefaultEffectB )( THIS_ BSTR ) PURE;
STDMETHOD( GetDefaultEffectB )( THIS_ BSTR * ) PURE;
};
/* IXml2Dex interface */
#undef INTERFACE
#define INTERFACE IXml2Dex
DECLARE_INTERFACE_( IXml2Dex, IDispatch ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IDispatch methods */
STDMETHOD( GetTypeInfoCount )( THIS_ UINT * ) PURE;
STDMETHOD( GetTypeInfo )( THIS_ UINT, LCID, ITypeInfo ** ) PURE;
STDMETHOD( GetIDsOfNames )( THIS_ REFIID, LPOLESTR *, UINT, LCID, DISPID * ) PURE;
STDMETHOD( Invoke )( THIS_ DISPID, REFIID, LCID, WORD, DISPPARAMS *, VARIANT *, EXCEPINFO *, UINT * ) PURE;
/* IXml2Dex methods */
STDMETHOD( CreateGraphFromFile )( THIS_ IUnknown **, IUnknown *, BSTR ) PURE;
STDMETHOD( WriteGrfFile )( THIS_ IUnknown *, BSTR ) PURE;
STDMETHOD( WriteXMLFile )( THIS_ IUnknown *, BSTR ) PURE;
STDMETHOD( ReadXMLFile )( THIS_ IUnknown *, BSTR ) PURE;
STDMETHOD( Delete )( THIS_ IUnknown *, double, double ) PURE;
STDMETHOD( WriteXMLPart )( THIS_ IUnknown *, double, double, BSTR ) PURE;
STDMETHOD( PasteXMLFile )( THIS_ IUnknown *, double, BSTR ) PURE;
STDMETHOD( CopyXML )( THIS_ IUnknown *, double, double ) PURE;
STDMETHOD( PasteXML )( THIS_ IUnknown *, double ) PURE;
STDMETHOD( Reset )( THIS ) PURE;
STDMETHOD( ReadXML )( THIS_ IUnknown *, IUnknown * ) PURE;
STDMETHOD( WriteXML )( THIS_ IUnknown *, BSTR * ) PURE;
};
/* IAMErrorLog interface */
#undef INTERFACE
#define INTERFACE IAMErrorLog
DECLARE_INTERFACE_( IAMErrorLog, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMErrorLog methods */
STDMETHOD( LogError )( THIS_ long, BSTR, long, long, VARIANT * ) PURE;
};
/* IAMSetErrorLog interface */
#undef INTERFACE
#define INTERFACE IAMSetErrorLog
DECLARE_INTERFACE_( IAMSetErrorLog, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IAMSetErrorLog methods */
STDMETHOD( get_ErrorLog )( THIS_ IAMErrorLog ** ) PURE;
STDMETHOD( put_ErrorLog )( THIS_ IAMErrorLog * ) PURE;
};
/* ISampleGrabberCB interface */
#undef INTERFACE
#define INTERFACE ISampleGrabberCB
DECLARE_INTERFACE_( ISampleGrabberCB, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* ISampleGrabberCB methods */
STDMETHOD( SampleCB )( THIS_ double, IMediaSample * ) PURE;
STDMETHOD( BufferCB )( THIS_ double, BYTE *, long ) PURE;
};
/* ISampleGrabber interface */
#undef INTERFACE
#define INTERFACE ISampleGrabber
DECLARE_INTERFACE_( ISampleGrabber, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* ISampleGrabber methods */
STDMETHOD( SetOneShot )( THIS_ BOOL ) PURE;
STDMETHOD( SetMediaType )( THIS_ const AM_MEDIA_TYPE * ) PURE;
STDMETHOD( GetConnectedMediaType )( THIS_ AM_MEDIA_TYPE * ) PURE;
STDMETHOD( SetBufferSamples )( THIS_ BOOL ) PURE;
STDMETHOD( GetCurrentBuffer )( THIS_ long *, long * ) PURE;
STDMETHOD( GetCurrentSample )( THIS_ IMediaSample ** ) PURE;
STDMETHOD( SetCallback )( THIS_ ISampleGrabberCB *, long ) PURE;
};
/* IResize interface */
#undef INTERFACE
#define INTERFACE IResize
DECLARE_INTERFACE_( IResize, IUnknown ) {
/* IUnknown methods */
STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE;
STDMETHOD_( ULONG, AddRef )( THIS ) PURE;
STDMETHOD_( ULONG, Release )( THIS ) PURE;
/* IResize methods */
STDMETHOD( get_Size )( THIS_ int *, int *, long * ) PURE;
STDMETHOD( get_InputSize )( THIS_ int *, int * ) PURE;
STDMETHOD( put_Size )( THIS_ int, int, long ) PURE;
STDMETHOD( get_MediaType )( THIS_ AM_MEDIA_TYPE * ) PURE;
STDMETHOD( put_MediaType )( THIS_ const AM_MEDIA_TYPE * ) PURE;
};
/* C object macros */
#if (!defined( __cplusplus ) || defined( CINTERFACE )) && defined( COBJMACROS )
#define IPropertySetter_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IPropertySetter_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IPropertySetter_Release( x ) \
(x)->lpVtbl->Release( x )
#define IPropertySetter_LoadXML( x, p ) \
(x)->lpVtbl->LoadXML( x, p )
#define IPropertySetter_PrintXML( x, p1, p2, p3, p4 ) \
(x)->lpVtbl->PrintXML( x, p1, p2, p3, p4 )
#define IPropertySetter_CloneProps( x, p1, p2, p3 ) \
(x)->lpVtbl->CloneProps( x, p1, p2, p3 )
#define IPropertySetter_AddProp( x, p1, p2 ) \
(x)->lpVtbl->AddProp( x, p1, p2 )
#define IPropertySetter_GetProps( x, p1, p2, p3 ) \
(x)->lpVtbl->GetProps( x, p1, p2, p3 )
#define IPropertySetter_FreeProps( x, p1, p2, p3 ) \
(x)->lpVtbl->FreeProps( x, p1, p2, p3 )
#define IPropertySetter_ClearProps( x ) \
(x)->lpVtbl->ClearProps( x )
#define IPropertySetter_SaveToBlob( x, p1, p2 ) \
(x)->lpVtbl->SaveToBlob( x, p1, p2 )
#define IPropertySetter_LoadFromBlob( x, p1, p2 ) \
(x)->lpVtbl->LoadFromBlob( x, p1, p2 )
#define IPropertySetter_SetProps( x, p1, p2 ) \
(x)->lpVtbl->SetProps( x, p1, p2 )
#define IPropertySetter_PrintXMLW( x, p1, p2, p3, p4 ) \
(x)->lpVtbl->PrintXMLW( x, p1, p2, p3, p4 )
#define IDxtCompositor_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IDxtCompositor_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IDxtCompositor_Release( x ) \
(x)->lpVtbl->Release( x )
#define IDxtCompositor_GetTypeInfoCount( x, p ) \
(x)->lpVtbl->GetTypeInfoCount( x, p )
#define IDxtCompositor_GetTypeInfo( x, p1, p2, p3 ) \
(x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 )
#define IDxtCompositor_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \
(x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 )
#define IDxtCompositor_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \
(x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 )
#define IDxtCompositor_get_Capabilities( x, p ) \
(x)->lpVtbl->get_Capabilities( x, p )
#define IDxtCompositor_get_Progress( x, p ) \
(x)->lpVtbl->get_Progress( x, p )
#define IDxtCompositor_put_Progress( x, p ) \
(x)->lpVtbl->put_Progress( x, p )
#define IDxtCompositor_get_StepResolution( x, p ) \
(x)->lpVtbl->get_StepResolution( x, p )
#define IDxtCompositor_get_Duration( x, p ) \
(x)->lpVtbl->get_Duration( x, p )
#define IDxtCompositor_put_Duration( x, p ) \
(x)->lpVtbl->put_Duration( x, p )
#define IDxtCompositor_get_OffsetX( x, p ) \
(x)->lpVtbl->get_OffsetX( x, p )
#define IDxtCompositor_put_OffsetX( x, p ) \
(x)->lpVtbl->put_OffsetX( x, p )
#define IDxtCompositor_get_OffsetY( x, p ) \
(x)->lpVtbl->get_OffsetY( x, p )
#define IDxtCompositor_put_OffsetY( x, p ) \
(x)->lpVtbl->put_OffsetY( x, p )
#define IDxtCompositor_put_Width( x, p ) \
(x)->lpVtbl->put_Width( x, p )
#define IDxtCompositor_get_Width( x, p ) \
(x)->lpVtbl->get_Width( x, p )
#define IDxtCompositor_put_Height( x, p ) \
(x)->lpVtbl->put_Height( x, p )
#define IDxtCompositor_get_Height( x, p ) \
(x)->lpVtbl->get_Height( x, p )
#define IDxtCompositor_put_SrcOffsetX( x, p ) \
(x)->lpVtbl->put_SrcOffsetX( x, p )
#define IDxtCompositor_get_SrcOffsetX( x, p ) \
(x)->lpVtbl->get_SrcOffsetX( x, p )
#define IDxtCompositor_put_SrcOffsetY( x, p ) \
(x)->lpVtbl->put_SrcOffsetY( x, p )
#define IDxtCompositor_get_SrcOffsetY( x, p ) \
(x)->lpVtbl->get_SrcOffsetY( x, p )
#define IDxtCompositor_put_SrcWidth( x, p ) \
(x)->lpVtbl->put_SrcWidth( x, p )
#define IDxtCompositor_get_SrcWidth( x, p ) \
(x)->lpVtbl->get_SrcWidth( x, p )
#define IDxtCompositor_put_SrcHeight( x, p ) \
(x)->lpVtbl->put_SrcHeight( x, p )
#define IDxtCompositor_get_SrcHeight( x, p ) \
(x)->lpVtbl->get_SrcHeight( x, p )
#define IDxtAlphaSetter_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IDxtAlphaSetter_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IDxtAlphaSetter_Release( x ) \
(x)->lpVtbl->Release( x )
#define IDxtAlphaSetter_GetTypeInfoCount( x, p ) \
(x)->lpVtbl->GetTypeInfoCount( x, p )
#define IDxtAlphaSetter_GetTypeInfo( x, p1, p2, p3 ) \
(x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 )
#define IDxtAlphaSetter_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \
(x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 )
#define IDxtAlphaSetter_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \
(x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 )
#define IDxtAlphaSetter_get_Capabilities( x, p ) \
(x)->lpVtbl->get_Capabilities( x, p )
#define IDxtAlphaSetter_get_Progress( x, p ) \
(x)->lpVtbl->get_Progress( x, p )
#define IDxtAlphaSetter_put_Progress( x, p ) \
(x)->lpVtbl->put_Progress( x, p )
#define IDxtAlphaSetter_get_StepResolution( x, p ) \
(x)->lpVtbl->get_StepResolution( x, p )
#define IDxtAlphaSetter_get_Duration( x, p ) \
(x)->lpVtbl->get_Duration( x, p )
#define IDxtAlphaSetter_put_Duration( x, p ) \
(x)->lpVtbl->put_Duration( x, p )
#define IDxtAlphaSetter_put_Alpha( x, p ) \
(x)->lpVtbl->put_Alpha( x, p )
#define IDxtAlphaSetter_get_Alpha( x, p ) \
(x)->lpVtbl->get_Alpha( x, p )
#define IDxtAlphaSetter_put_AlphaRamp( x, p ) \
(x)->lpVtbl->put_AlphaRamp( x, p )
#define IDxtAlphaSetter_get_AlphaRamp( x, p ) \
(x)->lpVtbl->get_AlphaRamp( x, p )
#define IDxtJpeg_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IDxtJpeg_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IDxtJpeg_Release( x ) \
(x)->lpVtbl->Release( x )
#define IDxtJpeg_GetTypeInfoCount( x, p ) \
(x)->lpVtbl->GetTypeInfoCount( x, p )
#define IDxtJpeg_GetTypeInfo( x, p1, p2, p3 ) \
(x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 )
#define IDxtJpeg_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \
(x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 )
#define IDxtJpeg_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \
(x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 )
#define IDxtJpeg_get_Capabilities( x, p ) \
(x)->lpVtbl->get_Capabilities( x, p )
#define IDxtJpeg_get_Progress( x, p ) \
(x)->lpVtbl->get_Progress( x, p )
#define IDxtJpeg_put_Progress( x, p ) \
(x)->lpVtbl->put_Progress( x, p )
#define IDxtJpeg_get_StepResolution( x, p ) \
(x)->lpVtbl->get_StepResolution( x, p )
#define IDxtJpeg_get_Duration( x, p ) \
(x)->lpVtbl->get_Duration( x, p )
#define IDxtJpeg_put_Duration( x, p ) \
(x)->lpVtbl->put_Duration( x, p )
#define IDxtJpeg_get_MaskNum( x, p ) \
(x)->lpVtbl->get_MaskNum( x, p )
#define IDxtJpeg_put_MaskNum( x, p ) \
(x)->lpVtbl->put_MaskNum( x, p )
#define IDxtJpeg_get_MaskName( x, p ) \
(x)->lpVtbl->get_MaskName( x, p )
#define IDxtJpeg_put_MaskName( x, p ) \
(x)->lpVtbl->put_MaskName( x, p )
#define IDxtJpeg_get_ScaleX( x, p ) \
(x)->lpVtbl->get_ScaleX( x, p )
#define IDxtJpeg_put_ScaleX( x, p ) \
(x)->lpVtbl->put_ScaleX( x, p )
#define IDxtJpeg_get_ScaleY( x, p ) \
(x)->lpVtbl->get_ScaleY( x, p )
#define IDxtJpeg_put_ScaleY( x, p ) \
(x)->lpVtbl->put_ScaleY( x, p )
#define IDxtJpeg_put_ReplicateX( x, p ) \
(x)->lpVtbl->put_ReplicateX( x, p )
#define IDxtJpeg_get_ReplicateX( x, p ) \
(x)->lpVtbl->get_ReplicateX( x, p )
#define IDxtJpeg_put_ReplicateY( x, p ) \
(x)->lpVtbl->put_ReplicateY( x, p )
#define IDxtJpeg_get_ReplicateY( x, p ) \
(x)->lpVtbl->get_ReplicateY( x, p )
#define IDxtJpeg_put_BorderColor( x, p ) \
(x)->lpVtbl->put_BorderColor( x, p )
#define IDxtJpeg_get_BorderColor( x, p ) \
(x)->lpVtbl->get_BorderColor( x, p )
#define IDxtJpeg_put_BorderWidth( x, p ) \
(x)->lpVtbl->put_BorderWidth( x, p )
#define IDxtJpeg_get_BorderWidth( x, p ) \
(x)->lpVtbl->get_BorderWidth( x, p )
#define IDxtJpeg_put_BorderSoftness( x, p ) \
(x)->lpVtbl->put_BorderSoftness( x, p )
#define IDxtJpeg_get_BorderSoftness( x, p ) \
(x)->lpVtbl->get_BorderSoftness( x, p )
#define IDxtJpeg_ApplyChanges( x ) \
(x)->lpVtbl->ApplyChanges( x )
#define IDxtJpeg_LoadDefSettings( x ) \
(x)->lpVtbl->LoadDefSettings( x )
#define IDxtKey_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IDxtKey_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IDxtKey_Release( x ) \
(x)->lpVtbl->Release( x )
#define IDxtKey_GetTypeInfoCount( x, p ) \
(x)->lpVtbl->GetTypeInfoCount( x, p )
#define IDxtKey_GetTypeInfo( x, p1, p2, p3 ) \
(x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 )
#define IDxtKey_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \
(x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 )
#define IDxtKey_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \
(x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 )
#define IDxtKey_get_Capabilities( x, p ) \
(x)->lpVtbl->get_Capabilities( x, p )
#define IDxtKey_get_Progress( x, p ) \
(x)->lpVtbl->get_Progress( x, p )
#define IDxtKey_put_Progress( x, p ) \
(x)->lpVtbl->put_Progress( x, p )
#define IDxtKey_get_StepResolution( x, p ) \
(x)->lpVtbl->get_StepResolution( x, p )
#define IDxtKey_get_Duration( x, p ) \
(x)->lpVtbl->get_Duration( x, p )
#define IDxtKey_put_Duration( x, p ) \
(x)->lpVtbl->put_Duration( x, p )
#define IDxtKey_get_KeyType( x, p ) \
(x)->lpVtbl->get_KeyType( x, p )
#define IDxtKey_put_KeyType( x, p ) \
(x)->lpVtbl->put_KeyType( x, p )
#define IDxtKey_get_Hue( x, p ) \
(x)->lpVtbl->get_Hue( x, p )
#define IDxtKey_put_Hue( x, p ) \
(x)->lpVtbl->put_Hue( x, p )
#define IDxtKey_get_Luminance( x, p ) \
(x)->lpVtbl->get_Luminance( x, p )
#define IDxtKey_put_Luminance( x, p ) \
(x)->lpVtbl->put_Luminance( x, p )
#define IDxtKey_get_RGB( x, p ) \
(x)->lpVtbl->get_RGB( x, p )
#define IDxtKey_put_RGB( x, p ) \
(x)->lpVtbl->put_RGB( x, p )
#define IDxtKey_get_Similarity( x, p ) \
(x)->lpVtbl->get_Similarity( x, p )
#define IDxtKey_put_Similarity( x, p ) \
(x)->lpVtbl->put_Similarity( x, p )
#define IDxtKey_get_Invert( x, p ) \
(x)->lpVtbl->get_Invert( x, p )
#define IDxtKey_put_Invert( x, p ) \
(x)->lpVtbl->put_Invert( x, p )
#define IMediaLocator_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IMediaLocator_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IMediaLocator_Release( x ) \
(x)->lpVtbl->Release( x )
#define IMediaLocator_FindMediaFile( x, p1, p2, p3, p4 ) \
(x)->lpVtbl->FindMediaFile( x, p1, p2, p3, p4 )
#define IMediaLocator_AddFoundLocation( x, p ) \
(x)->lpVtbl->AddFoundLocation( x, p )
#define IMediaDet_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IMediaDet_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IMediaDet_Release( x ) \
(x)->lpVtbl->Release( x )
#define IMediaDet_get_Filter( x, p ) \
(x)->lpVtbl->get_Filter( x, p )
#define IMediaDet_put_Filter( x, p ) \
(x)->lpVtbl->put_Filter( x, p )
#define IMediaDet_get_OutputStreams( x, p ) \
(x)->lpVtbl->get_OutputStreams( x, p )
#define IMediaDet_get_CurrentStream( x, p ) \
(x)->lpVtbl->get_CurrentStream( x, p )
#define IMediaDet_put_CurrentStream( x, p ) \
(x)->lpVtbl->put_CurrentStream( x, p )
#define IMediaDet_get_StreamType( x, p ) \
(x)->lpVtbl->get_StreamType( x, p )
#define IMediaDet_get_StreamTypeB( x, p ) \
(x)->lpVtbl->get_StreamTypeB( x, p )
#define IMediaDet_get_StreamLength( x, p ) \
(x)->lpVtbl->get_StreamLength( x, p )
#define IMediaDet_get_Filename( x, p ) \
(x)->lpVtbl->get_Filename( x, p )
#define IMediaDet_put_Filename( x, p ) \
(x)->lpVtbl->put_Filename( x, p )
#define IMediaDet_GetBitmapBits( x, p1, p2, p3, p4 ) \
(x)->lpVtbl->GetBitmapBits( x, p1, p2, p3, p4 )
#define IMediaDet_WriteBitmapBits( x, p1, p2, p3, p4 ) \
(x)->lpVtbl->WriteBitmapBits( x, p1, p2, p3, p4 )
#define IMediaDet_get_StreamMediaType( x, p ) \
(x)->lpVtbl->get_StreamMediaType( x, p )
#define IMediaDet_GetSampleGrabber( x, p ) \
(x)->lpVtbl->GetSampleGrabber( x, p )
#define IMediaDet_get_FrameRate( x, p ) \
(x)->lpVtbl->get_FrameRate( x, p )
#define IMediaDet_EnterBitmapGrabMode( x, p ) \
(x)->lpVtbl->EnterBitmapGrabMode( x, p )
#define IGrfCache_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IGrfCache_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IGrfCache_Release( x ) \
(x)->lpVtbl->Release( x )
#define IGrfCache_GetTypeInfoCount( x, p ) \
(x)->lpVtbl->GetTypeInfoCount( x, p )
#define IGrfCache_GetTypeInfo( x, p1, p2, p3 ) \
(x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 )
#define IGrfCache_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \
(x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 )
#define IGrfCache_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \
(x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 )
#define IGrfCache_AddFilter( x, p1, p2, p3, p4 ) \
(x)->lpVtbl->AddFilter( x, p1, p2, p3, p4 )
#define IGrfCache_ConnectPins( x, p1, p2, p3, p4, p5 ) \
(x)->lpVtbl->ConnectPins( x, p1, p2, p3, p4, p5 )
#define IGrfCache_SetGraph( x, p ) \
(x)->lpVtbl->SetGraph( x, p )
#define IGrfCache_DoConnectionsNow( x ) \
(x)->lpVtbl->DoConnectionsNow( x )
#define IRenderEngine_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IRenderEngine_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IRenderEngine_Release( x ) \
(x)->lpVtbl->Release( x )
#define IRenderEngine_SetTimelineObject( x, p ) \
(x)->lpVtbl->SetTimelineObject( x, p )
#define IRenderEngine_GetTimelineObject( x, p ) \
(x)->lpVtbl->GetTimelineObject( x, p )
#define IRenderEngine_GetFilterGraph( x, p ) \
(x)->lpVtbl->GetFilterGraph( x, p )
#define IRenderEngine_SetFilterGraph( x, p ) \
(x)->lpVtbl->SetFilterGraph( x, p )
#define IRenderEngine_SetInterestRange( x, p1, p2 ) \
(x)->lpVtbl->SetInterestRange( x, p1, p2 )
#define IRenderEngine_SetInterestRange2( x, p1, p2 ) \
(x)->lpVtbl->SetInterestRange2( x, p1, p2 )
#define IRenderEngine_SetRenderRange( x, p1, p2 ) \
(x)->lpVtbl->SetRenderRange( x, p1, p2 )
#define IRenderEngine_SetRenderRange2( x, p1, p2 ) \
(x)->lpVtbl->SetRenderRange2( x, p1, p2 )
#define IRenderEngine_GetGroupOutputPin( x, p1, p2 ) \
(x)->lpVtbl->GetGroupOutputPin( x, p1, p2 )
#define IRenderEngine_ScrapIt( x ) \
(x)->lpVtbl->ScrapIt( x )
#define IRenderEngine_RenderOutputPins( x ) \
(x)->lpVtbl->RenderOutputPins( x )
#define IRenderEngine_GetVendorString( x, p ) \
(x)->lpVtbl->GetVendorString( x, p )
#define IRenderEngine_ConnectFrontEnd( x ) \
(x)->lpVtbl->ConnectFrontEnd( x )
#define IRenderEngine_SetSourceConnectCallback( x, p ) \
(x)->lpVtbl->SetSourceConnectCallback( x, p )
#define IRenderEngine_SetDynamicReconnectLevel( x, p ) \
(x)->lpVtbl->SetDynamicReconnectLevel( x, p )
#define IRenderEngine_DoSmartRecompression( x ) \
(x)->lpVtbl->DoSmartRecompression( x )
#define IRenderEngine_UseInSmartRecompressionGraph( x ) \
(x)->lpVtbl->UseInSmartRecompressionGraph( x )
#define IRenderEngine_SetSourceNameValidation( x, p1, p2, p3 ) \
(x)->lpVtbl->SetSourceNameValidation( x, p1, p2, p3 )
#define IRenderEngine_Commit( x ) \
(x)->lpVtbl->Commit( x )
#define IRenderEngine_Decommit( x ) \
(x)->lpVtbl->Decommit( x )
#define IRenderEngine_GetCaps( x, p1, p2 ) \
(x)->lpVtbl->GetCaps( x, p1, p2 )
#define IRenderEngine2_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IRenderEngine2_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IRenderEngine2_Release( x ) \
(x)->lpVtbl->Release( x )
#define IRenderEngine2_SetResizerGUID( x, p ) \
(x)->lpVtbl->SetResizerGUID( x, p )
#define IFindCompressorCB_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IFindCompressorCB_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IFindCompressorCB_Release( x ) \
(x)->lpVtbl->Release( x )
#define IFindCompressorCB_GetCompressor( x, p1, p2, p3 ) \
(x)->lpVtbl->GetCompressor( x, p1, p2, p3 )
#define ISmartRenderEngine_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define ISmartRenderEngine_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define ISmartRenderEngine_Release( x ) \
(x)->lpVtbl->Release( x )
#define ISmartRenderEngine_SetGroupCompressor( x, p1, p2 ) \
(x)->lpVtbl->SetGroupCompressor( x, p1, p2 )
#define ISmartRenderEngine_GetGroupCompressor( x, p1, p2 ) \
(x)->lpVtbl->GetGroupCompressor( x, p1, p2 )
#define ISmartRenderEngine_SetFindCompressorCB( x, p ) \
(x)->lpVtbl->SetFindCompressorCB( x, p )
#define IAMTimelineObj_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineObj_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineObj_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineObj_GetStartStop( x, p1, p2 ) \
(x)->lpVtbl->GetStartStop( x, p1, p2 )
#define IAMTimelineObj_GetStartStop2( x, p1, p2 ) \
(x)->lpVtbl->GetStartStop2( x, p1, p2 )
#define IAMTimelineObj_FixTimes( x, p1, p2 ) \
(x)->lpVtbl->FixTimes( x, p1, p2 )
#define IAMTimelineObj_FixTimes2( x, p1, p2 ) \
(x)->lpVtbl->FixTimes2( x, p1, p2 )
#define IAMTimelineObj_SetStartStop( x, p1, p2 ) \
(x)->lpVtbl->SetStartStop( x, p1, p2 )
#define IAMTimelineObj_SetStartStop2( x, p1, p2 ) \
(x)->lpVtbl->SetStartStop2( x, p1, p2 )
#define IAMTimelineObj_GetPropertySetter( x, p ) \
(x)->lpVtbl->GetPropertySetter( x, p )
#define IAMTimelineObj_SetPropertySetter( x, p ) \
(x)->lpVtbl->SetPropertySetter( x, p )
#define IAMTimelineObj_GetSubObject( x, p ) \
(x)->lpVtbl->GetSubObject( x, p )
#define IAMTimelineObj_SetSubObject( x, p ) \
(x)->lpVtbl->SetSubObject( x, p )
#define IAMTimelineObj_SetSubObjectGUID( x, p ) \
(x)->lpVtbl->SetSubObjectGUID( x, p )
#define IAMTimelineObj_SetSubObjectGUIDB( x, p ) \
(x)->lpVtbl->SetSubObjectGUIDB( x, p )
#define IAMTimelineObj_GetSubObjectGUID( x, p ) \
(x)->lpVtbl->GetSubObjectGUID( x, p )
#define IAMTimelineObj_GetSubObjectGUIDB( x, p ) \
(x)->lpVtbl->GetSubObjectGUIDB( x, p )
#define IAMTimelineObj_GetSubObjectLoaded( x, p ) \
(x)->lpVtbl->GetSubObjectLoaded( x, p )
#define IAMTimelineObj_GetTimelineType( x, p ) \
(x)->lpVtbl->GetTimelineType( x, p )
#define IAMTimelineObj_SetTimelineType( x, p ) \
(x)->lpVtbl->SetTimelineType( x, p )
#define IAMTimelineObj_GetUserID( x, p ) \
(x)->lpVtbl->GetUserID( x, p )
#define IAMTimelineObj_SetUserID( x, p ) \
(x)->lpVtbl->SetUserID( x, p )
#define IAMTimelineObj_GetGenID( x, p ) \
(x)->lpVtbl->GetGenID( x, p )
#define IAMTimelineObj_GetUserName( x, p ) \
(x)->lpVtbl->GetUserName( x, p )
#define IAMTimelineObj_SetUserName( x, p ) \
(x)->lpVtbl->SetUserName( x, p )
#define IAMTimelineObj_GetUserData( x, p1, p2 ) \
(x)->lpVtbl->GetUserData( x, p1, p2 )
#define IAMTimelineObj_SetUserData( x, p1, p2 ) \
(x)->lpVtbl->SetUserData( x, p1, p2 )
#define IAMTimelineObj_GetMuted( x, p ) \
(x)->lpVtbl->GetMuted( x, p )
#define IAMTimelineObj_SetMuted( x, p ) \
(x)->lpVtbl->SetMuted( x, p )
#define IAMTimelineObj_GetLocked( x, p ) \
(x)->lpVtbl->GetLocked( x, p )
#define IAMTimelineObj_SetLocked( x, p ) \
(x)->lpVtbl->SetLocked( x, p )
#define IAMTimelineObj_GetDirtyRange( x, p1, p2 ) \
(x)->lpVtbl->GetDirtyRange( x, p1, p2 )
#define IAMTimelineObj_GetDirtyRange2( x, p1, p2 ) \
(x)->lpVtbl->GetDirtyRange( x, p1, p2 )
#define IAMTimelineObj_SetDirtyRange( x, p1, p2 ) \
(x)->lpVtbl->SetDirtyRange( x, p1, p2 )
#define IAMTimelineObj_SetDirtyRange2( x, p1, p2 ) \
(x)->lpVtbl->SetDirtyRange2( x, p1, p2 )
#define IAMTimelineObj_ClearDirty( x ) \
(x)->lpVtbl->ClearDirty( x )
#define IAMTimelineObj_Remove( x ) \
(x)->lpVtbl->Remove( x )
#define IAMTimelineObj_RemoveAll( x ) \
(x)->lpVtbl->RemoveAll( x )
#define IAMTimelineObj_GetTimelineNoRef( x, p ) \
(x)->lpVtbl->GetTimelineNoRef( x, p )
#define IAMTimelineObj_GetGroupIBelongTo( x, p ) \
(x)->lpVtbl->GetGroupIBelongTo( x, p )
#define IAMTimelineObj_GetEmbedDepth( x, p ) \
(x)->lpVtbl->GetEmbedDepth( x, p )
#define IAMTimelineEffectable_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineEffectable_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineEffectable_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineEffectable_EffectInsBefore( x, p1, p2 ) \
(x)->lpVtbl->EffectInsBefore( x, p1, p2 )
#define IAMTimelineEffectable_EffectSwapPriorities( x, p1, p2 ) \
(x)->lpVtbl->EffectSwapPriorities( x, p1, p2 )
#define IAMTimelineEffectable_EffectGetCount( x, p ) \
(x)->lpVtbl->EffectGetCount( x, p )
#define IAMTimelineEffectable_GetEffect( x, p1, p2 ) \
(x)->lpVtbl->GetEffect( x, p1, p2 )
#define IAMTimelineEffect_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineEffect_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineEffect_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineEffect_EffectGetPriority( x, p ) \
(x)->lpVtbl->EffectGetPriority( x, p )
#define IAMTimelineTransable_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineTransable_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineTransable_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineTransable_TransAdd( x, p ) \
(x)->lpVtbl->TransAdd( x, p )
#define IAMTimelineTransable_TransGetCount( x, p ) \
(x)->lpVtbl->TransGetCount( x, p )
#define IAMTimelineTransable_GetNextTrans( x, p1, p2 ) \
(x)->lpVtbl->GetNextTrans( x, p1, p2 )
#define IAMTimelineTransable_GetNextTrans2( x, p1, p2 ) \
(x)->lpVtbl->GetNextTrans2( x, p1, p2 )
#define IAMTimelineTransable_GetTransAtTime( x, p1, p2, p3 ) \
(x)->lpVtbl->GetTransAtTime( x, p1, p2, p3 )
#define IAMTimelineTransable_GetTransAtTime2( x, p1, p2, p3 ) \
(x)->lpVtbl->GetTransAtTime2( x, p1, p2, p3 )
#define IAMTimelineSplittable_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineSplittable_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineSplittable_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineSplittable_SplitAt( x, p ) \
(x)->lpVtbl->SplitAt( x, p )
#define IAMTimelineSplittable_SplitAt2( x, p ) \
(x)->lpVtbl->SplitAt2( x, p )
#define IAMTimelineTrans_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineTrans_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineTrans_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineTrans_GetCutPoint( x, p ) \
(x)->lpVtbl->GetCutPoint( x, p )
#define IAMTimelineTrans_GetCutPoint2( x, p ) \
(x)->lpVtbl->GetCutPoint2( x, p )
#define IAMTimelineTrans_SetCutPoint( x, p ) \
(x)->lpVtbl->SetCutPoint( x, p )
#define IAMTimelineTrans_SetCutPoint2( x, p ) \
(x)->lpVtbl->SetCutPoint2( x, p )
#define IAMTimelineTrans_GetSwapInputs( x, p ) \
(x)->lpVtbl->GetSwapInputs( x, p )
#define IAMTimelineTrans_SetSwapInputs( x, p ) \
(x)->lpVtbl->SetSwapInputs( x, p )
#define IAMTimelineTrans_GetCutsOnly( x, p ) \
(x)->lpVtbl->GetCutsOnly( x, p )
#define IAMTimelineTrans_SetCutsOnly( x, p ) \
(x)->lpVtbl->SetCutsOnly( x, p )
#define IAMTimelineSrc_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineSrc_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineSrc_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineSrc_GetMediaTimes( x, p1, p2 ) \
(x)->lpVtbl->GetMediaTimes( x, p1, p2 )
#define IAMTimelineSrc_GetMediaTimes2( x, p1, p2 ) \
(x)->lpVtbl->GetMediaTimes2( x, p1, p2 )
#define IAMTimelineSrc_ModifyStopTime( x, p ) \
(x)->lpVtbl->ModifyStopTime( x, p )
#define IAMTimelineSrc_ModifyStopTime2( x, p ) \
(x)->lpVtbl->ModifyStopTime2( x, p )
#define IAMTimelineSrc_FixMediaTimes( x, p1, p2 ) \
(x)->lpVtbl->FixMediaTimes( x, p1, p2 )
#define IAMTimelineSrc_FixMediaTimes2( x, p1, p2 ) \
(x)->lpVtbl->FixMediaTimes2( x, p1, p2 )
#define IAMTimelineSrc_SetMediaTimes( x, p1, p2 ) \
(x)->lpVtbl->SetMediaTimes( x, p1, p2 )
#define IAMTimelineSrc_SetMediaTimes2( x, p1, p2 ) \
(x)->lpVtbl->SetMediaTimes2( x, p1, p2 )
#define IAMTimelineSrc_SetMediaLength( x, p ) \
(x)->lpVtbl->SetMediaLength( x, p )
#define IAMTimelineSrc_SetMediaLength2( x, p ) \
(x)->lpVtbl->SetMediaLength2( x, p )
#define IAMTimelineSrc_GetMediaLength( x, p ) \
(x)->lpVtbl->GetMediaLength( x, p )
#define IAMTimelineSrc_GetMediaLength2( x, p ) \
(x)->lpVtbl->GetMediaLength2( x, p )
#define IAMTimelineSrc_GetMediaName( x, p ) \
(x)->lpVtbl->GetMediaName( x, p )
#define IAMTimelineSrc_SetMediaName( x, p ) \
(x)->lpVtbl->SetMediaName( x, p )
#define IAMTimelineSrc_SpliceWithNext( x, p ) \
(x)->lpVtbl->SpliceWithNext( x, p )
#define IAMTimelineSrc_GetStreamNumber( x, p ) \
(x)->lpVtbl->GetStreamNumber( x, p )
#define IAMTimelineSrc_SetStreamNumber( x, p ) \
(x)->lpVtbl->SetStreamNumber( x, p )
#define IAMTimelineSrc_IsNormalRate( x, p ) \
(x)->lpVtbl->IsNormalRate( x, p )
#define IAMTimelineSrc_GetDefaultFPS( x, p ) \
(x)->lpVtbl->GetDefaultFPS( x, p )
#define IAMTimelineSrc_SetDefaultFPS( x, p ) \
(x)->lpVtbl->SetDefaultFPS( x, p )
#define IAMTimelineSrc_GetStretchMode( x, p ) \
(x)->lpVtbl->GetStretchMode( x, p )
#define IAMTimelineSrc_SetStretchMode( x, p ) \
(x)->lpVtbl->SetStretchMode( x, p )
#define IAMTimelineTrack_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineTrack_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineTrack_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineTrack_SrcAdd( x, p ) \
(x)->lpVtbl->SrcAdd( x, p )
#define IAMTimelineTrack_GetNextSrc( x, p1, p2 ) \
(x)->lpVtbl->GetNextSrc( x, p1, p2 )
#define IAMTimelineTrack_GetNextSrc2( x, p1, p2 ) \
(x)->lpVtbl->GetNextSrc2( x, p1, p2 )
#define IAMTimelineTrack_MoveEverythingBy( x, p1, p2 ) \
(x)->lpVtbl->MoveEverythingBy( x, p1, p2 )
#define IAMTimelineTrack_MoveEverythingBy2( x, p1, p2 ) \
(x)->lpVtbl->MoveEverythingBy2( x, p1, p2 )
#define IAMTimelineTrack_GetSourcesCount( x, p ) \
(x)->lpVtbl->GetSourcesCount( x, p )
#define IAMTimelineTrack_AreYouBlank( x, p ) \
(x)->lpVtbl->AreYouBlank( x, p )
#define IAMTimelineTrack_GetSrcAtTime( x, p1, p2, p3 ) \
(x)->lpVtbl->GetSrcAtTime( x, p1, p2, p3 )
#define IAMTimelineTrack_GetSrcAtTime2( x, p1, p2, p3 ) \
(x)->lpVtbl->GetSrcAtTime2( x, p1, p2, p3 )
#define IAMTimelineTrack_InsertSpace( x, p1, p2 ) \
(x)->lpVtbl->InsertSpace( x, p1, p2 )
#define IAMTimelineTrack_InsertSpace2( x, p1, p2 ) \
(x)->lpVtbl->InsertSpace2( x, p1, p2 )
#define IAMTimelineTrack_ZeroBetween( x, p1, p2 ) \
(x)->lpVtbl->ZeroBetween( x, p1, p2 )
#define IAMTimelineTrack_ZeroBetween2( x, p1, p2 ) \
(x)->lpVtbl->ZeroBetween2( x, p1, p2 )
#define IAMTimelineTrack_GetNextSrcEx( x, p1, p2 ) \
(x)->lpVtbl->GetNextSrcEx( x, p1, p2 )
#define IAMTimelineVirtualTrack_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineVirtualTrack_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineVirtualTrack_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineVirtualTrack_TrackGetPriority( x, p ) \
(x)->lpVtbl->TrackGetPriority( x, p )
#define IAMTimelineVirtualTrack_SetTrackDirty( x ) \
(x)->lpVtbl->SetTrackDirty( x )
#define IAMTimelineComp_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineComp_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineComp_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineComp_VTrackInsBefore( x, p1, p2 ) \
(x)->lpVtbl->VTrackInsBefore( x, p1, p2 )
#define IAMTimelineComp_VTrackSwapPriorities( x, p1, p2 ) \
(x)->lpVtbl->VTrackSwapPriorities( x, p1, p2 )
#define IAMTimelineComp_VTrackGetCount( x, p ) \
(x)->lpVtbl->VTrackGetCount( x, p )
#define IAMTimelineComp_GetVTrack( x, p1, p2 ) \
(x)->lpVtbl->GetVTrack( x, p1, p2 )
#define IAMTimelineComp_GetCountOfType( x, p1, p2, p3 ) \
(x)->lpVtbl->GetCountOfType( x, p1, p2, p3 )
#define IAMTimelineComp_GetRecursiveLayerOfType( x, p1, p2, p3 ) \
(x)->lpVtbl->GetRecursiveLayerOfType( x, p1, p2, p3 )
#define IAMTimelineComp_GetRecursiveLayerOfTypeI( x, p1, p2, p3 ) \
(x)->lpVtbl->GetRecursiveLayerOfTypeI( x, p1, p2, p3 )
#define IAMTimelineComp_GetNextVTrack( x, p1, p2 ) \
(x)->lpVtbl->GetNextVTrack( x, p1, p2 )
#define IAMTimelineGroup_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimelineGroup_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimelineGroup_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimelineGroup_SetTimeline( x, p ) \
(x)->lpVtbl->SetTimeline( x, p )
#define IAMTimelineGroup_GetTimeline( x, p ) \
(x)->lpVtbl->GetTimeline( x, p )
#define IAMTimelineGroup_GetPriority( x, p ) \
(x)->lpVtbl->GetPriority( x, p )
#define IAMTimelineGroup_GetMediaType( x, p ) \
(x)->lpVtbl->GetMediaType( x, p )
#define IAMTimelineGroup_SetMediaType( x, p ) \
(x)->lpVtbl->SetMediaType( x, p )
#define IAMTimelineGroup_SetOutputFPS( x, p ) \
(x)->lpVtbl->SetOutputFPS( x, p )
#define IAMTimelineGroup_GetOutputFPS( x, p ) \
(x)->lpVtbl->GetOutputFPS( x, p )
#define IAMTimelineGroup_SetGroupName( x, p ) \
(x)->lpVtbl->SetGroupName( x, p )
#define IAMTimelineGroup_GetGroupName( x, p ) \
(x)->lpVtbl->GetGroupName( x, p )
#define IAMTimelineGroup_SetPreviewMode( x, p ) \
(x)->lpVtbl->SetPreviewMode( x, p )
#define IAMTimelineGroup_GetPreviewMode( x, p ) \
(x)->lpVtbl->GetPreviewMode( x, p )
#define IAMTimelineGroup_SetMediaTypeForVB( x, p ) \
(x)->lpVtbl->SetMediaTypeForVB( x, p )
#define IAMTimelineGroup_GetOutputBuffering( x, p ) \
(x)->lpVtbl->GetOutputBuffering( x, p )
#define IAMTimelineGroup_SetOutputBuffering( x, p ) \
(x)->lpVtbl->SetOutputBuffering( x, p )
#define IAMTimelineGroup_SetSmartRecompressFormat( x, p ) \
(x)->lpVtbl->SetSmartRecompressFormat( x, p )
#define IAMTimelineGroup_GetSmartRecompressFormat( x, p ) \
(x)->lpVtbl->GetSmartRecompressFormat( x, p )
#define IAMTimelineGroup_IsSmartRecompressFormatSet( x, p ) \
(x)->lpVtbl->IsSmartRecompressFormatSet( x, p )
#define IAMTimelineGroup_IsRecompressFormatDirty( x, p ) \
(x)->lpVtbl->IsRecompressFormatDirty( x, p )
#define IAMTimelineGroup_ClearRecompressFormatDirty( x ) \
(x)->lpVtbl->ClearRecompressFormatDirty( x )
#define IAMTimelineGroup_SetRecompFormatFromSource( x, p ) \
(x)->lpVtbl->SetRecompFormatFromSource( x, p )
#define IAMTimeline_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMTimeline_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMTimeline_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMTimeline_CreateEmptyNode( x, p1, p2 ) \
(x)->lpVtbl->CreateEmptyNode( x, p1, p2 )
#define IAMTimeline_AddGroup( x, p ) \
(x)->lpVtbl->AddGroup( x, p )
#define IAMTimeline_RemGroupFromList( x, p ) \
(x)->lpVtbl->RemGroupFromList( x, p )
#define IAMTimeline_GetGroup( x, p1, p2 ) \
(x)->lpVtbl->GetGroup( x, p1, p2 )
#define IAMTimeline_GetGroupCount( x, p ) \
(x)->lpVtbl->GetGroupCount( x, p )
#define IAMTimeline_ClearAllGroups( x ) \
(x)->lpVtbl->ClearAllGroups( x )
#define IAMTimeline_GetInsertMode( x, p ) \
(x)->lpVtbl->GetInsertMode( x, p )
#define IAMTimeline_SetInsertMode( x, p ) \
(x)->lpVtbl->SetInsertMode( x, p )
#define IAMTimeline_EnableTransitions( x, p ) \
(x)->lpVtbl->EnableTransitions( x, p )
#define IAMTimeline_TransitionsEnabled( x, p ) \
(x)->lpVtbl->TransitionsEnabled( x, p )
#define IAMTimeline_EnableEffects( x, p ) \
(x)->lpVtbl->EnableEffects( x, p )
#define IAMTimeline_EffectsEnabled( x, p ) \
(x)->lpVtbl->EffectsEnabled( x, p )
#define IAMTimeline_SetInterestRange( x, p1, p2 ) \
(x)->lpVtbl->SetInterestRange( x, p1, p2 )
#define IAMTimeline_GetDuration( x, p ) \
(x)->lpVtbl->GetDuration( x, p )
#define IAMTimeline_GetDuration2( x, p ) \
(x)->lpVtbl->GetDuration2( x, p )
#define IAMTimeline_SetDefaultFPS( x, p ) \
(x)->lpVtbl->SetDefaultFPS( x, p )
#define IAMTimeline_GetDefaultFPS( x, p ) \
(x)->lpVtbl->GetDefaultFPS( x, p )
#define IAMTimeline_IsDirty( x, p ) \
(x)->lpVtbl->IsDirty( x, p )
#define IAMTimeline_GetDirtyRange( x, p1, p2 ) \
(x)->lpVtbl->GetDirtyRange( x, p1, p2 )
#define IAMTimeline_GetCountOfType( x, p1, p2, p3, p4 ) \
(x)->lpVtbl->GetCountOfType( x, p1, p2, p3, p4 )
#define IAMTimeline_ValidateSourceNames( x, p1, p2, p3 ) \
(x)->lpVtbl->ValidateSourceNames( x, p1, p2, p3 )
#define IAMTimeline_SetDefaultTransition( x, p ) \
(x)->lpVtbl->SetDefaultTransition( x, p )
#define IAMTimeline_GetDefaultTransition( x, p ) \
(x)->lpVtbl->GetDefaultTransition( x, p )
#define IAMTimeline_SetDefaultEffect( x, p ) \
(x)->lpVtbl->SetDefaultEffect( x, p )
#define IAMTimeline_GetDefaultEffect( x, p ) \
(x)->lpVtbl->GetDefaultEffect( x, p )
#define IAMTimeline_SetDefaultTransitionB( x, p ) \
(x)->lpVtbl->SetDefaultTransitionB( x, p )
#define IAMTimeline_GetDefaultTransitionB( x, p ) \
(x)->lpVtbl->GetDefaultTransitionB( x, p )
#define IAMTimeline_SetDefaultEffectB( x, p ) \
(x)->lpVtbl->SetDefaultEffectB( x, p )
#define IAMTimeline_GetDefaultEffectB( x, p ) \
(x)->lpVtbl->GetDefaultEffectB( x, p )
#define IXml2Dex_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IXml2Dex_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IXml2Dex_Release( x ) \
(x)->lpVtbl->Release( x )
#define IXml2Dex_GetTypeInfoCount( x, p ) \
(x)->lpVtbl->GetTypeInfoCount( x, p )
#define IXml2Dex_GetTypeInfo( x, p1, p2, p3 ) \
(x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 )
#define IXml2Dex_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \
(x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 )
#define IXml2Dex_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \
(x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 )
#define IXml2Dex_CreateGraphFromFile( x, p1, p2, p3 ) \
(x)->lpVtbl->CreateGraphFromFile( x, p1, p2, p3 )
#define IXml2Dex_WriteGrfFile( x, p1, p2 ) \
(x)->lpVtbl->WriteGrfFile( x, p1, p2 )
#define IXml2Dex_WriteXMLFile( x, p1, p2 ) \
(x)->lpVtbl->WriteXMLFile( x, p1, p2 )
#define IXml2Dex_ReadXMLFile( x, p1, p2 ) \
(x)->lpVtbl->ReadXMLFile( x, p1, p2 )
#define IXml2Dex_Delete( x, p1, p2, p3 ) \
(x)->lpVtbl->Delete( x, p1, p2, p3 )
#define IXml2Dex_WriteXMLPart( x, p1, p2, p3, p4 ) \
(x)->lpVtbl->WriteXMLPart( x, p1, p2, p3, p4 )
#define IXml2Dex_PasteXMLFile( x, p1, p2, p3 ) \
(x)->lpVtbl->PasteXMLFile( x, p1, p2, p3 )
#define IXml2Dex_CopyXML( x, p1, p2, p3 ) \
(x)->lpVtbl->CopyXML( x, p1, p2, p3 )
#define IXml2Dex_PasteXML( x, p1, p2 ) \
(x)->lpVtbl->PasteXML( x, p1, p2 )
#define IXml2Dex_Reset( x ) \
(x)->lpVtbl->Reset( x )
#define IXml2Dex_ReadXML( x, p1, p2 ) \
(x)->lpVtbl->ReadXML( x, p1, p2 )
#define IXml2Dex_WriteXML( x, p1, p2 ) \
(x)->lpVtbl->WriteXML( x, p1, p2 )
#define IAMErrorLog_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMErrorLog_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMErrorLog_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMErrorLog_LogError( x, p1, p2, p3, p4, p5 ) \
(x)->lpVtbl->LogError( x, p1, p2, p3, p4, p5 )
#define IAMSetErrorLog_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IAMSetErrorLog_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IAMSetErrorLog_Release( x ) \
(x)->lpVtbl->Release( x )
#define IAMSetErrorLog_get_ErrorLog( x, p ) \
(x)->lpVtbl->get_ErrorLog( x, p )
#define IAMSetErrorLog_put_ErrorLog( x, p ) \
(x)->lpVtbl->put_ErrorLog( x, p )
#define ISampleGrabberCB_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define ISampleGrabberCB_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define ISampleGrabberCB_Release( x ) \
(x)->lpVtbl->Release( x )
#define ISampleGrabberCB_SampleCB( x, p1, p2 ) \
(x)->lpVtbl->SampleCB( x, p1, p2 )
#define ISampleGrabberCB_BufferCB( x, p1, p2, p3 ) \
(x)->lpVtbl->BufferCB( x, p1, p2, p3 )
#define ISampleGrabber_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define ISampleGrabber_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define ISampleGrabber_Release( x ) \
(x)->lpVtbl->Release( x )
#define ISampleGrabber_SetOneShot( x, p ) \
(x)->lpVtbl->SetOneShot( x, p )
#define ISampleGrabber_SetMediaType( x, p ) \
(x)->lpVtbl->SetMediaType( x, p )
#define ISampleGrabber_GetConnectedMediaType( x, p ) \
(x)->lpVtbl->GetConnectedMediaType( x, p )
#define ISampleGrabber_SetBufferSamples( x, p ) \
(x)->lpVtbl->SetBufferSamples( x, p )
#define ISampleGrabber_GetCurrentBuffer( x, p1, p2 ) \
(x)->lpVtbl->GetCurrentBuffer( x, p1, p2 )
#define ISampleGrabber_GetCurrentSample( x, p ) \
(x)->lpVtbl->GetCurrentSample( x, p )
#define ISampleGrabber_SetCallback( x, p1, p2 ) \
(x)->lpVtbl->SetCallback( x, p1, p2 )
#define IResize_QueryInterface( x, p1, p2 ) \
(x)->lpVtbl->QueryInterface( x, p1, p2 )
#define IResize_AddRef( x ) \
(x)->lpVtbl->AddRef( x )
#define IResize_Release( x ) \
(x)->lpVtbl->Release( x )
#define IResize_get_Size( x, p1, p2, p3 ) \
(x)->lpVtbl->get_Size( x, p1, p2, p3 )
#define IResize_get_InputSize( x, p1, p2 ) \
(x)->lpVtbl->get_InputSize( x, p1, p2 )
#define IResize_put_Size( x, p1, p2, p3 ) \
(x)->lpVtbl->put_Size( x, p1, p2, p3 )
#define IResize_get_MediaType( x, p ) \
(x)->lpVtbl->get_MediaType( x, p )
#define IResize_put_MediaType( x, p ) \
(x)->lpVtbl->put_MediaType( x, p )
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* __qedit_h__ */