/* * control.h ActiveMovie control interfaces * * ========================================================================= * * Open Watcom Project * * Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved. * * This file is automatically generated. Do not edit directly. * * ========================================================================= */ #ifndef __control_h__ #define __control_h__ #ifndef _ENABLE_AUTODEPEND #pragma read_only_file; #endif #ifdef __cplusplus extern "C" { #endif /* ActiveMovie primitive data types */ typedef double REFTIME; typedef LONG_PTR OAEVENT; typedef LONG_PTR OAHWND; typedef long OAFilterState; /* GUIDs */ EXTERN_C const IID LIBID_QuartzTypeLib; EXTERN_C const IID IID_IAMCollection; EXTERN_C const IID IID_IMediaControl; EXTERN_C const IID IID_IMediaEvent; EXTERN_C const IID IID_IMediaEventEx; EXTERN_C const IID IID_IMediaPosition; EXTERN_C const IID IID_IBasicAudio; EXTERN_C const IID IID_IVideoWindow; EXTERN_C const IID IID_IBasicVideo; EXTERN_C const IID IID_IBasicVideo2; EXTERN_C const IID IID_IDeferredCommand; EXTERN_C const IID IID_IQueueCommand; EXTERN_C const CLSID CLSID_FilgraphManager; EXTERN_C const IID IID_IFilterInfo; EXTERN_C const IID IID_IRegFilterInfo; EXTERN_C const IID IID_IMediaTypeInfo; EXTERN_C const IID IID_IPinInfo; EXTERN_C const IID IID_IAMStats; /* IAMCollection interface */ #undef INTERFACE #define INTERFACE IAMCollection DECLARE_INTERFACE_( IAMCollection, 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; /* IAMCollection methods */ STDMETHOD( get_Count )( THIS_ LONG * ) PURE; STDMETHOD( Item )( THIS_ long, IUnknown ** ) PURE; STDMETHOD( get__NewEnum )( THIS_ IUnknown ** ) PURE; }; /* IMediaControl interface */ #undef INTERFACE #define INTERFACE IMediaControl DECLARE_INTERFACE_( IMediaControl, 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; /* IMediaControl methods */ STDMETHOD( Run )( THIS ) PURE; STDMETHOD( Pause )( THIS ) PURE; STDMETHOD( Stop )( THIS ) PURE; STDMETHOD( GetState )( THIS_ LONG, OAFilterState * ) PURE; STDMETHOD( RenderFile )( THIS_ BSTR ) PURE; STDMETHOD( AddSourceFilter )( THIS_ BSTR, IDispatch ** ) PURE; STDMETHOD( get_FilterCollection )( THIS_ IDispatch ** ) PURE; STDMETHOD( get_RegFilterCollection )( THIS_ IDispatch ** ) PURE; STDMETHOD( StopWhenReady )( THIS ) PURE; }; /* IMediaEvent interface */ #undef INTERFACE #define INTERFACE IMediaEvent DECLARE_INTERFACE_( IMediaEvent, 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; /* IMediaEvent methods */ STDMETHOD( GetEventHandle )( THIS_ OAEVENT * ) PURE; STDMETHOD( GetEvent )( THIS_ long *, LONG_PTR *, LONG_PTR *, long ) PURE; STDMETHOD( WaitForCompletion )( THIS_ long, long * ) PURE; STDMETHOD( CancelDefaultHandling )( THIS_ long ) PURE; STDMETHOD( RestoreDefaultHandling )( THIS_ long ) PURE; STDMETHOD( FreeEventParams )( THIS_ long, LONG_PTR, LONG_PTR ) PURE; }; /* IMediaEventEx interface */ #undef INTERFACE #define INTERFACE IMediaEventEx DECLARE_INTERFACE_( IMediaEventEx, IMediaEvent ) { /* 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; /* IMediaEvent methods */ STDMETHOD( GetEventHandle )( THIS_ OAEVENT * ) PURE; STDMETHOD( GetEvent )( THIS_ long *, LONG_PTR *, LONG_PTR *, long ) PURE; STDMETHOD( WaitForCompletion )( THIS_ long, long * ) PURE; STDMETHOD( CancelDefaultHandling )( THIS_ long ) PURE; STDMETHOD( RestoreDefaultHandling )( THIS_ long ) PURE; STDMETHOD( FreeEventParams )( THIS_ long, LONG_PTR, LONG_PTR ) PURE; /* IMediaEventEx methods */ STDMETHOD( SetNotifyWindow )( THIS_ OAHWND, long, LONG_PTR ) PURE; STDMETHOD( SetNotifyFlags )( THIS_ long ) PURE; STDMETHOD( GetNotifyFlags )( THIS_ long * ) PURE; }; /* IMediaPosition interface */ #undef INTERFACE #define INTERFACE IMediaPosition DECLARE_INTERFACE_( IMediaPosition, 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; /* IMediaPosition methods */ STDMETHOD( get_Duration )( THIS_ REFTIME * ) PURE; STDMETHOD( put_CurrentPosition )( THIS_ REFTIME ) PURE; STDMETHOD( get_CurrentPosition )( THIS_ REFTIME * ) PURE; STDMETHOD( get_StopTime )( THIS_ REFTIME * ) PURE; STDMETHOD( put_StopTime )( THIS_ REFTIME ) PURE; STDMETHOD( get_PrerollTime )( THIS_ REFTIME * ) PURE; STDMETHOD( put_PrerollTime )( THIS_ REFTIME ) PURE; STDMETHOD( put_Rate )( THIS_ double ) PURE; STDMETHOD( get_Rate )( THIS_ double * ) PURE; STDMETHOD( CanSeekForward )( THIS_ LONG * ) PURE; STDMETHOD( CanSeekBackward )( THIS_ LONG * ) PURE; }; /* IBasicAudio interface */ #undef INTERFACE #define INTERFACE IBasicAudio DECLARE_INTERFACE_( IBasicAudio, 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; /* IBasicAudio methods */ STDMETHOD( put_Volume )( THIS_ long ) PURE; STDMETHOD( get_Volume )( THIS_ long * ) PURE; STDMETHOD( put_Balance )( THIS_ long ) PURE; STDMETHOD( get_Balance )( THIS_ long * ) PURE; }; /* IVideoWindow interface */ #undef INTERFACE #define INTERFACE IVideoWindow DECLARE_INTERFACE_( IVideoWindow, 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; /* IVideoWindow methods */ STDMETHOD( put_Caption )( THIS_ BSTR ) PURE; STDMETHOD( get_Caption )( THIS_ BSTR * ) PURE; STDMETHOD( put_WindowStyle )( THIS_ long ) PURE; STDMETHOD( get_WindowStyle )( THIS_ long * ) PURE; STDMETHOD( put_WindowStyleEx )( THIS_ long ) PURE; STDMETHOD( get_WindowStyleEx )( THIS_ long * ) PURE; STDMETHOD( put_AutoShow )( THIS_ long ) PURE; STDMETHOD( get_AutoShow )( THIS_ long * ) PURE; STDMETHOD( put_WindowState )( THIS_ long ) PURE; STDMETHOD( get_WindowState )( THIS_ long * ) PURE; STDMETHOD( put_BackgroundPalette )( THIS_ long ) PURE; STDMETHOD( get_BackgroundPalette )( THIS_ long * ) PURE; STDMETHOD( put_Visible )( THIS_ long ) PURE; STDMETHOD( get_Visible )( THIS_ long * ) PURE; STDMETHOD( put_Left )( THIS_ long ) PURE; STDMETHOD( get_Left )( THIS_ long * ) PURE; STDMETHOD( put_Width )( THIS_ long ) PURE; STDMETHOD( get_Width )( THIS_ long * ) PURE; STDMETHOD( put_Top )( THIS_ long ) PURE; STDMETHOD( get_Top )( THIS_ long * ) PURE; STDMETHOD( put_Height )( THIS_ long ) PURE; STDMETHOD( get_Height )( THIS_ long * ) PURE; STDMETHOD( put_Owner )( THIS_ OAHWND ) PURE; STDMETHOD( get_Owner )( THIS_ OAHWND * ) PURE; STDMETHOD( put_MessageDrain )( THIS_ OAHWND ) PURE; STDMETHOD( get_MessageDrain )( THIS_ OAHWND * ) PURE; STDMETHOD( get_BorderColor )( THIS_ long * ) PURE; STDMETHOD( put_BorderColor )( THIS_ long ) PURE; STDMETHOD( get_FullScreenMode )( THIS_ long * ) PURE; STDMETHOD( put_FullScreenMode )( THIS_ long ) PURE; STDMETHOD( SetWindowForeground )( THIS_ long ) PURE; STDMETHOD( NotifyOwnerMessage )( THIS_ OAHWND, long, LONG_PTR, LONG_PTR ) PURE; STDMETHOD( SetWindowPosition )( THIS_ long, long, long, long ) PURE; STDMETHOD( GetWindowPosition )( THIS_ long *, long *, long *, long * ) PURE; STDMETHOD( GetMinIdealImageSize )( THIS_ long *, long * ) PURE; STDMETHOD( GetMaxIdealImageSize )( THIS_ long *, long * ) PURE; STDMETHOD( GetRestorePosition )( THIS_ long *, long *, long *, long * ) PURE; STDMETHOD( HideCursor )( THIS_ long ) PURE; STDMETHOD( IsCursorHidden )( THIS_ long * ) PURE; }; /* IBasicVideo interface */ #undef INTERFACE #define INTERFACE IBasicVideo DECLARE_INTERFACE_( IBasicVideo, 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; /* IBasicVideo methods */ STDMETHOD( get_AvgTimePerFrame )( THIS_ REFTIME * ) PURE; STDMETHOD( get_BitRate )( THIS_ long * ) PURE; STDMETHOD( get_BitErrorRate )( THIS_ long * ) PURE; STDMETHOD( get_VideoWidth )( THIS_ long * ) PURE; STDMETHOD( get_VideoHeight )( THIS_ long * ) PURE; STDMETHOD( put_SourceLeft )( THIS_ long ) PURE; STDMETHOD( get_SourceLeft )( THIS_ long * ) PURE; STDMETHOD( put_SourceWidth )( THIS_ long ) PURE; STDMETHOD( get_SourceWidth )( THIS_ long * ) PURE; STDMETHOD( put_SourceTop )( THIS_ long ) PURE; STDMETHOD( get_SourceTop )( THIS_ long * ) PURE; STDMETHOD( put_SourceHeight )( THIS_ long ) PURE; STDMETHOD( get_SourceHeight )( THIS_ long * ) PURE; STDMETHOD( put_DestinationLeft )( THIS_ long ) PURE; STDMETHOD( get_DestinationLeft )( THIS_ long * ) PURE; STDMETHOD( put_DestinationWidth )( THIS_ long ) PURE; STDMETHOD( get_DestinationWidth )( THIS_ long * ) PURE; STDMETHOD( put_DestinationTop )( THIS_ long ) PURE; STDMETHOD( get_DestinationTop )( THIS_ long * ) PURE; STDMETHOD( put_DestinationHeight )( THIS_ long ) PURE; STDMETHOD( get_DestinationHeight )( THIS_ long * ) PURE; STDMETHOD( SetSourcePosition )( THIS_ long, long, long, long ) PURE; STDMETHOD( GetSourcePosition )( THIS_ long *, long *, long *, long * ) PURE; STDMETHOD( SetDefaultSourcePosition )( THIS ) PURE; STDMETHOD( SetDestinationPosition )( THIS_ long, long, long, long ) PURE; STDMETHOD( GetDestinationPosition )( THIS_ long *, long *, long *, long * ) PURE; STDMETHOD( SetDefaultDestinationPosition )( THIS ) PURE; STDMETHOD( GetVideoSize )( THIS_ long *, long * ) PURE; STDMETHOD( GetVideoPaletteEntries )( THIS_ long, long, long *, long * ) PURE; STDMETHOD( GetCurrentImage )( THIS_ long *, long * ) PURE; STDMETHOD( IsUsingDefaultSource )( THIS ) PURE; STDMETHOD( IsUsingDefaultDestination )( THIS ) PURE; }; /* IBasicVideo2 interface */ #undef INTERFACE #define INTERFACE IBasicVideo2 DECLARE_INTERFACE_( IBasicVideo2, IBasicVideo ) { /* 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; /* IBasicVideo methods */ STDMETHOD( get_AvgTimePerFrame )( THIS_ REFTIME * ) PURE; STDMETHOD( get_BitRate )( THIS_ long * ) PURE; STDMETHOD( get_BitErrorRate )( THIS_ long * ) PURE; STDMETHOD( get_VideoWidth )( THIS_ long * ) PURE; STDMETHOD( get_VideoHeight )( THIS_ long * ) PURE; STDMETHOD( put_SourceLeft )( THIS_ long ) PURE; STDMETHOD( get_SourceLeft )( THIS_ long * ) PURE; STDMETHOD( put_SourceWidth )( THIS_ long ) PURE; STDMETHOD( get_SourceWidth )( THIS_ long * ) PURE; STDMETHOD( put_SourceTop )( THIS_ long ) PURE; STDMETHOD( get_SourceTop )( THIS_ long * ) PURE; STDMETHOD( put_SourceHeight )( THIS_ long ) PURE; STDMETHOD( get_SourceHeight )( THIS_ long * ) PURE; STDMETHOD( put_DestinationLeft )( THIS_ long ) PURE; STDMETHOD( get_DestinationLeft )( THIS_ long * ) PURE; STDMETHOD( put_DestinationWidth )( THIS_ long ) PURE; STDMETHOD( get_DestinationWidth )( THIS_ long * ) PURE; STDMETHOD( put_DestinationTop )( THIS_ long ) PURE; STDMETHOD( get_DestinationTop )( THIS_ long * ) PURE; STDMETHOD( put_DestinationHeight )( THIS_ long ) PURE; STDMETHOD( get_DestinationHeight )( THIS_ long * ) PURE; STDMETHOD( SetSourcePosition )( THIS_ long, long, long, long ) PURE; STDMETHOD( GetSourcePosition )( THIS_ long *, long *, long *, long * ) PURE; STDMETHOD( SetDefaultSourcePosition )( THIS ) PURE; STDMETHOD( SetDestinationPosition )( THIS_ long, long, long, long ) PURE; STDMETHOD( GetDestinationPosition )( THIS_ long *, long *, long *, long * ) PURE; STDMETHOD( SetDefaultDestinationPosition )( THIS ) PURE; STDMETHOD( GetVideoSize )( THIS_ long *, long * ) PURE; STDMETHOD( GetVideoPaletteEntries )( THIS_ long, long, long *, long * ) PURE; STDMETHOD( GetCurrentImage )( THIS_ long *, long * ) PURE; STDMETHOD( IsUsingDefaultSource )( THIS ) PURE; STDMETHOD( IsUsingDefaultDestination )( THIS ) PURE; /* IBasicVideo2 methods */ STDMETHOD( GetPreferredAspectRatio )( THIS_ long *, long * ) PURE; }; /* IDeferredCommand interface */ #undef INTERFACE #define INTERFACE IDeferredCommand DECLARE_INTERFACE_( IDeferredCommand, IUnknown ) { /* IUnknown methods */ STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE; STDMETHOD_( ULONG, AddRef )( THIS ) PURE; STDMETHOD_( ULONG, Release )( THIS ) PURE; /* IDeferredCommand methods */ STDMETHOD( Cancel )( THIS ) PURE; STDMETHOD( Confidence )( THIS_ LONG * ) PURE; STDMETHOD( Postpone )( THIS_ REFTIME ) PURE; STDMETHOD( GetHResult )( THIS_ HRESULT * ) PURE; }; /* IQueueCommand interface */ #undef INTERFACE #define INTERFACE IQueueCommand DECLARE_INTERFACE_( IQueueCommand, IUnknown ) { /* IUnknown methods */ STDMETHOD( QueryInterface )( THIS_ REFIID, void ** ) PURE; STDMETHOD_( ULONG, AddRef )( THIS ) PURE; STDMETHOD_( ULONG, Release )( THIS ) PURE; /* IQueueCommand methods */ STDMETHOD( InvokeAtStreamTime )( THIS_ IDeferredCommand **, REFTIME, GUID *, long, short, long, VARIANT *, VARIANT *, short * ) PURE; STDMETHOD( InvokeAtPresentationTime )( THIS_ IDeferredCommand **, REFTIME, GUID *, long, short, long, VARIANT *, VARIANT *, short * ) PURE; }; /* IFilterInfo interface */ #undef INTERFACE #define INTERFACE IFilterInfo DECLARE_INTERFACE_( IFilterInfo, 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; /* IFilterInfo methods */ STDMETHOD( FindPin )( THIS_ BSTR, IDispatch ** ) PURE; STDMETHOD( get_Name )( THIS_ BSTR * ) PURE; STDMETHOD( get_VendorInfo )( THIS_ BSTR * ) PURE; STDMETHOD( get_Filter )( THIS_ IUnknown ** ) PURE; STDMETHOD( get_Pins )( THIS_ IDispatch ** ) PURE; STDMETHOD( get_IsFileSource )( THIS_ LONG * ) PURE; STDMETHOD( get_Filename )( THIS_ BSTR * ) PURE; STDMETHOD( put_Filename )( THIS_ BSTR ) PURE; }; /* IRegFilterInfo interface */ #undef INTERFACE #define INTERFACE IRegFilterInfo DECLARE_INTERFACE_( IRegFilterInfo, 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; /* IRegFilterInfo methods */ STDMETHOD( get_Name )( THIS_ BSTR * ) PURE; STDMETHOD( Filter )( THIS_ IDispatch ** ) PURE; }; /* IMediaTypeInfo interface */ #undef INTERFACE #define INTERFACE IMediaTypeInfo DECLARE_INTERFACE_( IMediaTypeInfo, 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; /* IMediaTypeInfo methods */ STDMETHOD( get_Type )( THIS_ BSTR * ) PURE; STDMETHOD( get_Subtype )( THIS_ BSTR * ) PURE; }; /* IPinInfo interface */ #undef INTERFACE #define INTERFACE IPinInfo DECLARE_INTERFACE_( IPinInfo, 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; /* IPinInfo methods */ STDMETHOD( get_Pin )( THIS_ IUnknown ** ) PURE; STDMETHOD( get_ConnectedTo )( THIS_ IDispatch ** ) PURE; STDMETHOD( get_ConnectionMediaType )( THIS_ IDispatch ** ) PURE; STDMETHOD( get_FilterInfo )( THIS_ IDispatch ** ) PURE; STDMETHOD( get_Name )( THIS_ BSTR * ) PURE; STDMETHOD( get_Direction )( THIS_ LONG * ) PURE; STDMETHOD( get_PinID )( THIS_ BSTR * ) PURE; STDMETHOD( get_MediaTypes )( THIS_ IDispatch ** ) PURE; STDMETHOD( Connect )( THIS_ IUnknown * ) PURE; STDMETHOD( ConnectDirect )( THIS_ IUnknown * ) PURE; STDMETHOD( ConnectWithType )( THIS_ IUnknown *, IDispatch * ) PURE; STDMETHOD( Disconnect )( THIS ) PURE; STDMETHOD( Render )( THIS ) PURE; }; /* IAMStats interface */ #undef INTERFACE #define INTERFACE IAMStats DECLARE_INTERFACE_( IAMStats, 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; /* IAMStats methods */ STDMETHOD( Reset )( THIS ) PURE; STDMETHOD( get_Count )( THIS_ LONG * ) PURE; STDMETHOD( GetValueByIndex )( THIS_ long, BSTR *, long *, double *, double *, double *, double *, double * ) PURE; STDMETHOD( GetValueByName )( THIS_ BSTR, long *, long *, double *, double *, double *, double *, double * ) PURE; STDMETHOD( GetIndex )( THIS_ BSTR, long, long * ) PURE; STDMETHOD( AddValue )( THIS_ long, double ) PURE; }; /* C object macros */ #if (!defined( __cplusplus ) || defined( CINTERFACE )) && defined( COBJMACROS ) #define IAMCollection_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IAMCollection_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IAMCollection_Release( x ) \ (x)->lpVtbl->Release( x ) #define IAMCollection_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IAMCollection_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IAMCollection_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IAMCollection_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IAMCollection_get_Count( x, p ) \ (x)->lpVtbl->get_Count( x, p ) #define IAMCollection_Item( x, p1, p2 ) \ (x)->lpVtbl->Item( x, p1, p2 ) #define IAMCollection_get__NewEnum( x, p ) \ (x)->lpvtbl->get__NewEnum( x, p ) #define IMediaControl_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IMediaControl_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IMediaControl_Release( x ) \ (x)->lpVtbl->Release( x ) #define IMediaControl_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IMediaControl_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IMediaControl_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IMediaControl_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IMediaControl_Run( x ) \ (x)->lpVtbl->Run( x ) #define IMediaControl_Pause( x ) \ (x)->lpVtbl->Pause( x ) #define IMediaControl_Stop( x ) \ (x)->lpVtbl->Stop( x ) #define IMediaControl_GetState( x, p1, p2 ) \ (x)->lpVtbl->GetState( x, p1, p2 ) #define IMediaControl_RenderFile( x, p ) \ (x)->lpVtbl->RenderFile( x, p ) #define IMediaControl_AddSourceFilter( x, p1, p2 ) \ (x)->lpVtbl->AddSourceFilter( x, p1, p2 ) #define IMediaControl_get_FilterCollection( x, p ) \ (x)->lpVtbl->get_FilterCollection( x, p ) #define IMediaControl_get_RegFilterCollection( x, p ) \ (x)->lpVtbl->get_regFilterCollection( x, p ) #define IMediaControl_StopWhenReady( x ) \ (x)->lpVtbl->StopWhenReady( x ) #define IMediaEvent_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IMediaEvent_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IMediaEvent_Release( x ) \ (x)->lpVtbl->Release( x ) #define IMediaEvent_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IMediaEvent_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IMediaEvent_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IMediaEvent_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IMediaEvent_GetEventHandle( x, p ) \ (x)->lpVtbl->GetEventHandle( x, p ) #define IMediaEvent_GetEvent( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetEvent( x, p1, p2, p3, p4 ) #define IMediaEvent_WaitForCompletion( x, p1, p2 ) \ (x)->lpVtbl->WaitForCompletion( x, p1, p2 ) #define IMediaEvent_CancelDefaultHandling( x, p ) \ (x)->lpVtbl->CancelDefaultHandling( x, p ) #define IMediaEvent_RestoreDefaultHandling( x, p ) \ (x)->lpVtbl->RestoreDefaultHandling( x, p ) #define IMediaEvent_FreeEventParams( x, p1, p2, p3 ) \ (x)->lpVtbl->FreeEventParams( x, p1, p2, p3 ) #define IMediaEventEx_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IMediaEventEx_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IMediaEventEx_Release( x ) \ (x)->lpVtbl->Release( x ) #define IMediaEventEx_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IMediaEventEx_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IMediaEventEx_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IMediaEventEx_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IMediaEventEx_GetEventHandle( x, p ) \ (x)->lpVtbl->GetEventHandle( x, p ) #define IMediaEventEx_GetEvent( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetEvent( x, p1, p2, p3, p4 ) #define IMediaEventEx_WaitForCompletion( x, p1, p2 ) \ (x)->lpVtbl->WaitForCompletion( x, p1, p2 ) #define IMediaEventEx_CancelDefaultHandling( x, p ) \ (x)->lpVtbl->CancelDefaultHandling( x, p ) #define IMediaEventEx_RestoreDefaultHandling( x, p ) \ (x)->lpVtbl->RestoreDefaultHandling( x, p ) #define IMediaEventEx_FreeEventParams( x, p1, p2, p3 ) \ (x)->lpVtbl->FreeEventParams( x, p1, p2, p3 ) #define IMediaEventEx_SetNotifyWindow( x, p1, p2, p3 ) \ (x)->lpVtbl->SetNotifyWindow( x, p1, p2, p3 ) #define IMediaEventEx_SetNotifyFlags( x, p ) \ (x)->lpVtbl->SetNotifyFlags( x, p ) #define IMediaEventEx_GetNotifyFlags( x, p ) \ (x)->lpVtbl->GetNotifyFlags( x, p ) #define IMediaPosition_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IMediaPosition_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IMediaPosition_Release( x ) \ (x)->lpVtbl->Release( x ) #define IMediaPosition_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IMediaPosition_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IMediaPosition_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IMediaPosition_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IMediaPosition_get_Duration( x, p ) \ (x)->lpVtbl->get_Duration( x, p ) #define IMediaPosition_put_CurrentPosition( x, p ) \ (x)->lpVtbl->put_CurrentPosition( x, p ) #define IMediaPosition_get_CurrentPosition( x, p ) \ (x)->lpVtbl->get_CurrentPosition( x, p ) #define IMediaPosition_get_StopTime( x, p ) \ (x)->lpVtbl->get_StopTime( x, p ) #define IMediaPosition_put_StopTime( x, p ) \ (x)->lpVtbl->put_StopTime( x, p ) #define IMediaPosition_get_PrerollTime( x, p ) \ (x)->lpVtbl->get_PrerollTime( x, p ) #define IMediaPosition_put_PrerollTime( x, p ) \ (x)->lpVtbl->put_PrerollTime( x, p ) #define IMediaPosition_put_Rate( x, p ) \ (x)->lpVtbl->put_Rate( x, p ) #define IMediaPosition_get_Rate( x, p ) \ (x)->lpVtbl->get_Rate( x, p ) #define IMediaPosition_CanSeekForward( x, p ) \ (x)->lpVtbl->CanSeekForward( x, p ) #define IMediaPosition_CanSeekBackward( x, p ) \ (x)->lpVtbl->CanSeekBackward( x, p ) #define IAMCollection_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IBasicAudio_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IBasicAudio_Release( x ) \ (x)->lpVtbl->Release( x ) #define IBasicAudio_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IBasicAudio_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IBasicAudio_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IBasicAudio_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IBasicAudio_put_Volume( x, p ) \ (x)->lpVtbl->put_Volume( x, p ) #define IBasicAudio_get_Volume( x, p ) \ (x)->lpVtbl->get_Volume( x, p ) #define IBasicAudio_put_Balance( x, p ) \ (x)->lpVtbl->put_Balance( x, p ) #define IBasicAudio_get_Balance( x, p ) \ (x)->lpVtbl->get_Balance( x, p ) #define IVideoWindow_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IVideoWindow_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IVideoWindow_Release( x ) \ (x)->lpVtbl->Release( x ) #define IVideoWindow_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IVideoWindow_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IVideoWindow_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IVideoWindow_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IVideoWindow_put_Caption( x, p ) \ (x)->lpVtbl->put_Caption( x, p ) #define IVideoWindow_get_Caption( x, p ) \ (x)->lpVtbl->get_Caption( x, p ) #define IVideoWindow_put_WindowStyle( x, p ) \ (x)->lpVtbl->put_WindowStyle( x, p ) #define IVideoWindow_get_WindowStyle( x, p ) \ (x)->lpVtbl->get_WindowStyle( x, p ) #define IVideoWindow_put_WindowStyleEx( x, p ) \ (x)->lpVtbl->put_WindowStyleEx( x, p ) #define IVideoWindow_get_WindowStyleEx( x, p ) \ (x)->lpVtbl->get_WindowStyleEx( x, p ) #define IVideoWindow_put_AutoShow( x, p ) \ (x)->lpVtbl->put_AutoShow( x, p ) #define IVideoWindow_get_AutoShow( x, p ) \ (x)->lpVtbl->get_AutoShow( x, p ) #define IVideoWindow_put_WindowState( x, p ) \ (x)->lpVtbl->put_WindowState( x, p ) #define IVideoWindow_get_WindowState( x, p ) \ (x)->lpVtbl->get_WindowState( x, p ) #define IVideoWindow_put_BackgroundPalette( x, p ) \ (x)->lpVtbl->put_BackgroundPalette( x, p ) #define IVideoWindow_get_BackgroundPalette( x, p ) \ (x)->lpVtbl->get_BackgroundPalette( x, p ) #define IVideoWindow_put_Visible( x, p ) \ (x)->lpVtbl->put_Visible( x, p ) #define IVideoWindow_get_Visible( x, p ) \ (x)->lpVtbl->get_Visible( x, p ) #define IVideoWindow_put_Left( x, p ) \ (x)->lpVtbl->put_Left( x, p ) #define IVideoWindow_get_Left( x, p ) \ (x)->lpVtbl->get_Left( x, p ) #define IVideoWindow_put_Width( x, p ) \ (x)->lpVtbl->put_Width( x, p ) #define IVideoWindow_get_Width( x, p ) \ (x)->lpVtbl->get_Width( x, p ) #define IVideoWindow_put_Top( x, p ) \ (x)->lpVtbl->put_Top( x, p ) #define IVideoWindow_get_Top( x, p ) \ (x)->lpVtbl->get_Top( x, p ) #define IVideoWindow_put_Height( x, p ) \ (x)->lpVtbl->put_Height( x, p ) #define IVideoWindow_get_Height( x, p ) \ (x)->lpVtbl->get_Height( x, p ) #define IVideoWindow_put_Owner( x, p ) \ (x)->lpVtbl->put_Owner( x, p ) #define IVideoWindow_get_Owner( x, p ) \ (x)->lpVtbl->get_Owner( x, p ) #define IVideoWindow_put_MessageDrain( x, p ) \ (x)->lpVtbl->put_MessageDrain( x, p ) #define IVideoWindow_get_MessageDrain( x, p ) \ (x)->lpVtbl->get_MessageDrain( x, p ) #define IVideoWindow_get_BorderColor( x, p ) \ (x)->lpVtbl->get_BorderColor( x, p ) #define IVideoWindow_put_BorderColor( x, p ) \ (x)->lpVtbl->put_BorderColor( x, p ) #define IVideoWindow_get_FullScreenMode( x, p ) \ (x)->lpVtbl->get_FullScreenMode( x, p ) #define IVideoWindow_put_FullScreenMode( x, p ) \ (x)->lpVtbl->put_FullScreenMode( x, p ) #define IVideoWindow_SetWindowForeground( x, p ) \ (x)->lpVtbl->SetWindowForeground( x, p ) #define IVideoWindow_NotifyOwnerMessage( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->NotifyOwnerMessage( x, p1, p2, p3, p4 ) #define IVideoWindow_SetWindowPosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->SetWindowPosition( x, p1, p2, p3, p4 ) #define IVideoWindow_GetWindowPosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetWindowPosition( x, p1, p2, p3, p4 ) #define IVideoWindow_GetMinIdealImageSize( x, p1, p2 ) \ (x)->lpVtbl->GetMinIdealImageSize( x, p1, p2 ) #define IVideoWindow_GetMaxIdealImageSize( x, p1, p2 ) \ (x)->lpVtbl->GetMaxIdealImageSize( x, p1, p2 ) #define IVideoWindow_GetRestorePosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetRestorePosition( x, p1, p2, p3, p4 ) #define IVideoWindow_HideCursor( x, p ) \ (x)->lpVtbl->HideCursor( x, p ) #define IVideoWindow_IsCursorHidden( x, p ) \ (x)->lpVtbl->IsCursorHidden( x, p ) #define IBasicVideo_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IBasicVideo_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IBasicVideo_Release( x ) \ (x)->lpVtbl->Release( x ) #define IBasicVideo_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IBasicVideo_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IBasicVideo_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IBasicVideo_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IBasicVideo_get_AvgTimePerFrame( x, p ) \ (x)->lpVtbl->get_AvgTimePerFrame( x, p ) #define IBasicVideo_get_BitRate( x, p ) \ (x)->lpVtbl->get_BitRate( x, p ) #define IBasicVideo_get_BitErrorRate( x, p ) \ (x)->lpVtbl->get_BitErrorRate( x, p ) #define IBasicVideo_get_VideoWidth( x, p ) \ (x)->lpVtbl->get_VideoWidth( x, p ) #define IBasicVideo_get_VideoHeight( x, p ) \ (x)->lpVtbl->get_VideoHeight( x, p ) #define IBasicVideo_put_SourceLeft( x, p ) \ (x)->lpVtbl->put_SourceLeft( x, p ) #define IBasicVideo_get_SourceLeft( x, p ) \ (x)->lpVtbl->get_SourceLeft( x, p ) #define IBasicVideo_put_SourceWidth( x, p ) \ (x)->lpVtbl->put_SourceWidth( x, p ) #define IBasicVideo_get_SourceWidth( x, p ) \ (x)->lpVtbl->get_SourceWidth( x, p ) #define IBasicVideo_put_SourceTop( x, p ) \ (x)->lpVtbl->put_SourceTop( x, p ) #define IBasicVideo_get_SourceTop( x, p ) \ (x)->lpVtbl->get_SourceTop( x, p ) #define IBasicVideo_put_SourceHeight( x, p ) \ (x)->lpVtbl->put_SourceHeight( x, p ) #define IBasicVideo_get_SourceHeight( x, p ) \ (x)->lpVtbl->get_SourceHeight( x, p ) #define IBasicVideo_put_DestinationLeft( x, p ) \ (x)->lpVtbl->put_DestinationLeft( x, p ) #define IBasicVideo_get_DestinationLeft( x, p ) \ (x)->lpVtbl->get_DestinationLeft( x, p ) #define IBasicVideo_put_DestinationWidth( x, p ) \ (x)->lpVtbl->put_DestinationWidth( x, p ) #define IBasicVideo_get_DestinationWidth( x, p ) \ (x)->lpVtbl->get_DestinationWidth( x, p ) #define IBasicVideo_put_DestinationTop( x, p ) \ (x)->lpVtbl->put_DestinationTop( x, p ) #define IBasicVideo_get_DestinationTop( x, p ) \ (x)->lpVtbl->get_DestinationTop( x, p ) #define IBasicVideo_put_DestinationHeight( x, p ) \ (x)->lpVtbl->put_DestinationHeight( x, p ) #define IBasicVideo_get_DestinationHeight( x, p ) \ (x)->lpVtbl->get_DestinationHeight( x, p ) #define IBasicVideo_SetSourcePosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->SetSourcePosition( x, p1, p2, p3, p4 ) #define IBasicVideo_GetSourcePosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetSourcePosition( x, p1, p2, p3, p4 ) #define IBasicVideo_SetDefaultSourcePosition( x ) \ (x)->lpVtbl->SetDefaultSourcePosition( x ) #define IBasicVideo_SetDestinationPosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->SetDestinationPosition( x, p1, p2, p3, p4 ) #define IBasicVideo_GetDestinationPosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetDestinationPosition( x, p1, p2, p3, p4 ) #define IBasicVideo_SetDefaultDestinationPosition( x ) \ (x)->lpVtbl->SetDefaultDestinationPosition( x ) #define IBasicVideo_GetVideoSize( x, p1, p2 ) \ (x)->lpVtbl->GetVideoSize( x, p1, p2 ) #define IBasicVideo_GetVideoPaletteEntries( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetVideoPaletteEntries( x, p1, p2, p3, p4 ) #define IBasicVideo_GetCurrentImage( x, p1, p2 ) \ (x)->lpVtbl->GetCurrentImage( x, p1, p2 ) #define IBasicVideo_IsUsingDefaultSource( x ) \ (x)->lpVtbl->IsUsingDefaultSource( x ) #define IBasicVideo_IsUsingDefaultDestination( x ) \ (x)->lpVtbl->IsUsingDefaultDestination( x ) #define IBasicVideo2_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IBasicVideo2_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IBasicVideo2_Release( x ) \ (x)->lpVtbl->Release( x ) #define IBasicVideo2_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IBasicVideo2_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IBasicVideo2_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IBasicVideo2_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IBasicVideo2_get_AvgTimePerFrame( x, p ) \ (x)->lpVtbl->get_AvgTimePerFrame( x, p ) #define IBasicVideo2_get_BitRate( x, p ) \ (x)->lpVtbl->get_BitRate( x, p ) #define IBasicVideo2_get_BitErrorRate( x, p ) \ (x)->lpVtbl->get_BitErrorRate( x, p ) #define IBasicVideo2_get_VideoWidth( x, p ) \ (x)->lpVtbl->get_VideoWidth( x, p ) #define IBasicVideo2_get_VideoHeight( x, p ) \ (x)->lpVtbl->get_VideoHeight( x, p ) #define IBasicVideo2_put_SourceLeft( x, p ) \ (x)->lpVtbl->put_SourceLeft( x, p ) #define IBasicVideo2_get_SourceLeft( x, p ) \ (x)->lpVtbl->get_SourceLeft( x, p ) #define IBasicVideo2_put_SourceWidth( x, p ) \ (x)->lpVtbl->put_SourceWidth( x, p ) #define IBasicVideo2_get_SourceWidth( x, p ) \ (x)->lpVtbl->get_SourceWidth( x, p ) #define IBasicVideo2_put_SourceTop( x, p ) \ (x)->lpVtbl->put_SourceTop( x, p ) #define IBasicVideo2_get_SourceTop( x, p ) \ (x)->lpVtbl->get_SourceTop( x, p ) #define IBasicVideo2_put_SourceHeight( x, p ) \ (x)->lpVtbl->put_SourceHeight( x, p ) #define IBasicVideo2_get_SourceHeight( x, p ) \ (x)->lpVtbl->get_SourceHeight( x, p ) #define IBasicVideo2_put_DestinationLeft( x, p ) \ (x)->lpVtbl->put_DestinationLeft( x, p ) #define IBasicVideo2_get_DestinationLeft( x, p ) \ (x)->lpVtbl->get_DestinationLeft( x, p ) #define IBasicVideo2_put_DestinationWidth( x, p ) \ (x)->lpVtbl->put_DestinationWidth( x, p ) #define IBasicVideo2_get_DestinationWidth( x, p ) \ (x)->lpVtbl->get_DestinationWidth( x, p ) #define IBasicVideo2_put_DestinationTop( x, p ) \ (x)->lpVtbl->put_DestinationTop( x, p ) #define IBasicVideo2_get_DestinationTop( x, p ) \ (x)->lpVtbl->get_DestinationTop( x, p ) #define IBasicVideo2_put_DestinationHeight( x, p ) \ (x)->lpVtbl->put_DestinationHeight( x, p ) #define IBasicVideo2_get_DestinationHeight( x, p ) \ (x)->lpVtbl->get_DestinationHeight( x, p ) #define IBasicVideo2_SetSourcePosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->SetSourcePosition( x, p1, p2, p3, p4 ) #define IBasicVideo2_GetSourcePosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetSourcePosition( x, p1, p2, p3, p4 ) #define IBasicVideo2_SetDefaultSourcePosition( x ) \ (x)->lpVtbl->SetDefaultSourcePosition( x ) #define IBasicVideo2_SetDestinationPosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->SetDestinationPosition( x, p1, p2, p3, p4 ) #define IBasicVideo2_GetDestinationPosition( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetDestinationPosition( x, p1, p2, p3, p4 ) #define IBasicVideo2_SetDefaultDestinationPosition( x ) \ (x)->lpVtbl->SetDefaultDestinationPosition( x ) #define IBasicVideo2_GetVideoSize( x, p1, p2 ) \ (x)->lpVtbl->GetVideoSize( x, p1, p2 ) #define IBasicVideo2_GetVideoPaletteEntries( x, p1, p2, p3, p4 ) \ (x)->lpVtbl->GetVideoPaletteEntries( x, p1, p2, p3, p4 ) #define IBasicVideo2_GetCurrentImage( x, p1, p2 ) \ (x)->lpVtbl->GetCurrentImage( x, p1, p2 ) #define IBasicVideo2_IsUsingDefaultSource( x ) \ (x)->lpVtbl->IsUsingDefaultSource( x ) #define IBasicVideo2_IsUsingDefaultDestination( x ) \ (x)->lpVtbl->IsUsingDefaultDestination( x ) #define IBasicVideo2_GetPreferredAspectRatio( x, p1, p2 ) \ (x)->lpVtbl->GetPreferredAspectRatio( x, p1, p2 ) #define IDeferredCommand_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IDeferredCommand_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IDeferredCommand_Release( x ) \ (x)->lpVtbl->Release( x ) #define IDeferredCommand_Cancel( x ) \ (x)->lpVtbl->Cancel( x ) #define IDeferredCommand_Confidence( x, p ) \ (x)->lpVtbl->Confidence( x, p ) #define IDeferredCommand_Postpone( x, p ) \ (x)->lpVtbl->Postpone( x, p ) #define IDeferredCommand_GetHResult( x, p ) \ (x)->lpVtbl->GetHResult( x, p ) #define IQueueCommand_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IQueueCommand_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IQueueCommand_Release( x ) \ (x)->lpVtbl->Release( x ) #define IQueueCommand_InvokeAtStreamTime( x, p1, p2, p3, p4, p5, p6, p7, p8, p9 ) \ (x)->lpVtbl->InvokeAtStreamTime( x, p1, p2, p3, p4, p5, p6, p7, p8, p9 ) #define IQueueCommand_InvokeAtPresentationTime( x, p1, p2, p3, p4, p5, p6, p7, p8, p9 ) \ (x)->lpVtbl->InvokeAtPresentationTime( x, p1, p2, p3, p4, p5, p6, p7, p8, p9 ) #define IFilterInfo_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IFilterInfo_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IFilterInfo_Release( x ) \ (x)->lpVtbl->Release( x ) #define IFilterInfo_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IFilterInfo_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IFilterInfo_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IFilterInfo_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IFilterInfo_FindPin( x, p1, p2 ) \ (x)->lpVtbl->FindPin( x, p1, p2 ) #define IFilterInfo_get_Name( x, p ) \ (x)->lpVtbl->get_Name( x, p ) #define IFilterInfo_get_VendorInfo( x, p ) \ (x)->lpVtbl->get_VendorInfo( x, p ) #define IFilterInfo_get_Filter( x, p ) \ (x)->lpVtbl->get_Filter( x, p ) #define IFilterInfo_get_Pins( x, p ) \ (x)->lpVtbl->get_Pins( x, p ) #define IFilterInfo_get_IsFileSource( x, p ) \ (x)->lpVtbl->get_IsFileSource( x, p ) #define IFilterInfo_get_Filename( x, p ) \ (x)->lpVtbl->get_Filename( x, p ) #define IFilterInfo_put_Filename( x, p ) \ (x)->lpVtbl->put_Filename( x, p ) #define IRegFilterInfo_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IRegFilterInfo_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IRegFilterInfo_Release( x ) \ (x)->lpVtbl->Release( x ) #define IRegFilterInfo_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IRegFilterInfo_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IRegFilterInfo_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IRegFilterInfo_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IRegFilterInfo_get_Name( x, p ) \ (x)->lpVtbl->get_Name( x, p ) #define IRegFilterInfo_Filter( x, p ) \ (x)->lpVtbl->Filter( x, p ) #define IMediaTypeInfo_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IMediaTypeInfo_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IMediaTypeInfo_Release( x ) \ (x)->lpVtbl->Release( x ) #define IMediaTypeInfo_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IMediaTypeInfo_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IMediaTypeInfo_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IMediaTypeInfo_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IMediaTypeInfo_get_Type( x, p ) \ (x)->lpVtbl->get_Type( x, p ) #define IMediaTypeInfo_get_Subtype( x, p ) \ (x)->lpVtbl->get_Subtype( x, p ) #define IPinInfo_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IPinInfo_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IPinInfo_Release( x ) \ (x)->lpVtbl->Release( x ) #define IPinInfo_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IPinInfo_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IPinInfo_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IPinInfo_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IPinInfo_get_Pin( x, p ) \ (x)->lpVtbl->get_Pin( x, p ) #define IPinInfo_get_ConnectedTo( x, p ) \ (x)->lpVtbl->get_ConnectedTo( x, p ) #define IPinInfo_get_ConnectionMediaType( x, p ) \ (x)->lpVtbl->get_ConnectionMediaType( x, p ) #define IPinInfo_get_FilterInfo( x, p ) \ (x)->lpVtbl->get_FilterInfo( x, p ) #define IPinInfo_get_Name( x, p ) \ (x)->lpVtbl->get_Name( x, p ) #define IPinInfo_get_Direction( x, p ) \ (x)->lpVtbl->get_Direction( x, p ) #define IPinInfo_get_PinID( x, p ) \ (x)->lpVtbl->get_PinID( x, p ) #define IPinInfo_get_MediaTypes( x, p ) \ (x)->lpVtbl->get_MediaTypes( x, p ) #define IPinInfo_Connect( x, p ) \ (x)->lpVtbl->Connect( x, p ) #define IPinInfo_ConnectDirect( x, p ) \ (x)->lpVtbl->ConnectDirect( x, p ) #define IPinInfo_ConnectWithType( x, p1, p2 ) \ (x)->lpVtbl->ConnectWithType( x, p1, p2 ) #define IPinInfo_Disconnect( x ) \ (x)->lpVtbl->Disconnect( x ) #define IPinInfo_Render( x ) \ (x)->lpVtbl->Render( x ) #define IAMStats_QueryInterface( x, p1, p2 ) \ (x)->lpVtbl->QueryInterface( x, p1, p2 ) #define IAMStats_AddRef( x ) \ (x)->lpVtbl->AddRef( x ) #define IAMStats_Release( x ) \ (x)->lpVtbl->Release( x ) #define IAMStats_GetTypeInfoCount( x, p ) \ (x)->lpVtbl->GetTypeInfoCount( x, p ) #define IAMStats_GetTypeInfo( x, p1, p2, p3 ) \ (x)->lpVtbl->GetTypeInfo( x, p1, p2, p3 ) #define IAMStats_GetIDsOfNames( x, p1, p2, p3, p4, p5 ) \ (x)->lpVtbl->GetIDsOfNames( x, p1, p2, p3, p4, p5 ) #define IAMStats_Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->Invoke( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IAMStats_Reset( x ) \ (x)->lpVtbl->Reset( x ) #define IAMStats_get_Count( x, p ) \ (x)->lpVtbl->get_Count( x, p ) #define IAMStats_GetValueByIndex( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->GetValueByIndex( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IAMStats_GetValueByName( x, p1, p2, p3, p4, p5, p6, p7, p8 ) \ (x)->lpVtbl->GetValueByName( x, p1, p2, p3, p4, p5, p6, p7, p8 ) #define IAMStats_GetIndex( x, p1, p2, p3 ) \ (x)->lpVtbl->GetIndex( x, p1, p2, p3 ) #define IAMStats_AddValue( x, p1, p2 ) \ (x)->lpVtbl->AddValue( x, p1, p2 ) #endif #ifdef __cplusplus } /* extern "C" */ #endif #endif /* __control_h__ */