Home | History | Annotate | Download | only in include
      1 /*** Autogenerated by WIDL 1.6 from include/control.idl - Do not edit ***/
      2 
      3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      5 #endif
      6 
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 
     10 #ifndef COM_NO_WINDOWS_H
     11 #include <windows.h>
     12 #include <ole2.h>
     13 #endif
     14 
     15 #ifndef __control_h__
     16 #define __control_h__
     17 
     18 /* Forward declarations */
     19 
     20 #ifndef __IMediaControl_FWD_DEFINED__
     21 #define __IMediaControl_FWD_DEFINED__
     22 typedef interface IMediaControl IMediaControl;
     23 #endif
     24 
     25 /* Headers for imported files */
     26 
     27 #include <oaidl.h>
     28 
     29 #ifdef __cplusplus
     30 extern "C" {
     31 #endif
     32 
     33 /**
     34  * This file has no copyright assigned and is placed in the Public Domain.
     35  * This file is part of the mingw-w64 runtime package.
     36  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
     37  */
     38 #ifndef __IAMCollection_FWD_DEFINED__
     39 #define __IAMCollection_FWD_DEFINED__
     40 typedef struct IAMCollection IAMCollection;
     41 #endif
     42 
     43 #ifndef __IMediaEvent_FWD_DEFINED__
     44 #define __IMediaEvent_FWD_DEFINED__
     45 typedef struct IMediaEvent IMediaEvent;
     46 #endif
     47 
     48 #ifndef __IMediaEventEx_FWD_DEFINED__
     49 #define __IMediaEventEx_FWD_DEFINED__
     50 typedef struct IMediaEventEx IMediaEventEx;
     51 #endif
     52 
     53 #ifndef __IMediaPosition_FWD_DEFINED__
     54 #define __IMediaPosition_FWD_DEFINED__
     55 typedef struct IMediaPosition IMediaPosition;
     56 #endif
     57 
     58 #ifndef __IBasicAudio_FWD_DEFINED__
     59 #define __IBasicAudio_FWD_DEFINED__
     60 typedef struct IBasicAudio IBasicAudio;
     61 #endif
     62 
     63 #ifndef __IVideoWindow_FWD_DEFINED__
     64 #define __IVideoWindow_FWD_DEFINED__
     65 typedef struct IVideoWindow IVideoWindow;
     66 #endif
     67 
     68 #ifndef __IBasicVideo_FWD_DEFINED__
     69 #define __IBasicVideo_FWD_DEFINED__
     70 typedef struct IBasicVideo IBasicVideo;
     71 #endif
     72 
     73 #ifndef __IBasicVideo2_FWD_DEFINED__
     74 #define __IBasicVideo2_FWD_DEFINED__
     75 typedef struct IBasicVideo2 IBasicVideo2;
     76 #endif
     77 
     78 #ifndef __IDeferredCommand_FWD_DEFINED__
     79 #define __IDeferredCommand_FWD_DEFINED__
     80 typedef struct IDeferredCommand IDeferredCommand;
     81 #endif
     82 
     83 #ifndef __IQueueCommand_FWD_DEFINED__
     84 #define __IQueueCommand_FWD_DEFINED__
     85 typedef struct IQueueCommand IQueueCommand;
     86 #endif
     87 
     88 #ifndef __FilgraphManager_FWD_DEFINED__
     89 #define __FilgraphManager_FWD_DEFINED__
     90 
     91 #ifdef __cplusplus
     92 typedef class FilgraphManager FilgraphManager;
     93 #else
     94 typedef struct FilgraphManager FilgraphManager;
     95 #endif
     96 #endif
     97 
     98 #ifndef __IFilterInfo_FWD_DEFINED__
     99 #define __IFilterInfo_FWD_DEFINED__
    100 typedef struct IFilterInfo IFilterInfo;
    101 #endif
    102 
    103 #ifndef __IRegFilterInfo_FWD_DEFINED__
    104 #define __IRegFilterInfo_FWD_DEFINED__
    105 typedef struct IRegFilterInfo IRegFilterInfo;
    106 #endif
    107 
    108 #ifndef __IMediaTypeInfo_FWD_DEFINED__
    109 #define __IMediaTypeInfo_FWD_DEFINED__
    110 typedef struct IMediaTypeInfo IMediaTypeInfo;
    111 #endif
    112 
    113 #ifndef __IPinInfo_FWD_DEFINED__
    114 #define __IPinInfo_FWD_DEFINED__
    115 typedef struct IPinInfo IPinInfo;
    116 #endif
    117 
    118 #ifndef __IAMStats_FWD_DEFINED__
    119 #define __IAMStats_FWD_DEFINED__
    120 typedef struct IAMStats IAMStats;
    121 #endif
    122 
    123 DEFINE_GUID(LIBID_QuartzTypeLib, 0x56a868b0, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70);
    124 
    125 typedef LONG OAFilterState;
    126 typedef LONG_PTR OAHWND;
    127 typedef LONG_PTR OAEVENT;
    128 #ifndef REFTIME_DEFINED
    129 #define REFTIME_DEFINED
    130 typedef DOUBLE REFTIME;
    131 #endif
    132 /*****************************************************************************
    133  * IMediaControl interface
    134  */
    135 #ifndef __IMediaControl_INTERFACE_DEFINED__
    136 #define __IMediaControl_INTERFACE_DEFINED__
    137 
    138 DEFINE_GUID(IID_IMediaControl, 0x56a868b1, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70);
    139 #if defined(__cplusplus) && !defined(CINTERFACE)
    140 MIDL_INTERFACE("56a868b1-0ad4-11ce-b03a-0020af0ba770")
    141 IMediaControl : public IDispatch
    142 {
    143     virtual HRESULT STDMETHODCALLTYPE Run(
    144         ) = 0;
    145 
    146     virtual HRESULT STDMETHODCALLTYPE Pause(
    147         ) = 0;
    148 
    149     virtual HRESULT STDMETHODCALLTYPE Stop(
    150         ) = 0;
    151 
    152     virtual HRESULT STDMETHODCALLTYPE GetState(
    153         LONG msTimeout,
    154         OAFilterState *pfs) = 0;
    155 
    156     virtual HRESULT STDMETHODCALLTYPE RenderFile(
    157         BSTR strFilename) = 0;
    158 
    159     virtual HRESULT STDMETHODCALLTYPE AddSourceFilter(
    160         BSTR strFilename,
    161         IDispatch **ppUnk) = 0;
    162 
    163     virtual HRESULT STDMETHODCALLTYPE get_FilterCollection(
    164         IDispatch **ppUnk) = 0;
    165 
    166     virtual HRESULT STDMETHODCALLTYPE get_RegFilterCollection(
    167         IDispatch **ppUnk) = 0;
    168 
    169     virtual HRESULT STDMETHODCALLTYPE StopWhenReady(
    170         ) = 0;
    171 
    172 };
    173 #ifdef __CRT_UUID_DECL
    174 __CRT_UUID_DECL(IMediaControl, 0x56a868b1, 0x0ad4, 0x11ce, 0xb0,0x3a, 0x00,0x20,0xaf,0x0b,0xa7,0x70)
    175 #endif
    176 #else
    177 typedef struct IMediaControlVtbl {
    178     BEGIN_INTERFACE
    179 
    180     /*** IUnknown methods ***/
    181     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    182         IMediaControl* This,
    183         REFIID riid,
    184         void **ppvObject);
    185 
    186     ULONG (STDMETHODCALLTYPE *AddRef)(
    187         IMediaControl* This);
    188 
    189     ULONG (STDMETHODCALLTYPE *Release)(
    190         IMediaControl* This);
    191 
    192     /*** IDispatch methods ***/
    193     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
    194         IMediaControl* This,
    195         UINT *pctinfo);
    196 
    197     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
    198         IMediaControl* This,
    199         UINT iTInfo,
    200         LCID lcid,
    201         ITypeInfo **ppTInfo);
    202 
    203     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
    204         IMediaControl* This,
    205         REFIID riid,
    206         LPOLESTR *rgszNames,
    207         UINT cNames,
    208         LCID lcid,
    209         DISPID *rgDispId);
    210 
    211     HRESULT (STDMETHODCALLTYPE *Invoke)(
    212         IMediaControl* This,
    213         DISPID dispIdMember,
    214         REFIID riid,
    215         LCID lcid,
    216         WORD wFlags,
    217         DISPPARAMS *pDispParams,
    218         VARIANT *pVarResult,
    219         EXCEPINFO *pExcepInfo,
    220         UINT *puArgErr);
    221 
    222     /*** IMediaControl methods ***/
    223     HRESULT (STDMETHODCALLTYPE *Run)(
    224         IMediaControl* This);
    225 
    226     HRESULT (STDMETHODCALLTYPE *Pause)(
    227         IMediaControl* This);
    228 
    229     HRESULT (STDMETHODCALLTYPE *Stop)(
    230         IMediaControl* This);
    231 
    232     HRESULT (STDMETHODCALLTYPE *GetState)(
    233         IMediaControl* This,
    234         LONG msTimeout,
    235         OAFilterState *pfs);
    236 
    237     HRESULT (STDMETHODCALLTYPE *RenderFile)(
    238         IMediaControl* This,
    239         BSTR strFilename);
    240 
    241     HRESULT (STDMETHODCALLTYPE *AddSourceFilter)(
    242         IMediaControl* This,
    243         BSTR strFilename,
    244         IDispatch **ppUnk);
    245 
    246     HRESULT (STDMETHODCALLTYPE *get_FilterCollection)(
    247         IMediaControl* This,
    248         IDispatch **ppUnk);
    249 
    250     HRESULT (STDMETHODCALLTYPE *get_RegFilterCollection)(
    251         IMediaControl* This,
    252         IDispatch **ppUnk);
    253 
    254     HRESULT (STDMETHODCALLTYPE *StopWhenReady)(
    255         IMediaControl* This);
    256 
    257     END_INTERFACE
    258 } IMediaControlVtbl;
    259 interface IMediaControl {
    260     CONST_VTBL IMediaControlVtbl* lpVtbl;
    261 };
    262 
    263 #ifdef COBJMACROS
    264 #ifndef WIDL_C_INLINE_WRAPPERS
    265 /*** IUnknown methods ***/
    266 #define IMediaControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    267 #define IMediaControl_AddRef(This) (This)->lpVtbl->AddRef(This)
    268 #define IMediaControl_Release(This) (This)->lpVtbl->Release(This)
    269 /*** IDispatch methods ***/
    270 #define IMediaControl_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    271 #define IMediaControl_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    272 #define IMediaControl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    273 #define IMediaControl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    274 /*** IMediaControl methods ***/
    275 #define IMediaControl_Run(This) (This)->lpVtbl->Run(This)
    276 #define IMediaControl_Pause(This) (This)->lpVtbl->Pause(This)
    277 #define IMediaControl_Stop(This) (This)->lpVtbl->Stop(This)
    278 #define IMediaControl_GetState(This,msTimeout,pfs) (This)->lpVtbl->GetState(This,msTimeout,pfs)
    279 #define IMediaControl_RenderFile(This,strFilename) (This)->lpVtbl->RenderFile(This,strFilename)
    280 #define IMediaControl_AddSourceFilter(This,strFilename,ppUnk) (This)->lpVtbl->AddSourceFilter(This,strFilename,ppUnk)
    281 #define IMediaControl_get_FilterCollection(This,ppUnk) (This)->lpVtbl->get_FilterCollection(This,ppUnk)
    282 #define IMediaControl_get_RegFilterCollection(This,ppUnk) (This)->lpVtbl->get_RegFilterCollection(This,ppUnk)
    283 #define IMediaControl_StopWhenReady(This) (This)->lpVtbl->StopWhenReady(This)
    284 #else
    285 /*** IUnknown methods ***/
    286 static FORCEINLINE HRESULT IMediaControl_QueryInterface(IMediaControl* This,REFIID riid,void **ppvObject) {
    287     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    288 }
    289 static FORCEINLINE ULONG IMediaControl_AddRef(IMediaControl* This) {
    290     return This->lpVtbl->AddRef(This);
    291 }
    292 static FORCEINLINE ULONG IMediaControl_Release(IMediaControl* This) {
    293     return This->lpVtbl->Release(This);
    294 }
    295 /*** IDispatch methods ***/
    296 static FORCEINLINE HRESULT IMediaControl_GetTypeInfoCount(IMediaControl* This,UINT *pctinfo) {
    297     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
    298 }
    299 static FORCEINLINE HRESULT IMediaControl_GetTypeInfo(IMediaControl* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
    300     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
    301 }
    302 static FORCEINLINE HRESULT IMediaControl_GetIDsOfNames(IMediaControl* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
    303     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
    304 }
    305 static FORCEINLINE HRESULT IMediaControl_Invoke(IMediaControl* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
    306     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
    307 }
    308 /*** IMediaControl methods ***/
    309 static FORCEINLINE HRESULT IMediaControl_Run(IMediaControl* This) {
    310     return This->lpVtbl->Run(This);
    311 }
    312 static FORCEINLINE HRESULT IMediaControl_Pause(IMediaControl* This) {
    313     return This->lpVtbl->Pause(This);
    314 }
    315 static FORCEINLINE HRESULT IMediaControl_Stop(IMediaControl* This) {
    316     return This->lpVtbl->Stop(This);
    317 }
    318 static FORCEINLINE HRESULT IMediaControl_GetState(IMediaControl* This,LONG msTimeout,OAFilterState *pfs) {
    319     return This->lpVtbl->GetState(This,msTimeout,pfs);
    320 }
    321 static FORCEINLINE HRESULT IMediaControl_RenderFile(IMediaControl* This,BSTR strFilename) {
    322     return This->lpVtbl->RenderFile(This,strFilename);
    323 }
    324 static FORCEINLINE HRESULT IMediaControl_AddSourceFilter(IMediaControl* This,BSTR strFilename,IDispatch **ppUnk) {
    325     return This->lpVtbl->AddSourceFilter(This,strFilename,ppUnk);
    326 }
    327 static FORCEINLINE HRESULT IMediaControl_get_FilterCollection(IMediaControl* This,IDispatch **ppUnk) {
    328     return This->lpVtbl->get_FilterCollection(This,ppUnk);
    329 }
    330 static FORCEINLINE HRESULT IMediaControl_get_RegFilterCollection(IMediaControl* This,IDispatch **ppUnk) {
    331     return This->lpVtbl->get_RegFilterCollection(This,ppUnk);
    332 }
    333 static FORCEINLINE HRESULT IMediaControl_StopWhenReady(IMediaControl* This) {
    334     return This->lpVtbl->StopWhenReady(This);
    335 }
    336 #endif
    337 #endif
    338 
    339 #endif
    340 
    341 HRESULT STDMETHODCALLTYPE IMediaControl_Run_Proxy(
    342     IMediaControl* This);
    343 void __RPC_STUB IMediaControl_Run_Stub(
    344     IRpcStubBuffer* This,
    345     IRpcChannelBuffer* pRpcChannelBuffer,
    346     PRPC_MESSAGE pRpcMessage,
    347     DWORD* pdwStubPhase);
    348 HRESULT STDMETHODCALLTYPE IMediaControl_Pause_Proxy(
    349     IMediaControl* This);
    350 void __RPC_STUB IMediaControl_Pause_Stub(
    351     IRpcStubBuffer* This,
    352     IRpcChannelBuffer* pRpcChannelBuffer,
    353     PRPC_MESSAGE pRpcMessage,
    354     DWORD* pdwStubPhase);
    355 HRESULT STDMETHODCALLTYPE IMediaControl_Stop_Proxy(
    356     IMediaControl* This);
    357 void __RPC_STUB IMediaControl_Stop_Stub(
    358     IRpcStubBuffer* This,
    359     IRpcChannelBuffer* pRpcChannelBuffer,
    360     PRPC_MESSAGE pRpcMessage,
    361     DWORD* pdwStubPhase);
    362 HRESULT STDMETHODCALLTYPE IMediaControl_GetState_Proxy(
    363     IMediaControl* This,
    364     LONG msTimeout,
    365     OAFilterState *pfs);
    366 void __RPC_STUB IMediaControl_GetState_Stub(
    367     IRpcStubBuffer* This,
    368     IRpcChannelBuffer* pRpcChannelBuffer,
    369     PRPC_MESSAGE pRpcMessage,
    370     DWORD* pdwStubPhase);
    371 HRESULT STDMETHODCALLTYPE IMediaControl_RenderFile_Proxy(
    372     IMediaControl* This,
    373     BSTR strFilename);
    374 void __RPC_STUB IMediaControl_RenderFile_Stub(
    375     IRpcStubBuffer* This,
    376     IRpcChannelBuffer* pRpcChannelBuffer,
    377     PRPC_MESSAGE pRpcMessage,
    378     DWORD* pdwStubPhase);
    379 HRESULT STDMETHODCALLTYPE IMediaControl_AddSourceFilter_Proxy(
    380     IMediaControl* This,
    381     BSTR strFilename,
    382     IDispatch **ppUnk);
    383 void __RPC_STUB IMediaControl_AddSourceFilter_Stub(
    384     IRpcStubBuffer* This,
    385     IRpcChannelBuffer* pRpcChannelBuffer,
    386     PRPC_MESSAGE pRpcMessage,
    387     DWORD* pdwStubPhase);
    388 HRESULT STDMETHODCALLTYPE IMediaControl_get_FilterCollection_Proxy(
    389     IMediaControl* This,
    390     IDispatch **ppUnk);
    391 void __RPC_STUB IMediaControl_get_FilterCollection_Stub(
    392     IRpcStubBuffer* This,
    393     IRpcChannelBuffer* pRpcChannelBuffer,
    394     PRPC_MESSAGE pRpcMessage,
    395     DWORD* pdwStubPhase);
    396 HRESULT STDMETHODCALLTYPE IMediaControl_get_RegFilterCollection_Proxy(
    397     IMediaControl* This,
    398     IDispatch **ppUnk);
    399 void __RPC_STUB IMediaControl_get_RegFilterCollection_Stub(
    400     IRpcStubBuffer* This,
    401     IRpcChannelBuffer* pRpcChannelBuffer,
    402     PRPC_MESSAGE pRpcMessage,
    403     DWORD* pdwStubPhase);
    404 HRESULT STDMETHODCALLTYPE IMediaControl_StopWhenReady_Proxy(
    405     IMediaControl* This);
    406 void __RPC_STUB IMediaControl_StopWhenReady_Stub(
    407     IRpcStubBuffer* This,
    408     IRpcChannelBuffer* pRpcChannelBuffer,
    409     PRPC_MESSAGE pRpcMessage,
    410     DWORD* pdwStubPhase);
    411 
    412 #endif  /* __IMediaControl_INTERFACE_DEFINED__ */
    413 
    414 #ifndef __IAMCollection_INTERFACE_DEFINED__
    415 #define __IAMCollection_INTERFACE_DEFINED__
    416   DEFINE_GUID(IID_IAMCollection,0x56a868b9,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
    417 #if defined(__cplusplus) && !defined(CINTERFACE)
    418   struct IAMCollection : public IDispatch {
    419   public:
    420     virtual HRESULT WINAPI get_Count(LONG *plCount) = 0;
    421     virtual HRESULT WINAPI Item(__LONG32 lItem,IUnknown **ppUnk) = 0;
    422     virtual HRESULT WINAPI get__NewEnum(IUnknown **ppUnk) = 0;
    423   };
    424 #else
    425   typedef struct IAMCollectionVtbl {
    426     BEGIN_INTERFACE
    427       HRESULT (WINAPI *QueryInterface)(IAMCollection *This,REFIID riid,void **ppvObject);
    428       ULONG (WINAPI *AddRef)(IAMCollection *This);
    429       ULONG (WINAPI *Release)(IAMCollection *This);
    430       HRESULT (WINAPI *GetTypeInfoCount)(IAMCollection *This,UINT *pctinfo);
    431       HRESULT (WINAPI *GetTypeInfo)(IAMCollection *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    432       HRESULT (WINAPI *GetIDsOfNames)(IAMCollection *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    433       HRESULT (WINAPI *Invoke)(IAMCollection *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    434       HRESULT (WINAPI *get_Count)(IAMCollection *This,LONG *plCount);
    435       HRESULT (WINAPI *Item)(IAMCollection *This,__LONG32 lItem,IUnknown **ppUnk);
    436       HRESULT (WINAPI *get__NewEnum)(IAMCollection *This,IUnknown **ppUnk);
    437     END_INTERFACE
    438   } IAMCollectionVtbl;
    439   struct IAMCollection {
    440     CONST_VTBL struct IAMCollectionVtbl *lpVtbl;
    441   };
    442 #ifdef COBJMACROS
    443 #define IAMCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    444 #define IAMCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
    445 #define IAMCollection_Release(This) (This)->lpVtbl->Release(This)
    446 #define IAMCollection_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    447 #define IAMCollection_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    448 #define IAMCollection_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    449 #define IAMCollection_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    450 #define IAMCollection_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount)
    451 #define IAMCollection_Item(This,lItem,ppUnk) (This)->lpVtbl->Item(This,lItem,ppUnk)
    452 #define IAMCollection_get__NewEnum(This,ppUnk) (This)->lpVtbl->get__NewEnum(This,ppUnk)
    453 #endif
    454 #endif
    455   HRESULT WINAPI IAMCollection_get_Count_Proxy(IAMCollection *This,LONG *plCount);
    456   void __RPC_STUB IAMCollection_get_Count_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    457   HRESULT WINAPI IAMCollection_Item_Proxy(IAMCollection *This,__LONG32 lItem,IUnknown **ppUnk);
    458   void __RPC_STUB IAMCollection_Item_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    459   HRESULT WINAPI IAMCollection_get__NewEnum_Proxy(IAMCollection *This,IUnknown **ppUnk);
    460   void __RPC_STUB IAMCollection_get__NewEnum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    461 #endif
    462 #ifndef __IMediaEvent_INTERFACE_DEFINED__
    463 #define __IMediaEvent_INTERFACE_DEFINED__
    464   DEFINE_GUID(IID_IMediaEvent,0x56a868b6,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
    465 #if defined(__cplusplus) && !defined(CINTERFACE)
    466   struct IMediaEvent : public IDispatch {
    467   public:
    468     virtual HRESULT WINAPI GetEventHandle(OAEVENT *hEvent) = 0;
    469     virtual HRESULT WINAPI GetEvent(__LONG32 *lEventCode,LONG_PTR *lParam1,LONG_PTR *lParam2,__LONG32 msTimeout) = 0;
    470     virtual HRESULT WINAPI WaitForCompletion(__LONG32 msTimeout,__LONG32 *pEvCode) = 0;
    471     virtual HRESULT WINAPI CancelDefaultHandling(__LONG32 lEvCode) = 0;
    472     virtual HRESULT WINAPI RestoreDefaultHandling(__LONG32 lEvCode) = 0;
    473     virtual HRESULT WINAPI FreeEventParams(__LONG32 lEvCode,LONG_PTR lParam1,LONG_PTR lParam2) = 0;
    474   };
    475 #else
    476   typedef struct IMediaEventVtbl {
    477     BEGIN_INTERFACE
    478       HRESULT (WINAPI *QueryInterface)(IMediaEvent *This,REFIID riid,void **ppvObject);
    479       ULONG (WINAPI *AddRef)(IMediaEvent *This);
    480       ULONG (WINAPI *Release)(IMediaEvent *This);
    481       HRESULT (WINAPI *GetTypeInfoCount)(IMediaEvent *This,UINT *pctinfo);
    482       HRESULT (WINAPI *GetTypeInfo)(IMediaEvent *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    483       HRESULT (WINAPI *GetIDsOfNames)(IMediaEvent *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    484       HRESULT (WINAPI *Invoke)(IMediaEvent *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    485       HRESULT (WINAPI *GetEventHandle)(IMediaEvent *This,OAEVENT *hEvent);
    486       HRESULT (WINAPI *GetEvent)(IMediaEvent *This,__LONG32 *lEventCode,LONG_PTR *lParam1,LONG_PTR *lParam2,__LONG32 msTimeout);
    487       HRESULT (WINAPI *WaitForCompletion)(IMediaEvent *This,__LONG32 msTimeout,__LONG32 *pEvCode);
    488       HRESULT (WINAPI *CancelDefaultHandling)(IMediaEvent *This,__LONG32 lEvCode);
    489       HRESULT (WINAPI *RestoreDefaultHandling)(IMediaEvent *This,__LONG32 lEvCode);
    490       HRESULT (WINAPI *FreeEventParams)(IMediaEvent *This,__LONG32 lEvCode,LONG_PTR lParam1,LONG_PTR lParam2);
    491     END_INTERFACE
    492   } IMediaEventVtbl;
    493   struct IMediaEvent {
    494     CONST_VTBL struct IMediaEventVtbl *lpVtbl;
    495   };
    496 #ifdef COBJMACROS
    497 #define IMediaEvent_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    498 #define IMediaEvent_AddRef(This) (This)->lpVtbl->AddRef(This)
    499 #define IMediaEvent_Release(This) (This)->lpVtbl->Release(This)
    500 #define IMediaEvent_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    501 #define IMediaEvent_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    502 #define IMediaEvent_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    503 #define IMediaEvent_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    504 #define IMediaEvent_GetEventHandle(This,hEvent) (This)->lpVtbl->GetEventHandle(This,hEvent)
    505 #define IMediaEvent_GetEvent(This,lEventCode,lParam1,lParam2,msTimeout) (This)->lpVtbl->GetEvent(This,lEventCode,lParam1,lParam2,msTimeout)
    506 #define IMediaEvent_WaitForCompletion(This,msTimeout,pEvCode) (This)->lpVtbl->WaitForCompletion(This,msTimeout,pEvCode)
    507 #define IMediaEvent_CancelDefaultHandling(This,lEvCode) (This)->lpVtbl->CancelDefaultHandling(This,lEvCode)
    508 #define IMediaEvent_RestoreDefaultHandling(This,lEvCode) (This)->lpVtbl->RestoreDefaultHandling(This,lEvCode)
    509 #define IMediaEvent_FreeEventParams(This,lEvCode,lParam1,lParam2) (This)->lpVtbl->FreeEventParams(This,lEvCode,lParam1,lParam2)
    510 #endif
    511 #endif
    512   HRESULT WINAPI IMediaEvent_GetEventHandle_Proxy(IMediaEvent *This,OAEVENT *hEvent);
    513   void __RPC_STUB IMediaEvent_GetEventHandle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    514   HRESULT WINAPI IMediaEvent_GetEvent_Proxy(IMediaEvent *This,__LONG32 *lEventCode,LONG_PTR *lParam1,LONG_PTR *lParam2,__LONG32 msTimeout);
    515   void __RPC_STUB IMediaEvent_GetEvent_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    516   HRESULT WINAPI IMediaEvent_WaitForCompletion_Proxy(IMediaEvent *This,__LONG32 msTimeout,__LONG32 *pEvCode);
    517   void __RPC_STUB IMediaEvent_WaitForCompletion_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    518   HRESULT WINAPI IMediaEvent_CancelDefaultHandling_Proxy(IMediaEvent *This,__LONG32 lEvCode);
    519   void __RPC_STUB IMediaEvent_CancelDefaultHandling_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    520   HRESULT WINAPI IMediaEvent_RestoreDefaultHandling_Proxy(IMediaEvent *This,__LONG32 lEvCode);
    521   void __RPC_STUB IMediaEvent_RestoreDefaultHandling_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    522   HRESULT WINAPI IMediaEvent_FreeEventParams_Proxy(IMediaEvent *This,__LONG32 lEvCode,LONG_PTR lParam1,LONG_PTR lParam2);
    523   void __RPC_STUB IMediaEvent_FreeEventParams_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    524 #endif
    525 
    526 #ifndef __IMediaEventEx_INTERFACE_DEFINED__
    527 #define __IMediaEventEx_INTERFACE_DEFINED__
    528   DEFINE_GUID(IID_IMediaEventEx,0x56a868c0,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
    529 #if defined(__cplusplus) && !defined(CINTERFACE)
    530   struct IMediaEventEx : public IMediaEvent {
    531   public:
    532     virtual HRESULT WINAPI SetNotifyWindow(OAHWND hwnd,__LONG32 lMsg,LONG_PTR lInstanceData) = 0;
    533     virtual HRESULT WINAPI SetNotifyFlags(__LONG32 lNoNotifyFlags) = 0;
    534     virtual HRESULT WINAPI GetNotifyFlags(__LONG32 *lplNoNotifyFlags) = 0;
    535   };
    536 #else
    537   typedef struct IMediaEventExVtbl {
    538     BEGIN_INTERFACE
    539       HRESULT (WINAPI *QueryInterface)(IMediaEventEx *This,REFIID riid,void **ppvObject);
    540       ULONG (WINAPI *AddRef)(IMediaEventEx *This);
    541       ULONG (WINAPI *Release)(IMediaEventEx *This);
    542       HRESULT (WINAPI *GetTypeInfoCount)(IMediaEventEx *This,UINT *pctinfo);
    543       HRESULT (WINAPI *GetTypeInfo)(IMediaEventEx *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    544       HRESULT (WINAPI *GetIDsOfNames)(IMediaEventEx *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    545       HRESULT (WINAPI *Invoke)(IMediaEventEx *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    546       HRESULT (WINAPI *GetEventHandle)(IMediaEventEx *This,OAEVENT *hEvent);
    547       HRESULT (WINAPI *GetEvent)(IMediaEventEx *This,__LONG32 *lEventCode,LONG_PTR *lParam1,LONG_PTR *lParam2,__LONG32 msTimeout);
    548       HRESULT (WINAPI *WaitForCompletion)(IMediaEventEx *This,__LONG32 msTimeout,__LONG32 *pEvCode);
    549       HRESULT (WINAPI *CancelDefaultHandling)(IMediaEventEx *This,__LONG32 lEvCode);
    550       HRESULT (WINAPI *RestoreDefaultHandling)(IMediaEventEx *This,__LONG32 lEvCode);
    551       HRESULT (WINAPI *FreeEventParams)(IMediaEventEx *This,__LONG32 lEvCode,LONG_PTR lParam1,LONG_PTR lParam2);
    552       HRESULT (WINAPI *SetNotifyWindow)(IMediaEventEx *This,OAHWND hwnd,__LONG32 lMsg,LONG_PTR lInstanceData);
    553       HRESULT (WINAPI *SetNotifyFlags)(IMediaEventEx *This,__LONG32 lNoNotifyFlags);
    554       HRESULT (WINAPI *GetNotifyFlags)(IMediaEventEx *This,__LONG32 *lplNoNotifyFlags);
    555     END_INTERFACE
    556   } IMediaEventExVtbl;
    557   struct IMediaEventEx {
    558     CONST_VTBL struct IMediaEventExVtbl *lpVtbl;
    559   };
    560 #ifdef COBJMACROS
    561 #define IMediaEventEx_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    562 #define IMediaEventEx_AddRef(This) (This)->lpVtbl->AddRef(This)
    563 #define IMediaEventEx_Release(This) (This)->lpVtbl->Release(This)
    564 #define IMediaEventEx_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    565 #define IMediaEventEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    566 #define IMediaEventEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    567 #define IMediaEventEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    568 #define IMediaEventEx_GetEventHandle(This,hEvent) (This)->lpVtbl->GetEventHandle(This,hEvent)
    569 #define IMediaEventEx_GetEvent(This,lEventCode,lParam1,lParam2,msTimeout) (This)->lpVtbl->GetEvent(This,lEventCode,lParam1,lParam2,msTimeout)
    570 #define IMediaEventEx_WaitForCompletion(This,msTimeout,pEvCode) (This)->lpVtbl->WaitForCompletion(This,msTimeout,pEvCode)
    571 #define IMediaEventEx_CancelDefaultHandling(This,lEvCode) (This)->lpVtbl->CancelDefaultHandling(This,lEvCode)
    572 #define IMediaEventEx_RestoreDefaultHandling(This,lEvCode) (This)->lpVtbl->RestoreDefaultHandling(This,lEvCode)
    573 #define IMediaEventEx_FreeEventParams(This,lEvCode,lParam1,lParam2) (This)->lpVtbl->FreeEventParams(This,lEvCode,lParam1,lParam2)
    574 #define IMediaEventEx_SetNotifyWindow(This,hwnd,lMsg,lInstanceData) (This)->lpVtbl->SetNotifyWindow(This,hwnd,lMsg,lInstanceData)
    575 #define IMediaEventEx_SetNotifyFlags(This,lNoNotifyFlags) (This)->lpVtbl->SetNotifyFlags(This,lNoNotifyFlags)
    576 #define IMediaEventEx_GetNotifyFlags(This,lplNoNotifyFlags) (This)->lpVtbl->GetNotifyFlags(This,lplNoNotifyFlags)
    577 #endif
    578 #endif
    579   HRESULT WINAPI IMediaEventEx_SetNotifyWindow_Proxy(IMediaEventEx *This,OAHWND hwnd,__LONG32 lMsg,LONG_PTR lInstanceData);
    580   void __RPC_STUB IMediaEventEx_SetNotifyWindow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    581   HRESULT WINAPI IMediaEventEx_SetNotifyFlags_Proxy(IMediaEventEx *This,__LONG32 lNoNotifyFlags);
    582   void __RPC_STUB IMediaEventEx_SetNotifyFlags_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    583   HRESULT WINAPI IMediaEventEx_GetNotifyFlags_Proxy(IMediaEventEx *This,__LONG32 *lplNoNotifyFlags);
    584   void __RPC_STUB IMediaEventEx_GetNotifyFlags_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    585 #endif
    586 
    587 #ifndef __IMediaPosition_INTERFACE_DEFINED__
    588 #define __IMediaPosition_INTERFACE_DEFINED__
    589   DEFINE_GUID(IID_IMediaPosition,0x56a868b2,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
    590 #if defined(__cplusplus) && !defined(CINTERFACE)
    591   struct IMediaPosition : public IDispatch {
    592   public:
    593     virtual HRESULT WINAPI get_Duration(REFTIME *plength) = 0;
    594     virtual HRESULT WINAPI put_CurrentPosition(REFTIME llTime) = 0;
    595     virtual HRESULT WINAPI get_CurrentPosition(REFTIME *pllTime) = 0;
    596     virtual HRESULT WINAPI get_StopTime(REFTIME *pllTime) = 0;
    597     virtual HRESULT WINAPI put_StopTime(REFTIME llTime) = 0;
    598     virtual HRESULT WINAPI get_PrerollTime(REFTIME *pllTime) = 0;
    599     virtual HRESULT WINAPI put_PrerollTime(REFTIME llTime) = 0;
    600     virtual HRESULT WINAPI put_Rate(double dRate) = 0;
    601     virtual HRESULT WINAPI get_Rate(double *pdRate) = 0;
    602     virtual HRESULT WINAPI CanSeekForward(LONG *pCanSeekForward) = 0;
    603     virtual HRESULT WINAPI CanSeekBackward(LONG *pCanSeekBackward) = 0;
    604   };
    605 #else
    606   typedef struct IMediaPositionVtbl {
    607     BEGIN_INTERFACE
    608       HRESULT (WINAPI *QueryInterface)(IMediaPosition *This,REFIID riid,void **ppvObject);
    609       ULONG (WINAPI *AddRef)(IMediaPosition *This);
    610       ULONG (WINAPI *Release)(IMediaPosition *This);
    611       HRESULT (WINAPI *GetTypeInfoCount)(IMediaPosition *This,UINT *pctinfo);
    612       HRESULT (WINAPI *GetTypeInfo)(IMediaPosition *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    613       HRESULT (WINAPI *GetIDsOfNames)(IMediaPosition *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    614       HRESULT (WINAPI *Invoke)(IMediaPosition *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    615       HRESULT (WINAPI *get_Duration)(IMediaPosition *This,REFTIME *plength);
    616       HRESULT (WINAPI *put_CurrentPosition)(IMediaPosition *This,REFTIME llTime);
    617       HRESULT (WINAPI *get_CurrentPosition)(IMediaPosition *This,REFTIME *pllTime);
    618       HRESULT (WINAPI *get_StopTime)(IMediaPosition *This,REFTIME *pllTime);
    619       HRESULT (WINAPI *put_StopTime)(IMediaPosition *This,REFTIME llTime);
    620       HRESULT (WINAPI *get_PrerollTime)(IMediaPosition *This,REFTIME *pllTime);
    621       HRESULT (WINAPI *put_PrerollTime)(IMediaPosition *This,REFTIME llTime);
    622       HRESULT (WINAPI *put_Rate)(IMediaPosition *This,double dRate);
    623       HRESULT (WINAPI *get_Rate)(IMediaPosition *This,double *pdRate);
    624       HRESULT (WINAPI *CanSeekForward)(IMediaPosition *This,LONG *pCanSeekForward);
    625       HRESULT (WINAPI *CanSeekBackward)(IMediaPosition *This,LONG *pCanSeekBackward);
    626     END_INTERFACE
    627   } IMediaPositionVtbl;
    628   struct IMediaPosition {
    629     CONST_VTBL struct IMediaPositionVtbl *lpVtbl;
    630   };
    631 #ifdef COBJMACROS
    632 #define IMediaPosition_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    633 #define IMediaPosition_AddRef(This) (This)->lpVtbl->AddRef(This)
    634 #define IMediaPosition_Release(This) (This)->lpVtbl->Release(This)
    635 #define IMediaPosition_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    636 #define IMediaPosition_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    637 #define IMediaPosition_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    638 #define IMediaPosition_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    639 #define IMediaPosition_get_Duration(This,plength) (This)->lpVtbl->get_Duration(This,plength)
    640 #define IMediaPosition_put_CurrentPosition(This,llTime) (This)->lpVtbl->put_CurrentPosition(This,llTime)
    641 #define IMediaPosition_get_CurrentPosition(This,pllTime) (This)->lpVtbl->get_CurrentPosition(This,pllTime)
    642 #define IMediaPosition_get_StopTime(This,pllTime) (This)->lpVtbl->get_StopTime(This,pllTime)
    643 #define IMediaPosition_put_StopTime(This,llTime) (This)->lpVtbl->put_StopTime(This,llTime)
    644 #define IMediaPosition_get_PrerollTime(This,pllTime) (This)->lpVtbl->get_PrerollTime(This,pllTime)
    645 #define IMediaPosition_put_PrerollTime(This,llTime) (This)->lpVtbl->put_PrerollTime(This,llTime)
    646 #define IMediaPosition_put_Rate(This,dRate) (This)->lpVtbl->put_Rate(This,dRate)
    647 #define IMediaPosition_get_Rate(This,pdRate) (This)->lpVtbl->get_Rate(This,pdRate)
    648 #define IMediaPosition_CanSeekForward(This,pCanSeekForward) (This)->lpVtbl->CanSeekForward(This,pCanSeekForward)
    649 #define IMediaPosition_CanSeekBackward(This,pCanSeekBackward) (This)->lpVtbl->CanSeekBackward(This,pCanSeekBackward)
    650 #endif
    651 #endif
    652   HRESULT WINAPI IMediaPosition_get_Duration_Proxy(IMediaPosition *This,REFTIME *plength);
    653   void __RPC_STUB IMediaPosition_get_Duration_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    654   HRESULT WINAPI IMediaPosition_put_CurrentPosition_Proxy(IMediaPosition *This,REFTIME llTime);
    655   void __RPC_STUB IMediaPosition_put_CurrentPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    656   HRESULT WINAPI IMediaPosition_get_CurrentPosition_Proxy(IMediaPosition *This,REFTIME *pllTime);
    657   void __RPC_STUB IMediaPosition_get_CurrentPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    658   HRESULT WINAPI IMediaPosition_get_StopTime_Proxy(IMediaPosition *This,REFTIME *pllTime);
    659   void __RPC_STUB IMediaPosition_get_StopTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    660   HRESULT WINAPI IMediaPosition_put_StopTime_Proxy(IMediaPosition *This,REFTIME llTime);
    661   void __RPC_STUB IMediaPosition_put_StopTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    662   HRESULT WINAPI IMediaPosition_get_PrerollTime_Proxy(IMediaPosition *This,REFTIME *pllTime);
    663   void __RPC_STUB IMediaPosition_get_PrerollTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    664   HRESULT WINAPI IMediaPosition_put_PrerollTime_Proxy(IMediaPosition *This,REFTIME llTime);
    665   void __RPC_STUB IMediaPosition_put_PrerollTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    666   HRESULT WINAPI IMediaPosition_put_Rate_Proxy(IMediaPosition *This,double dRate);
    667   void __RPC_STUB IMediaPosition_put_Rate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    668   HRESULT WINAPI IMediaPosition_get_Rate_Proxy(IMediaPosition *This,double *pdRate);
    669   void __RPC_STUB IMediaPosition_get_Rate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    670   HRESULT WINAPI IMediaPosition_CanSeekForward_Proxy(IMediaPosition *This,LONG *pCanSeekForward);
    671   void __RPC_STUB IMediaPosition_CanSeekForward_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    672   HRESULT WINAPI IMediaPosition_CanSeekBackward_Proxy(IMediaPosition *This,LONG *pCanSeekBackward);
    673   void __RPC_STUB IMediaPosition_CanSeekBackward_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    674 #endif
    675 
    676 #ifndef __IBasicAudio_INTERFACE_DEFINED__
    677 #define __IBasicAudio_INTERFACE_DEFINED__
    678   DEFINE_GUID(IID_IBasicAudio,0x56a868b3,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
    679 #if defined(__cplusplus) && !defined(CINTERFACE)
    680   struct IBasicAudio : public IDispatch {
    681   public:
    682     virtual HRESULT WINAPI put_Volume(__LONG32 lVolume) = 0;
    683     virtual HRESULT WINAPI get_Volume(__LONG32 *plVolume) = 0;
    684     virtual HRESULT WINAPI put_Balance(__LONG32 lBalance) = 0;
    685     virtual HRESULT WINAPI get_Balance(__LONG32 *plBalance) = 0;
    686   };
    687 #else
    688   typedef struct IBasicAudioVtbl {
    689     BEGIN_INTERFACE
    690       HRESULT (WINAPI *QueryInterface)(IBasicAudio *This,REFIID riid,void **ppvObject);
    691       ULONG (WINAPI *AddRef)(IBasicAudio *This);
    692       ULONG (WINAPI *Release)(IBasicAudio *This);
    693       HRESULT (WINAPI *GetTypeInfoCount)(IBasicAudio *This,UINT *pctinfo);
    694       HRESULT (WINAPI *GetTypeInfo)(IBasicAudio *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    695       HRESULT (WINAPI *GetIDsOfNames)(IBasicAudio *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    696       HRESULT (WINAPI *Invoke)(IBasicAudio *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    697       HRESULT (WINAPI *put_Volume)(IBasicAudio *This,__LONG32 lVolume);
    698       HRESULT (WINAPI *get_Volume)(IBasicAudio *This,__LONG32 *plVolume);
    699       HRESULT (WINAPI *put_Balance)(IBasicAudio *This,__LONG32 lBalance);
    700       HRESULT (WINAPI *get_Balance)(IBasicAudio *This,__LONG32 *plBalance);
    701     END_INTERFACE
    702   } IBasicAudioVtbl;
    703   struct IBasicAudio {
    704     CONST_VTBL struct IBasicAudioVtbl *lpVtbl;
    705   };
    706 #ifdef COBJMACROS
    707 #define IBasicAudio_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    708 #define IBasicAudio_AddRef(This) (This)->lpVtbl->AddRef(This)
    709 #define IBasicAudio_Release(This) (This)->lpVtbl->Release(This)
    710 #define IBasicAudio_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    711 #define IBasicAudio_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    712 #define IBasicAudio_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    713 #define IBasicAudio_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    714 #define IBasicAudio_put_Volume(This,lVolume) (This)->lpVtbl->put_Volume(This,lVolume)
    715 #define IBasicAudio_get_Volume(This,plVolume) (This)->lpVtbl->get_Volume(This,plVolume)
    716 #define IBasicAudio_put_Balance(This,lBalance) (This)->lpVtbl->put_Balance(This,lBalance)
    717 #define IBasicAudio_get_Balance(This,plBalance) (This)->lpVtbl->get_Balance(This,plBalance)
    718 #endif
    719 #endif
    720   HRESULT WINAPI IBasicAudio_put_Volume_Proxy(IBasicAudio *This,__LONG32 lVolume);
    721   void __RPC_STUB IBasicAudio_put_Volume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    722   HRESULT WINAPI IBasicAudio_get_Volume_Proxy(IBasicAudio *This,__LONG32 *plVolume);
    723   void __RPC_STUB IBasicAudio_get_Volume_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    724   HRESULT WINAPI IBasicAudio_put_Balance_Proxy(IBasicAudio *This,__LONG32 lBalance);
    725   void __RPC_STUB IBasicAudio_put_Balance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    726   HRESULT WINAPI IBasicAudio_get_Balance_Proxy(IBasicAudio *This,__LONG32 *plBalance);
    727   void __RPC_STUB IBasicAudio_get_Balance_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    728 #endif
    729 
    730 #ifndef __IVideoWindow_INTERFACE_DEFINED__
    731 #define __IVideoWindow_INTERFACE_DEFINED__
    732   DEFINE_GUID(IID_IVideoWindow,0x56a868b4,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
    733 #if defined(__cplusplus) && !defined(CINTERFACE)
    734   struct IVideoWindow : public IDispatch {
    735   public:
    736     virtual HRESULT WINAPI put_Caption(BSTR strCaption) = 0;
    737     virtual HRESULT WINAPI get_Caption(BSTR *strCaption) = 0;
    738     virtual HRESULT WINAPI put_WindowStyle(__LONG32 WindowStyle) = 0;
    739     virtual HRESULT WINAPI get_WindowStyle(__LONG32 *WindowStyle) = 0;
    740     virtual HRESULT WINAPI put_WindowStyleEx(__LONG32 WindowStyleEx) = 0;
    741     virtual HRESULT WINAPI get_WindowStyleEx(__LONG32 *WindowStyleEx) = 0;
    742     virtual HRESULT WINAPI put_AutoShow(__LONG32 AutoShow) = 0;
    743     virtual HRESULT WINAPI get_AutoShow(__LONG32 *AutoShow) = 0;
    744     virtual HRESULT WINAPI put_WindowState(__LONG32 WindowState) = 0;
    745     virtual HRESULT WINAPI get_WindowState(__LONG32 *WindowState) = 0;
    746     virtual HRESULT WINAPI put_BackgroundPalette(__LONG32 BackgroundPalette) = 0;
    747     virtual HRESULT WINAPI get_BackgroundPalette(__LONG32 *pBackgroundPalette) = 0;
    748     virtual HRESULT WINAPI put_Visible(__LONG32 Visible) = 0;
    749     virtual HRESULT WINAPI get_Visible(__LONG32 *pVisible) = 0;
    750     virtual HRESULT WINAPI put_Left(__LONG32 Left) = 0;
    751     virtual HRESULT WINAPI get_Left(__LONG32 *pLeft) = 0;
    752     virtual HRESULT WINAPI put_Width(__LONG32 Width) = 0;
    753     virtual HRESULT WINAPI get_Width(__LONG32 *pWidth) = 0;
    754     virtual HRESULT WINAPI put_Top(__LONG32 Top) = 0;
    755     virtual HRESULT WINAPI get_Top(__LONG32 *pTop) = 0;
    756     virtual HRESULT WINAPI put_Height(__LONG32 Height) = 0;
    757     virtual HRESULT WINAPI get_Height(__LONG32 *pHeight) = 0;
    758     virtual HRESULT WINAPI put_Owner(OAHWND Owner) = 0;
    759     virtual HRESULT WINAPI get_Owner(OAHWND *Owner) = 0;
    760     virtual HRESULT WINAPI put_MessageDrain(OAHWND Drain) = 0;
    761     virtual HRESULT WINAPI get_MessageDrain(OAHWND *Drain) = 0;
    762     virtual HRESULT WINAPI get_BorderColor(__LONG32 *Color) = 0;
    763     virtual HRESULT WINAPI put_BorderColor(__LONG32 Color) = 0;
    764     virtual HRESULT WINAPI get_FullScreenMode(__LONG32 *FullScreenMode) = 0;
    765     virtual HRESULT WINAPI put_FullScreenMode(__LONG32 FullScreenMode) = 0;
    766     virtual HRESULT WINAPI SetWindowForeground(__LONG32 Focus) = 0;
    767     virtual HRESULT WINAPI NotifyOwnerMessage(OAHWND hwnd,__LONG32 uMsg,LONG_PTR wParam,LONG_PTR lParam) = 0;
    768     virtual HRESULT WINAPI SetWindowPosition(__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height) = 0;
    769     virtual HRESULT WINAPI GetWindowPosition(__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight) = 0;
    770     virtual HRESULT WINAPI GetMinIdealImageSize(__LONG32 *pWidth,__LONG32 *pHeight) = 0;
    771     virtual HRESULT WINAPI GetMaxIdealImageSize(__LONG32 *pWidth,__LONG32 *pHeight) = 0;
    772     virtual HRESULT WINAPI GetRestorePosition(__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight) = 0;
    773     virtual HRESULT WINAPI HideCursor(__LONG32 HideCursor) = 0;
    774     virtual HRESULT WINAPI IsCursorHidden(__LONG32 *CursorHidden) = 0;
    775   };
    776 #else
    777   typedef struct IVideoWindowVtbl {
    778     BEGIN_INTERFACE
    779       HRESULT (WINAPI *QueryInterface)(IVideoWindow *This,REFIID riid,void **ppvObject);
    780       ULONG (WINAPI *AddRef)(IVideoWindow *This);
    781       ULONG (WINAPI *Release)(IVideoWindow *This);
    782       HRESULT (WINAPI *GetTypeInfoCount)(IVideoWindow *This,UINT *pctinfo);
    783       HRESULT (WINAPI *GetTypeInfo)(IVideoWindow *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
    784       HRESULT (WINAPI *GetIDsOfNames)(IVideoWindow *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
    785       HRESULT (WINAPI *Invoke)(IVideoWindow *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
    786       HRESULT (WINAPI *put_Caption)(IVideoWindow *This,BSTR strCaption);
    787       HRESULT (WINAPI *get_Caption)(IVideoWindow *This,BSTR *strCaption);
    788       HRESULT (WINAPI *put_WindowStyle)(IVideoWindow *This,__LONG32 WindowStyle);
    789       HRESULT (WINAPI *get_WindowStyle)(IVideoWindow *This,__LONG32 *WindowStyle);
    790       HRESULT (WINAPI *put_WindowStyleEx)(IVideoWindow *This,__LONG32 WindowStyleEx);
    791       HRESULT (WINAPI *get_WindowStyleEx)(IVideoWindow *This,__LONG32 *WindowStyleEx);
    792       HRESULT (WINAPI *put_AutoShow)(IVideoWindow *This,__LONG32 AutoShow);
    793       HRESULT (WINAPI *get_AutoShow)(IVideoWindow *This,__LONG32 *AutoShow);
    794       HRESULT (WINAPI *put_WindowState)(IVideoWindow *This,__LONG32 WindowState);
    795       HRESULT (WINAPI *get_WindowState)(IVideoWindow *This,__LONG32 *WindowState);
    796       HRESULT (WINAPI *put_BackgroundPalette)(IVideoWindow *This,__LONG32 BackgroundPalette);
    797       HRESULT (WINAPI *get_BackgroundPalette)(IVideoWindow *This,__LONG32 *pBackgroundPalette);
    798       HRESULT (WINAPI *put_Visible)(IVideoWindow *This,__LONG32 Visible);
    799       HRESULT (WINAPI *get_Visible)(IVideoWindow *This,__LONG32 *pVisible);
    800       HRESULT (WINAPI *put_Left)(IVideoWindow *This,__LONG32 Left);
    801       HRESULT (WINAPI *get_Left)(IVideoWindow *This,__LONG32 *pLeft);
    802       HRESULT (WINAPI *put_Width)(IVideoWindow *This,__LONG32 Width);
    803       HRESULT (WINAPI *get_Width)(IVideoWindow *This,__LONG32 *pWidth);
    804       HRESULT (WINAPI *put_Top)(IVideoWindow *This,__LONG32 Top);
    805       HRESULT (WINAPI *get_Top)(IVideoWindow *This,__LONG32 *pTop);
    806       HRESULT (WINAPI *put_Height)(IVideoWindow *This,__LONG32 Height);
    807       HRESULT (WINAPI *get_Height)(IVideoWindow *This,__LONG32 *pHeight);
    808       HRESULT (WINAPI *put_Owner)(IVideoWindow *This,OAHWND Owner);
    809       HRESULT (WINAPI *get_Owner)(IVideoWindow *This,OAHWND *Owner);
    810       HRESULT (WINAPI *put_MessageDrain)(IVideoWindow *This,OAHWND Drain);
    811       HRESULT (WINAPI *get_MessageDrain)(IVideoWindow *This,OAHWND *Drain);
    812       HRESULT (WINAPI *get_BorderColor)(IVideoWindow *This,__LONG32 *Color);
    813       HRESULT (WINAPI *put_BorderColor)(IVideoWindow *This,__LONG32 Color);
    814       HRESULT (WINAPI *get_FullScreenMode)(IVideoWindow *This,__LONG32 *FullScreenMode);
    815       HRESULT (WINAPI *put_FullScreenMode)(IVideoWindow *This,__LONG32 FullScreenMode);
    816       HRESULT (WINAPI *SetWindowForeground)(IVideoWindow *This,__LONG32 Focus);
    817       HRESULT (WINAPI *NotifyOwnerMessage)(IVideoWindow *This,OAHWND hwnd,__LONG32 uMsg,LONG_PTR wParam,LONG_PTR lParam);
    818       HRESULT (WINAPI *SetWindowPosition)(IVideoWindow *This,__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height);
    819       HRESULT (WINAPI *GetWindowPosition)(IVideoWindow *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
    820       HRESULT (WINAPI *GetMinIdealImageSize)(IVideoWindow *This,__LONG32 *pWidth,__LONG32 *pHeight);
    821       HRESULT (WINAPI *GetMaxIdealImageSize)(IVideoWindow *This,__LONG32 *pWidth,__LONG32 *pHeight);
    822       HRESULT (WINAPI *GetRestorePosition)(IVideoWindow *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
    823       HRESULT (WINAPI *HideCursor)(IVideoWindow *This,__LONG32 HideCursor);
    824       HRESULT (WINAPI *IsCursorHidden)(IVideoWindow *This,__LONG32 *CursorHidden);
    825     END_INTERFACE
    826   } IVideoWindowVtbl;
    827   struct IVideoWindow {
    828     CONST_VTBL struct IVideoWindowVtbl *lpVtbl;
    829   };
    830 #ifdef COBJMACROS
    831 #define IVideoWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    832 #define IVideoWindow_AddRef(This) (This)->lpVtbl->AddRef(This)
    833 #define IVideoWindow_Release(This) (This)->lpVtbl->Release(This)
    834 #define IVideoWindow_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
    835 #define IVideoWindow_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
    836 #define IVideoWindow_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
    837 #define IVideoWindow_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
    838 #define IVideoWindow_put_Caption(This,strCaption) (This)->lpVtbl->put_Caption(This,strCaption)
    839 #define IVideoWindow_get_Caption(This,strCaption) (This)->lpVtbl->get_Caption(This,strCaption)
    840 #define IVideoWindow_put_WindowStyle(This,WindowStyle) (This)->lpVtbl->put_WindowStyle(This,WindowStyle)
    841 #define IVideoWindow_get_WindowStyle(This,WindowStyle) (This)->lpVtbl->get_WindowStyle(This,WindowStyle)
    842 #define IVideoWindow_put_WindowStyleEx(This,WindowStyleEx) (This)->lpVtbl->put_WindowStyleEx(This,WindowStyleEx)
    843 #define IVideoWindow_get_WindowStyleEx(This,WindowStyleEx) (This)->lpVtbl->get_WindowStyleEx(This,WindowStyleEx)
    844 #define IVideoWindow_put_AutoShow(This,AutoShow) (This)->lpVtbl->put_AutoShow(This,AutoShow)
    845 #define IVideoWindow_get_AutoShow(This,AutoShow) (This)->lpVtbl->get_AutoShow(This,AutoShow)
    846 #define IVideoWindow_put_WindowState(This,WindowState) (This)->lpVtbl->put_WindowState(This,WindowState)
    847 #define IVideoWindow_get_WindowState(This,WindowState) (This)->lpVtbl->get_WindowState(This,WindowState)
    848 #define IVideoWindow_put_BackgroundPalette(This,BackgroundPalette) (This)->lpVtbl->put_BackgroundPalette(This,BackgroundPalette)
    849 #define IVideoWindow_get_BackgroundPalette(This,pBackgroundPalette) (This)->lpVtbl->get_BackgroundPalette(This,pBackgroundPalette)
    850 #define IVideoWindow_put_Visible(This,Visible) (This)->lpVtbl->put_Visible(This,Visible)
    851 #define IVideoWindow_get_Visible(This,pVisible) (This)->lpVtbl->get_Visible(This,pVisible)
    852 #define IVideoWindow_put_Left(This,Left) (This)->lpVtbl->put_Left(This,Left)
    853 #define IVideoWindow_get_Left(This,pLeft) (This)->lpVtbl->get_Left(This,pLeft)
    854 #define IVideoWindow_put_Width(This,Width) (This)->lpVtbl->put_Width(This,Width)
    855 #define IVideoWindow_get_Width(This,pWidth) (This)->lpVtbl->get_Width(This,pWidth)
    856 #define IVideoWindow_put_Top(This,Top) (This)->lpVtbl->put_Top(This,Top)
    857 #define IVideoWindow_get_Top(This,pTop) (This)->lpVtbl->get_Top(This,pTop)
    858 #define IVideoWindow_put_Height(This,Height) (This)->lpVtbl->put_Height(This,Height)
    859 #define IVideoWindow_get_Height(This,pHeight) (This)->lpVtbl->get_Height(This,pHeight)
    860 #define IVideoWindow_put_Owner(This,Owner) (This)->lpVtbl->put_Owner(This,Owner)
    861 #define IVideoWindow_get_Owner(This,Owner) (This)->lpVtbl->get_Owner(This,Owner)
    862 #define IVideoWindow_put_MessageDrain(This,Drain) (This)->lpVtbl->put_MessageDrain(This,Drain)
    863 #define IVideoWindow_get_MessageDrain(This,Drain) (This)->lpVtbl->get_MessageDrain(This,Drain)
    864 #define IVideoWindow_get_BorderColor(This,Color) (This)->lpVtbl->get_BorderColor(This,Color)
    865 #define IVideoWindow_put_BorderColor(This,Color) (This)->lpVtbl->put_BorderColor(This,Color)
    866 #define IVideoWindow_get_FullScreenMode(This,FullScreenMode) (This)->lpVtbl->get_FullScreenMode(This,FullScreenMode)
    867 #define IVideoWindow_put_FullScreenMode(This,FullScreenMode) (This)->lpVtbl->put_FullScreenMode(This,FullScreenMode)
    868 #define IVideoWindow_SetWindowForeground(This,Focus) (This)->lpVtbl->SetWindowForeground(This,Focus)
    869 #define IVideoWindow_NotifyOwnerMessage(This,hwnd,uMsg,wParam,lParam) (This)->lpVtbl->NotifyOwnerMessage(This,hwnd,uMsg,wParam,lParam)
    870 #define IVideoWindow_SetWindowPosition(This,Left,Top,Width,Height) (This)->lpVtbl->SetWindowPosition(This,Left,Top,Width,Height)
    871 #define IVideoWindow_GetWindowPosition(This,pLeft,pTop,pWidth,pHeight) (This)->lpVtbl->GetWindowPosition(This,pLeft,pTop,pWidth,pHeight)
    872 #define IVideoWindow_GetMinIdealImageSize(This,pWidth,pHeight) (This)->lpVtbl->GetMinIdealImageSize(This,pWidth,pHeight)
    873 #define IVideoWindow_GetMaxIdealImageSize(This,pWidth,pHeight) (This)->lpVtbl->GetMaxIdealImageSize(This,pWidth,pHeight)
    874 #define IVideoWindow_GetRestorePosition(This,pLeft,pTop,pWidth,pHeight) (This)->lpVtbl->GetRestorePosition(This,pLeft,pTop,pWidth,pHeight)
    875 #define IVideoWindow_HideCursor(This,HideCursor) (This)->lpVtbl->HideCursor(This,HideCursor)
    876 #define IVideoWindow_IsCursorHidden(This,CursorHidden) (This)->lpVtbl->IsCursorHidden(This,CursorHidden)
    877 #endif
    878 #endif
    879   HRESULT WINAPI IVideoWindow_put_Caption_Proxy(IVideoWindow *This,BSTR strCaption);
    880   void __RPC_STUB IVideoWindow_put_Caption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    881   HRESULT WINAPI IVideoWindow_get_Caption_Proxy(IVideoWindow *This,BSTR *strCaption);
    882   void __RPC_STUB IVideoWindow_get_Caption_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    883   HRESULT WINAPI IVideoWindow_put_WindowStyle_Proxy(IVideoWindow *This,__LONG32 WindowStyle);
    884   void __RPC_STUB IVideoWindow_put_WindowStyle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    885   HRESULT WINAPI IVideoWindow_get_WindowStyle_Proxy(IVideoWindow *This,__LONG32 *WindowStyle);
    886   void __RPC_STUB IVideoWindow_get_WindowStyle_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    887   HRESULT WINAPI IVideoWindow_put_WindowStyleEx_Proxy(IVideoWindow *This,__LONG32 WindowStyleEx);
    888   void __RPC_STUB IVideoWindow_put_WindowStyleEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    889   HRESULT WINAPI IVideoWindow_get_WindowStyleEx_Proxy(IVideoWindow *This,__LONG32 *WindowStyleEx);
    890   void __RPC_STUB IVideoWindow_get_WindowStyleEx_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    891   HRESULT WINAPI IVideoWindow_put_AutoShow_Proxy(IVideoWindow *This,__LONG32 AutoShow);
    892   void __RPC_STUB IVideoWindow_put_AutoShow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    893   HRESULT WINAPI IVideoWindow_get_AutoShow_Proxy(IVideoWindow *This,__LONG32 *AutoShow);
    894   void __RPC_STUB IVideoWindow_get_AutoShow_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    895   HRESULT WINAPI IVideoWindow_put_WindowState_Proxy(IVideoWindow *This,__LONG32 WindowState);
    896   void __RPC_STUB IVideoWindow_put_WindowState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    897   HRESULT WINAPI IVideoWindow_get_WindowState_Proxy(IVideoWindow *This,__LONG32 *WindowState);
    898   void __RPC_STUB IVideoWindow_get_WindowState_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    899   HRESULT WINAPI IVideoWindow_put_BackgroundPalette_Proxy(IVideoWindow *This,__LONG32 BackgroundPalette);
    900   void __RPC_STUB IVideoWindow_put_BackgroundPalette_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    901   HRESULT WINAPI IVideoWindow_get_BackgroundPalette_Proxy(IVideoWindow *This,__LONG32 *pBackgroundPalette);
    902   void __RPC_STUB IVideoWindow_get_BackgroundPalette_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    903   HRESULT WINAPI IVideoWindow_put_Visible_Proxy(IVideoWindow *This,__LONG32 Visible);
    904   void __RPC_STUB IVideoWindow_put_Visible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    905   HRESULT WINAPI IVideoWindow_get_Visible_Proxy(IVideoWindow *This,__LONG32 *pVisible);
    906   void __RPC_STUB IVideoWindow_get_Visible_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    907   HRESULT WINAPI IVideoWindow_put_Left_Proxy(IVideoWindow *This,__LONG32 Left);
    908   void __RPC_STUB IVideoWindow_put_Left_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    909   HRESULT WINAPI IVideoWindow_get_Left_Proxy(IVideoWindow *This,__LONG32 *pLeft);
    910   void __RPC_STUB IVideoWindow_get_Left_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    911   HRESULT WINAPI IVideoWindow_put_Width_Proxy(IVideoWindow *This,__LONG32 Width);
    912   void __RPC_STUB IVideoWindow_put_Width_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    913   HRESULT WINAPI IVideoWindow_get_Width_Proxy(IVideoWindow *This,__LONG32 *pWidth);
    914   void __RPC_STUB IVideoWindow_get_Width_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    915   HRESULT WINAPI IVideoWindow_put_Top_Proxy(IVideoWindow *This,__LONG32 Top);
    916   void __RPC_STUB IVideoWindow_put_Top_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    917   HRESULT WINAPI IVideoWindow_get_Top_Proxy(IVideoWindow *This,__LONG32 *pTop);
    918   void __RPC_STUB IVideoWindow_get_Top_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    919   HRESULT WINAPI IVideoWindow_put_Height_Proxy(IVideoWindow *This,__LONG32 Height);
    920   void __RPC_STUB IVideoWindow_put_Height_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    921   HRESULT WINAPI IVideoWindow_get_Height_Proxy(IVideoWindow *This,__LONG32 *pHeight);
    922   void __RPC_STUB IVideoWindow_get_Height_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    923   HRESULT WINAPI IVideoWindow_put_Owner_Proxy(IVideoWindow *This,OAHWND Owner);
    924   void __RPC_STUB IVideoWindow_put_Owner_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    925   HRESULT WINAPI IVideoWindow_get_Owner_Proxy(IVideoWindow *This,OAHWND *Owner);
    926   void __RPC_STUB IVideoWindow_get_Owner_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    927   HRESULT WINAPI IVideoWindow_put_MessageDrain_Proxy(IVideoWindow *This,OAHWND Drain);
    928   void __RPC_STUB IVideoWindow_put_MessageDrain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    929   HRESULT WINAPI IVideoWindow_get_MessageDrain_Proxy(IVideoWindow *This,OAHWND *Drain);
    930   void __RPC_STUB IVideoWindow_get_MessageDrain_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    931   HRESULT WINAPI IVideoWindow_get_BorderColor_Proxy(IVideoWindow *This,__LONG32 *Color);
    932   void __RPC_STUB IVideoWindow_get_BorderColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    933   HRESULT WINAPI IVideoWindow_put_BorderColor_Proxy(IVideoWindow *This,__LONG32 Color);
    934   void __RPC_STUB IVideoWindow_put_BorderColor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    935   HRESULT WINAPI IVideoWindow_get_FullScreenMode_Proxy(IVideoWindow *This,__LONG32 *FullScreenMode);
    936   void __RPC_STUB IVideoWindow_get_FullScreenMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    937   HRESULT WINAPI IVideoWindow_put_FullScreenMode_Proxy(IVideoWindow *This,__LONG32 FullScreenMode);
    938   void __RPC_STUB IVideoWindow_put_FullScreenMode_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    939   HRESULT WINAPI IVideoWindow_SetWindowForeground_Proxy(IVideoWindow *This,__LONG32 Focus);
    940   void __RPC_STUB IVideoWindow_SetWindowForeground_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    941   HRESULT WINAPI IVideoWindow_NotifyOwnerMessage_Proxy(IVideoWindow *This,OAHWND hwnd,__LONG32 uMsg,LONG_PTR wParam,LONG_PTR lParam);
    942   void __RPC_STUB IVideoWindow_NotifyOwnerMessage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    943   HRESULT WINAPI IVideoWindow_SetWindowPosition_Proxy(IVideoWindow *This,__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height);
    944   void __RPC_STUB IVideoWindow_SetWindowPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    945   HRESULT WINAPI IVideoWindow_GetWindowPosition_Proxy(IVideoWindow *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
    946   void __RPC_STUB IVideoWindow_GetWindowPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    947   HRESULT WINAPI IVideoWindow_GetMinIdealImageSize_Proxy(IVideoWindow *This,__LONG32 *pWidth,__LONG32 *pHeight);
    948   void __RPC_STUB IVideoWindow_GetMinIdealImageSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    949   HRESULT WINAPI IVideoWindow_GetMaxIdealImageSize_Proxy(IVideoWindow *This,__LONG32 *pWidth,__LONG32 *pHeight);
    950   void __RPC_STUB IVideoWindow_GetMaxIdealImageSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    951   HRESULT WINAPI IVideoWindow_GetRestorePosition_Proxy(IVideoWindow *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
    952   void __RPC_STUB IVideoWindow_GetRestorePosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    953   HRESULT WINAPI IVideoWindow_HideCursor_Proxy(IVideoWindow *This,__LONG32 HideCursor);
    954   void __RPC_STUB IVideoWindow_HideCursor_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    955   HRESULT WINAPI IVideoWindow_IsCursorHidden_Proxy(IVideoWindow *This,__LONG32 *CursorHidden);
    956   void __RPC_STUB IVideoWindow_IsCursorHidden_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
    957 #endif
    958 
    959 #ifndef __IBasicVideo_INTERFACE_DEFINED__
    960 #define __IBasicVideo_INTERFACE_DEFINED__
    961   DEFINE_GUID(IID_IBasicVideo,0x56a868b5,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
    962 #if defined(__cplusplus) && !defined(CINTERFACE)
    963   struct IBasicVideo : public IDispatch {
    964   public:
    965     virtual HRESULT WINAPI get_AvgTimePerFrame(REFTIME *pAvgTimePerFrame) = 0;
    966     virtual HRESULT WINAPI get_BitRate(__LONG32 *pBitRate) = 0;
    967     virtual HRESULT WINAPI get_BitErrorRate(__LONG32 *pBitErrorRate) = 0;
    968     virtual HRESULT WINAPI get_VideoWidth(__LONG32 *pVideoWidth) = 0;
    969     virtual HRESULT WINAPI get_VideoHeight(__LONG32 *pVideoHeight) = 0;
    970     virtual HRESULT WINAPI put_SourceLeft(__LONG32 SourceLeft) = 0;
    971     virtual HRESULT WINAPI get_SourceLeft(__LONG32 *pSourceLeft) = 0;
    972     virtual HRESULT WINAPI put_SourceWidth(__LONG32 SourceWidth) = 0;
    973     virtual HRESULT WINAPI get_SourceWidth(__LONG32 *pSourceWidth) = 0;
    974     virtual HRESULT WINAPI put_SourceTop(__LONG32 SourceTop) = 0;
    975     virtual HRESULT WINAPI get_SourceTop(__LONG32 *pSourceTop) = 0;
    976     virtual HRESULT WINAPI put_SourceHeight(__LONG32 SourceHeight) = 0;
    977     virtual HRESULT WINAPI get_SourceHeight(__LONG32 *pSourceHeight) = 0;
    978     virtual HRESULT WINAPI put_DestinationLeft(__LONG32 DestinationLeft) = 0;
    979     virtual HRESULT WINAPI get_DestinationLeft(__LONG32 *pDestinationLeft) = 0;
    980     virtual HRESULT WINAPI put_DestinationWidth(__LONG32 DestinationWidth) = 0;
    981     virtual HRESULT WINAPI get_DestinationWidth(__LONG32 *pDestinationWidth) = 0;
    982     virtual HRESULT WINAPI put_DestinationTop(__LONG32 DestinationTop) = 0;
    983     virtual HRESULT WINAPI get_DestinationTop(__LONG32 *pDestinationTop) = 0;
    984     virtual HRESULT WINAPI put_DestinationHeight(__LONG32 DestinationHeight) = 0;
    985     virtual HRESULT WINAPI get_DestinationHeight(__LONG32 *pDestinationHeight) = 0;
    986     virtual HRESULT WINAPI SetSourcePosition(__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height) = 0;
    987     virtual HRESULT WINAPI GetSourcePosition(__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight) = 0;
    988     virtual HRESULT WINAPI SetDefaultSourcePosition(void) = 0;
    989     virtual HRESULT WINAPI SetDestinationPosition(__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height) = 0;
    990     virtual HRESULT WINAPI GetDestinationPosition(__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight) = 0;
    991     virtual HRESULT WINAPI SetDefaultDestinationPosition(void) = 0;
    992     virtual HRESULT WINAPI GetVideoSize(__LONG32 *pWidth,__LONG32 *pHeight) = 0;
    993     virtual HRESULT WINAPI GetVideoPaletteEntries(__LONG32 StartIndex,__LONG32 Entries,__LONG32 *pRetrieved,__LONG32 *pPalette) = 0;
    994     virtual HRESULT WINAPI GetCurrentImage(__LONG32 *pBufferSize,__LONG32 *pDIBImage) = 0;
    995     virtual HRESULT WINAPI IsUsingDefaultSource(void) = 0;
    996     virtual HRESULT WINAPI IsUsingDefaultDestination(void) = 0;
    997   };
    998 #else
    999   typedef struct IBasicVideoVtbl {
   1000     BEGIN_INTERFACE
   1001       HRESULT (WINAPI *QueryInterface)(IBasicVideo *This,REFIID riid,void **ppvObject);
   1002       ULONG (WINAPI *AddRef)(IBasicVideo *This);
   1003       ULONG (WINAPI *Release)(IBasicVideo *This);
   1004       HRESULT (WINAPI *GetTypeInfoCount)(IBasicVideo *This,UINT *pctinfo);
   1005       HRESULT (WINAPI *GetTypeInfo)(IBasicVideo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
   1006       HRESULT (WINAPI *GetIDsOfNames)(IBasicVideo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
   1007       HRESULT (WINAPI *Invoke)(IBasicVideo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
   1008       HRESULT (WINAPI *get_AvgTimePerFrame)(IBasicVideo *This,REFTIME *pAvgTimePerFrame);
   1009       HRESULT (WINAPI *get_BitRate)(IBasicVideo *This,__LONG32 *pBitRate);
   1010       HRESULT (WINAPI *get_BitErrorRate)(IBasicVideo *This,__LONG32 *pBitErrorRate);
   1011       HRESULT (WINAPI *get_VideoWidth)(IBasicVideo *This,__LONG32 *pVideoWidth);
   1012       HRESULT (WINAPI *get_VideoHeight)(IBasicVideo *This,__LONG32 *pVideoHeight);
   1013       HRESULT (WINAPI *put_SourceLeft)(IBasicVideo *This,__LONG32 SourceLeft);
   1014       HRESULT (WINAPI *get_SourceLeft)(IBasicVideo *This,__LONG32 *pSourceLeft);
   1015       HRESULT (WINAPI *put_SourceWidth)(IBasicVideo *This,__LONG32 SourceWidth);
   1016       HRESULT (WINAPI *get_SourceWidth)(IBasicVideo *This,__LONG32 *pSourceWidth);
   1017       HRESULT (WINAPI *put_SourceTop)(IBasicVideo *This,__LONG32 SourceTop);
   1018       HRESULT (WINAPI *get_SourceTop)(IBasicVideo *This,__LONG32 *pSourceTop);
   1019       HRESULT (WINAPI *put_SourceHeight)(IBasicVideo *This,__LONG32 SourceHeight);
   1020       HRESULT (WINAPI *get_SourceHeight)(IBasicVideo *This,__LONG32 *pSourceHeight);
   1021       HRESULT (WINAPI *put_DestinationLeft)(IBasicVideo *This,__LONG32 DestinationLeft);
   1022       HRESULT (WINAPI *get_DestinationLeft)(IBasicVideo *This,__LONG32 *pDestinationLeft);
   1023       HRESULT (WINAPI *put_DestinationWidth)(IBasicVideo *This,__LONG32 DestinationWidth);
   1024       HRESULT (WINAPI *get_DestinationWidth)(IBasicVideo *This,__LONG32 *pDestinationWidth);
   1025       HRESULT (WINAPI *put_DestinationTop)(IBasicVideo *This,__LONG32 DestinationTop);
   1026       HRESULT (WINAPI *get_DestinationTop)(IBasicVideo *This,__LONG32 *pDestinationTop);
   1027       HRESULT (WINAPI *put_DestinationHeight)(IBasicVideo *This,__LONG32 DestinationHeight);
   1028       HRESULT (WINAPI *get_DestinationHeight)(IBasicVideo *This,__LONG32 *pDestinationHeight);
   1029       HRESULT (WINAPI *SetSourcePosition)(IBasicVideo *This,__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height);
   1030       HRESULT (WINAPI *GetSourcePosition)(IBasicVideo *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
   1031       HRESULT (WINAPI *SetDefaultSourcePosition)(IBasicVideo *This);
   1032       HRESULT (WINAPI *SetDestinationPosition)(IBasicVideo *This,__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height);
   1033       HRESULT (WINAPI *GetDestinationPosition)(IBasicVideo *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
   1034       HRESULT (WINAPI *SetDefaultDestinationPosition)(IBasicVideo *This);
   1035       HRESULT (WINAPI *GetVideoSize)(IBasicVideo *This,__LONG32 *pWidth,__LONG32 *pHeight);
   1036       HRESULT (WINAPI *GetVideoPaletteEntries)(IBasicVideo *This,__LONG32 StartIndex,__LONG32 Entries,__LONG32 *pRetrieved,__LONG32 *pPalette);
   1037       HRESULT (WINAPI *GetCurrentImage)(IBasicVideo *This,__LONG32 *pBufferSize,__LONG32 *pDIBImage);
   1038       HRESULT (WINAPI *IsUsingDefaultSource)(IBasicVideo *This);
   1039       HRESULT (WINAPI *IsUsingDefaultDestination)(IBasicVideo *This);
   1040     END_INTERFACE
   1041   } IBasicVideoVtbl;
   1042   struct IBasicVideo {
   1043     CONST_VTBL struct IBasicVideoVtbl *lpVtbl;
   1044   };
   1045 #ifdef COBJMACROS
   1046 #define IBasicVideo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1047 #define IBasicVideo_AddRef(This) (This)->lpVtbl->AddRef(This)
   1048 #define IBasicVideo_Release(This) (This)->lpVtbl->Release(This)
   1049 #define IBasicVideo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
   1050 #define IBasicVideo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
   1051 #define IBasicVideo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
   1052 #define IBasicVideo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
   1053 #define IBasicVideo_get_AvgTimePerFrame(This,pAvgTimePerFrame) (This)->lpVtbl->get_AvgTimePerFrame(This,pAvgTimePerFrame)
   1054 #define IBasicVideo_get_BitRate(This,pBitRate) (This)->lpVtbl->get_BitRate(This,pBitRate)
   1055 #define IBasicVideo_get_BitErrorRate(This,pBitErrorRate) (This)->lpVtbl->get_BitErrorRate(This,pBitErrorRate)
   1056 #define IBasicVideo_get_VideoWidth(This,pVideoWidth) (This)->lpVtbl->get_VideoWidth(This,pVideoWidth)
   1057 #define IBasicVideo_get_VideoHeight(This,pVideoHeight) (This)->lpVtbl->get_VideoHeight(This,pVideoHeight)
   1058 #define IBasicVideo_put_SourceLeft(This,SourceLeft) (This)->lpVtbl->put_SourceLeft(This,SourceLeft)
   1059 #define IBasicVideo_get_SourceLeft(This,pSourceLeft) (This)->lpVtbl->get_SourceLeft(This,pSourceLeft)
   1060 #define IBasicVideo_put_SourceWidth(This,SourceWidth) (This)->lpVtbl->put_SourceWidth(This,SourceWidth)
   1061 #define IBasicVideo_get_SourceWidth(This,pSourceWidth) (This)->lpVtbl->get_SourceWidth(This,pSourceWidth)
   1062 #define IBasicVideo_put_SourceTop(This,SourceTop) (This)->lpVtbl->put_SourceTop(This,SourceTop)
   1063 #define IBasicVideo_get_SourceTop(This,pSourceTop) (This)->lpVtbl->get_SourceTop(This,pSourceTop)
   1064 #define IBasicVideo_put_SourceHeight(This,SourceHeight) (This)->lpVtbl->put_SourceHeight(This,SourceHeight)
   1065 #define IBasicVideo_get_SourceHeight(This,pSourceHeight) (This)->lpVtbl->get_SourceHeight(This,pSourceHeight)
   1066 #define IBasicVideo_put_DestinationLeft(This,DestinationLeft) (This)->lpVtbl->put_DestinationLeft(This,DestinationLeft)
   1067 #define IBasicVideo_get_DestinationLeft(This,pDestinationLeft) (This)->lpVtbl->get_DestinationLeft(This,pDestinationLeft)
   1068 #define IBasicVideo_put_DestinationWidth(This,DestinationWidth) (This)->lpVtbl->put_DestinationWidth(This,DestinationWidth)
   1069 #define IBasicVideo_get_DestinationWidth(This,pDestinationWidth) (This)->lpVtbl->get_DestinationWidth(This,pDestinationWidth)
   1070 #define IBasicVideo_put_DestinationTop(This,DestinationTop) (This)->lpVtbl->put_DestinationTop(This,DestinationTop)
   1071 #define IBasicVideo_get_DestinationTop(This,pDestinationTop) (This)->lpVtbl->get_DestinationTop(This,pDestinationTop)
   1072 #define IBasicVideo_put_DestinationHeight(This,DestinationHeight) (This)->lpVtbl->put_DestinationHeight(This,DestinationHeight)
   1073 #define IBasicVideo_get_DestinationHeight(This,pDestinationHeight) (This)->lpVtbl->get_DestinationHeight(This,pDestinationHeight)
   1074 #define IBasicVideo_SetSourcePosition(This,Left,Top,Width,Height) (This)->lpVtbl->SetSourcePosition(This,Left,Top,Width,Height)
   1075 #define IBasicVideo_GetSourcePosition(This,pLeft,pTop,pWidth,pHeight) (This)->lpVtbl->GetSourcePosition(This,pLeft,pTop,pWidth,pHeight)
   1076 #define IBasicVideo_SetDefaultSourcePosition(This) (This)->lpVtbl->SetDefaultSourcePosition(This)
   1077 #define IBasicVideo_SetDestinationPosition(This,Left,Top,Width,Height) (This)->lpVtbl->SetDestinationPosition(This,Left,Top,Width,Height)
   1078 #define IBasicVideo_GetDestinationPosition(This,pLeft,pTop,pWidth,pHeight) (This)->lpVtbl->GetDestinationPosition(This,pLeft,pTop,pWidth,pHeight)
   1079 #define IBasicVideo_SetDefaultDestinationPosition(This) (This)->lpVtbl->SetDefaultDestinationPosition(This)
   1080 #define IBasicVideo_GetVideoSize(This,pWidth,pHeight) (This)->lpVtbl->GetVideoSize(This,pWidth,pHeight)
   1081 #define IBasicVideo_GetVideoPaletteEntries(This,StartIndex,Entries,pRetrieved,pPalette) (This)->lpVtbl->GetVideoPaletteEntries(This,StartIndex,Entries,pRetrieved,pPalette)
   1082 #define IBasicVideo_GetCurrentImage(This,pBufferSize,pDIBImage) (This)->lpVtbl->GetCurrentImage(This,pBufferSize,pDIBImage)
   1083 #define IBasicVideo_IsUsingDefaultSource(This) (This)->lpVtbl->IsUsingDefaultSource(This)
   1084 #define IBasicVideo_IsUsingDefaultDestination(This) (This)->lpVtbl->IsUsingDefaultDestination(This)
   1085 #endif
   1086 #endif
   1087   HRESULT WINAPI IBasicVideo_get_AvgTimePerFrame_Proxy(IBasicVideo *This,REFTIME *pAvgTimePerFrame);
   1088   void __RPC_STUB IBasicVideo_get_AvgTimePerFrame_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1089   HRESULT WINAPI IBasicVideo_get_BitRate_Proxy(IBasicVideo *This,__LONG32 *pBitRate);
   1090   void __RPC_STUB IBasicVideo_get_BitRate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1091   HRESULT WINAPI IBasicVideo_get_BitErrorRate_Proxy(IBasicVideo *This,__LONG32 *pBitErrorRate);
   1092   void __RPC_STUB IBasicVideo_get_BitErrorRate_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1093   HRESULT WINAPI IBasicVideo_get_VideoWidth_Proxy(IBasicVideo *This,__LONG32 *pVideoWidth);
   1094   void __RPC_STUB IBasicVideo_get_VideoWidth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1095   HRESULT WINAPI IBasicVideo_get_VideoHeight_Proxy(IBasicVideo *This,__LONG32 *pVideoHeight);
   1096   void __RPC_STUB IBasicVideo_get_VideoHeight_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1097   HRESULT WINAPI IBasicVideo_put_SourceLeft_Proxy(IBasicVideo *This,__LONG32 SourceLeft);
   1098   void __RPC_STUB IBasicVideo_put_SourceLeft_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1099   HRESULT WINAPI IBasicVideo_get_SourceLeft_Proxy(IBasicVideo *This,__LONG32 *pSourceLeft);
   1100   void __RPC_STUB IBasicVideo_get_SourceLeft_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1101   HRESULT WINAPI IBasicVideo_put_SourceWidth_Proxy(IBasicVideo *This,__LONG32 SourceWidth);
   1102   void __RPC_STUB IBasicVideo_put_SourceWidth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1103   HRESULT WINAPI IBasicVideo_get_SourceWidth_Proxy(IBasicVideo *This,__LONG32 *pSourceWidth);
   1104   void __RPC_STUB IBasicVideo_get_SourceWidth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1105   HRESULT WINAPI IBasicVideo_put_SourceTop_Proxy(IBasicVideo *This,__LONG32 SourceTop);
   1106   void __RPC_STUB IBasicVideo_put_SourceTop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1107   HRESULT WINAPI IBasicVideo_get_SourceTop_Proxy(IBasicVideo *This,__LONG32 *pSourceTop);
   1108   void __RPC_STUB IBasicVideo_get_SourceTop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1109   HRESULT WINAPI IBasicVideo_put_SourceHeight_Proxy(IBasicVideo *This,__LONG32 SourceHeight);
   1110   void __RPC_STUB IBasicVideo_put_SourceHeight_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1111   HRESULT WINAPI IBasicVideo_get_SourceHeight_Proxy(IBasicVideo *This,__LONG32 *pSourceHeight);
   1112   void __RPC_STUB IBasicVideo_get_SourceHeight_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1113   HRESULT WINAPI IBasicVideo_put_DestinationLeft_Proxy(IBasicVideo *This,__LONG32 DestinationLeft);
   1114   void __RPC_STUB IBasicVideo_put_DestinationLeft_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1115   HRESULT WINAPI IBasicVideo_get_DestinationLeft_Proxy(IBasicVideo *This,__LONG32 *pDestinationLeft);
   1116   void __RPC_STUB IBasicVideo_get_DestinationLeft_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1117   HRESULT WINAPI IBasicVideo_put_DestinationWidth_Proxy(IBasicVideo *This,__LONG32 DestinationWidth);
   1118   void __RPC_STUB IBasicVideo_put_DestinationWidth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1119   HRESULT WINAPI IBasicVideo_get_DestinationWidth_Proxy(IBasicVideo *This,__LONG32 *pDestinationWidth);
   1120   void __RPC_STUB IBasicVideo_get_DestinationWidth_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1121   HRESULT WINAPI IBasicVideo_put_DestinationTop_Proxy(IBasicVideo *This,__LONG32 DestinationTop);
   1122   void __RPC_STUB IBasicVideo_put_DestinationTop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1123   HRESULT WINAPI IBasicVideo_get_DestinationTop_Proxy(IBasicVideo *This,__LONG32 *pDestinationTop);
   1124   void __RPC_STUB IBasicVideo_get_DestinationTop_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1125   HRESULT WINAPI IBasicVideo_put_DestinationHeight_Proxy(IBasicVideo *This,__LONG32 DestinationHeight);
   1126   void __RPC_STUB IBasicVideo_put_DestinationHeight_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1127   HRESULT WINAPI IBasicVideo_get_DestinationHeight_Proxy(IBasicVideo *This,__LONG32 *pDestinationHeight);
   1128   void __RPC_STUB IBasicVideo_get_DestinationHeight_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1129   HRESULT WINAPI IBasicVideo_SetSourcePosition_Proxy(IBasicVideo *This,__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height);
   1130   void __RPC_STUB IBasicVideo_SetSourcePosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1131   HRESULT WINAPI IBasicVideo_GetSourcePosition_Proxy(IBasicVideo *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
   1132   void __RPC_STUB IBasicVideo_GetSourcePosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1133   HRESULT WINAPI IBasicVideo_SetDefaultSourcePosition_Proxy(IBasicVideo *This);
   1134   void __RPC_STUB IBasicVideo_SetDefaultSourcePosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1135   HRESULT WINAPI IBasicVideo_SetDestinationPosition_Proxy(IBasicVideo *This,__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height);
   1136   void __RPC_STUB IBasicVideo_SetDestinationPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1137   HRESULT WINAPI IBasicVideo_GetDestinationPosition_Proxy(IBasicVideo *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
   1138   void __RPC_STUB IBasicVideo_GetDestinationPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1139   HRESULT WINAPI IBasicVideo_SetDefaultDestinationPosition_Proxy(IBasicVideo *This);
   1140   void __RPC_STUB IBasicVideo_SetDefaultDestinationPosition_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1141   HRESULT WINAPI IBasicVideo_GetVideoSize_Proxy(IBasicVideo *This,__LONG32 *pWidth,__LONG32 *pHeight);
   1142   void __RPC_STUB IBasicVideo_GetVideoSize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1143   HRESULT WINAPI IBasicVideo_GetVideoPaletteEntries_Proxy(IBasicVideo *This,__LONG32 StartIndex,__LONG32 Entries,__LONG32 *pRetrieved,__LONG32 *pPalette);
   1144   void __RPC_STUB IBasicVideo_GetVideoPaletteEntries_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1145   HRESULT WINAPI IBasicVideo_GetCurrentImage_Proxy(IBasicVideo *This,__LONG32 *pBufferSize,__LONG32 *pDIBImage);
   1146   void __RPC_STUB IBasicVideo_GetCurrentImage_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1147   HRESULT WINAPI IBasicVideo_IsUsingDefaultSource_Proxy(IBasicVideo *This);
   1148   void __RPC_STUB IBasicVideo_IsUsingDefaultSource_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1149   HRESULT WINAPI IBasicVideo_IsUsingDefaultDestination_Proxy(IBasicVideo *This);
   1150   void __RPC_STUB IBasicVideo_IsUsingDefaultDestination_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1151 #endif
   1152 
   1153 #ifndef __IBasicVideo2_INTERFACE_DEFINED__
   1154 #define __IBasicVideo2_INTERFACE_DEFINED__
   1155   DEFINE_GUID(IID_IBasicVideo2,0x329bb360,0xf6ea,0x11d1,0x90,0x38,0x00,0xa0,0xc9,0x69,0x72,0x98);
   1156 #if defined(__cplusplus) && !defined(CINTERFACE)
   1157   struct IBasicVideo2 : public IBasicVideo {
   1158   public:
   1159     virtual HRESULT WINAPI GetPreferredAspectRatio(__LONG32 *plAspectX,__LONG32 *plAspectY) = 0;
   1160   };
   1161 #else
   1162   typedef struct IBasicVideo2Vtbl {
   1163     BEGIN_INTERFACE
   1164       HRESULT (WINAPI *QueryInterface)(IBasicVideo2 *This,REFIID riid,void **ppvObject);
   1165       ULONG (WINAPI *AddRef)(IBasicVideo2 *This);
   1166       ULONG (WINAPI *Release)(IBasicVideo2 *This);
   1167       HRESULT (WINAPI *GetTypeInfoCount)(IBasicVideo2 *This,UINT *pctinfo);
   1168       HRESULT (WINAPI *GetTypeInfo)(IBasicVideo2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
   1169       HRESULT (WINAPI *GetIDsOfNames)(IBasicVideo2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
   1170       HRESULT (WINAPI *Invoke)(IBasicVideo2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
   1171       HRESULT (WINAPI *get_AvgTimePerFrame)(IBasicVideo2 *This,REFTIME *pAvgTimePerFrame);
   1172       HRESULT (WINAPI *get_BitRate)(IBasicVideo2 *This,__LONG32 *pBitRate);
   1173       HRESULT (WINAPI *get_BitErrorRate)(IBasicVideo2 *This,__LONG32 *pBitErrorRate);
   1174       HRESULT (WINAPI *get_VideoWidth)(IBasicVideo2 *This,__LONG32 *pVideoWidth);
   1175       HRESULT (WINAPI *get_VideoHeight)(IBasicVideo2 *This,__LONG32 *pVideoHeight);
   1176       HRESULT (WINAPI *put_SourceLeft)(IBasicVideo2 *This,__LONG32 SourceLeft);
   1177       HRESULT (WINAPI *get_SourceLeft)(IBasicVideo2 *This,__LONG32 *pSourceLeft);
   1178       HRESULT (WINAPI *put_SourceWidth)(IBasicVideo2 *This,__LONG32 SourceWidth);
   1179       HRESULT (WINAPI *get_SourceWidth)(IBasicVideo2 *This,__LONG32 *pSourceWidth);
   1180       HRESULT (WINAPI *put_SourceTop)(IBasicVideo2 *This,__LONG32 SourceTop);
   1181       HRESULT (WINAPI *get_SourceTop)(IBasicVideo2 *This,__LONG32 *pSourceTop);
   1182       HRESULT (WINAPI *put_SourceHeight)(IBasicVideo2 *This,__LONG32 SourceHeight);
   1183       HRESULT (WINAPI *get_SourceHeight)(IBasicVideo2 *This,__LONG32 *pSourceHeight);
   1184       HRESULT (WINAPI *put_DestinationLeft)(IBasicVideo2 *This,__LONG32 DestinationLeft);
   1185       HRESULT (WINAPI *get_DestinationLeft)(IBasicVideo2 *This,__LONG32 *pDestinationLeft);
   1186       HRESULT (WINAPI *put_DestinationWidth)(IBasicVideo2 *This,__LONG32 DestinationWidth);
   1187       HRESULT (WINAPI *get_DestinationWidth)(IBasicVideo2 *This,__LONG32 *pDestinationWidth);
   1188       HRESULT (WINAPI *put_DestinationTop)(IBasicVideo2 *This,__LONG32 DestinationTop);
   1189       HRESULT (WINAPI *get_DestinationTop)(IBasicVideo2 *This,__LONG32 *pDestinationTop);
   1190       HRESULT (WINAPI *put_DestinationHeight)(IBasicVideo2 *This,__LONG32 DestinationHeight);
   1191       HRESULT (WINAPI *get_DestinationHeight)(IBasicVideo2 *This,__LONG32 *pDestinationHeight);
   1192       HRESULT (WINAPI *SetSourcePosition)(IBasicVideo2 *This,__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height);
   1193       HRESULT (WINAPI *GetSourcePosition)(IBasicVideo2 *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
   1194       HRESULT (WINAPI *SetDefaultSourcePosition)(IBasicVideo2 *This);
   1195       HRESULT (WINAPI *SetDestinationPosition)(IBasicVideo2 *This,__LONG32 Left,__LONG32 Top,__LONG32 Width,__LONG32 Height);
   1196       HRESULT (WINAPI *GetDestinationPosition)(IBasicVideo2 *This,__LONG32 *pLeft,__LONG32 *pTop,__LONG32 *pWidth,__LONG32 *pHeight);
   1197       HRESULT (WINAPI *SetDefaultDestinationPosition)(IBasicVideo2 *This);
   1198       HRESULT (WINAPI *GetVideoSize)(IBasicVideo2 *This,__LONG32 *pWidth,__LONG32 *pHeight);
   1199       HRESULT (WINAPI *GetVideoPaletteEntries)(IBasicVideo2 *This,__LONG32 StartIndex,__LONG32 Entries,__LONG32 *pRetrieved,__LONG32 *pPalette);
   1200       HRESULT (WINAPI *GetCurrentImage)(IBasicVideo2 *This,__LONG32 *pBufferSize,__LONG32 *pDIBImage);
   1201       HRESULT (WINAPI *IsUsingDefaultSource)(IBasicVideo2 *This);
   1202       HRESULT (WINAPI *IsUsingDefaultDestination)(IBasicVideo2 *This);
   1203       HRESULT (WINAPI *GetPreferredAspectRatio)(IBasicVideo2 *This,__LONG32 *plAspectX,__LONG32 *plAspectY);
   1204     END_INTERFACE
   1205   } IBasicVideo2Vtbl;
   1206   struct IBasicVideo2 {
   1207     CONST_VTBL struct IBasicVideo2Vtbl *lpVtbl;
   1208   };
   1209 #ifdef COBJMACROS
   1210 #define IBasicVideo2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1211 #define IBasicVideo2_AddRef(This) (This)->lpVtbl->AddRef(This)
   1212 #define IBasicVideo2_Release(This) (This)->lpVtbl->Release(This)
   1213 #define IBasicVideo2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
   1214 #define IBasicVideo2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
   1215 #define IBasicVideo2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
   1216 #define IBasicVideo2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
   1217 #define IBasicVideo2_get_AvgTimePerFrame(This,pAvgTimePerFrame) (This)->lpVtbl->get_AvgTimePerFrame(This,pAvgTimePerFrame)
   1218 #define IBasicVideo2_get_BitRate(This,pBitRate) (This)->lpVtbl->get_BitRate(This,pBitRate)
   1219 #define IBasicVideo2_get_BitErrorRate(This,pBitErrorRate) (This)->lpVtbl->get_BitErrorRate(This,pBitErrorRate)
   1220 #define IBasicVideo2_get_VideoWidth(This,pVideoWidth) (This)->lpVtbl->get_VideoWidth(This,pVideoWidth)
   1221 #define IBasicVideo2_get_VideoHeight(This,pVideoHeight) (This)->lpVtbl->get_VideoHeight(This,pVideoHeight)
   1222 #define IBasicVideo2_put_SourceLeft(This,SourceLeft) (This)->lpVtbl->put_SourceLeft(This,SourceLeft)
   1223 #define IBasicVideo2_get_SourceLeft(This,pSourceLeft) (This)->lpVtbl->get_SourceLeft(This,pSourceLeft)
   1224 #define IBasicVideo2_put_SourceWidth(This,SourceWidth) (This)->lpVtbl->put_SourceWidth(This,SourceWidth)
   1225 #define IBasicVideo2_get_SourceWidth(This,pSourceWidth) (This)->lpVtbl->get_SourceWidth(This,pSourceWidth)
   1226 #define IBasicVideo2_put_SourceTop(This,SourceTop) (This)->lpVtbl->put_SourceTop(This,SourceTop)
   1227 #define IBasicVideo2_get_SourceTop(This,pSourceTop) (This)->lpVtbl->get_SourceTop(This,pSourceTop)
   1228 #define IBasicVideo2_put_SourceHeight(This,SourceHeight) (This)->lpVtbl->put_SourceHeight(This,SourceHeight)
   1229 #define IBasicVideo2_get_SourceHeight(This,pSourceHeight) (This)->lpVtbl->get_SourceHeight(This,pSourceHeight)
   1230 #define IBasicVideo2_put_DestinationLeft(This,DestinationLeft) (This)->lpVtbl->put_DestinationLeft(This,DestinationLeft)
   1231 #define IBasicVideo2_get_DestinationLeft(This,pDestinationLeft) (This)->lpVtbl->get_DestinationLeft(This,pDestinationLeft)
   1232 #define IBasicVideo2_put_DestinationWidth(This,DestinationWidth) (This)->lpVtbl->put_DestinationWidth(This,DestinationWidth)
   1233 #define IBasicVideo2_get_DestinationWidth(This,pDestinationWidth) (This)->lpVtbl->get_DestinationWidth(This,pDestinationWidth)
   1234 #define IBasicVideo2_put_DestinationTop(This,DestinationTop) (This)->lpVtbl->put_DestinationTop(This,DestinationTop)
   1235 #define IBasicVideo2_get_DestinationTop(This,pDestinationTop) (This)->lpVtbl->get_DestinationTop(This,pDestinationTop)
   1236 #define IBasicVideo2_put_DestinationHeight(This,DestinationHeight) (This)->lpVtbl->put_DestinationHeight(This,DestinationHeight)
   1237 #define IBasicVideo2_get_DestinationHeight(This,pDestinationHeight) (This)->lpVtbl->get_DestinationHeight(This,pDestinationHeight)
   1238 #define IBasicVideo2_SetSourcePosition(This,Left,Top,Width,Height) (This)->lpVtbl->SetSourcePosition(This,Left,Top,Width,Height)
   1239 #define IBasicVideo2_GetSourcePosition(This,pLeft,pTop,pWidth,pHeight) (This)->lpVtbl->GetSourcePosition(This,pLeft,pTop,pWidth,pHeight)
   1240 #define IBasicVideo2_SetDefaultSourcePosition(This) (This)->lpVtbl->SetDefaultSourcePosition(This)
   1241 #define IBasicVideo2_SetDestinationPosition(This,Left,Top,Width,Height) (This)->lpVtbl->SetDestinationPosition(This,Left,Top,Width,Height)
   1242 #define IBasicVideo2_GetDestinationPosition(This,pLeft,pTop,pWidth,pHeight) (This)->lpVtbl->GetDestinationPosition(This,pLeft,pTop,pWidth,pHeight)
   1243 #define IBasicVideo2_SetDefaultDestinationPosition(This) (This)->lpVtbl->SetDefaultDestinationPosition(This)
   1244 #define IBasicVideo2_GetVideoSize(This,pWidth,pHeight) (This)->lpVtbl->GetVideoSize(This,pWidth,pHeight)
   1245 #define IBasicVideo2_GetVideoPaletteEntries(This,StartIndex,Entries,pRetrieved,pPalette) (This)->lpVtbl->GetVideoPaletteEntries(This,StartIndex,Entries,pRetrieved,pPalette)
   1246 #define IBasicVideo2_GetCurrentImage(This,pBufferSize,pDIBImage) (This)->lpVtbl->GetCurrentImage(This,pBufferSize,pDIBImage)
   1247 #define IBasicVideo2_IsUsingDefaultSource(This) (This)->lpVtbl->IsUsingDefaultSource(This)
   1248 #define IBasicVideo2_IsUsingDefaultDestination(This) (This)->lpVtbl->IsUsingDefaultDestination(This)
   1249 #define IBasicVideo2_GetPreferredAspectRatio(This,plAspectX,plAspectY) (This)->lpVtbl->GetPreferredAspectRatio(This,plAspectX,plAspectY)
   1250 #endif
   1251 #endif
   1252   HRESULT WINAPI IBasicVideo2_GetPreferredAspectRatio_Proxy(IBasicVideo2 *This,__LONG32 *plAspectX,__LONG32 *plAspectY);
   1253   void __RPC_STUB IBasicVideo2_GetPreferredAspectRatio_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1254 #endif
   1255 
   1256 #ifndef __IDeferredCommand_INTERFACE_DEFINED__
   1257 #define __IDeferredCommand_INTERFACE_DEFINED__
   1258   DEFINE_GUID(IID_IDeferredCommand,0x56a868b8,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
   1259 #if defined(__cplusplus) && !defined(CINTERFACE)
   1260   struct IDeferredCommand : public IUnknown {
   1261   public:
   1262     virtual HRESULT WINAPI Cancel(void) = 0;
   1263     virtual HRESULT WINAPI Confidence(LONG *pConfidence) = 0;
   1264     virtual HRESULT WINAPI Postpone(REFTIME newtime) = 0;
   1265     virtual HRESULT WINAPI GetHResult(HRESULT *phrResult) = 0;
   1266   };
   1267 #else
   1268   typedef struct IDeferredCommandVtbl {
   1269     BEGIN_INTERFACE
   1270       HRESULT (WINAPI *QueryInterface)(IDeferredCommand *This,REFIID riid,void **ppvObject);
   1271       ULONG (WINAPI *AddRef)(IDeferredCommand *This);
   1272       ULONG (WINAPI *Release)(IDeferredCommand *This);
   1273       HRESULT (WINAPI *Cancel)(IDeferredCommand *This);
   1274       HRESULT (WINAPI *Confidence)(IDeferredCommand *This,LONG *pConfidence);
   1275       HRESULT (WINAPI *Postpone)(IDeferredCommand *This,REFTIME newtime);
   1276       HRESULT (WINAPI *GetHResult)(IDeferredCommand *This,HRESULT *phrResult);
   1277     END_INTERFACE
   1278   } IDeferredCommandVtbl;
   1279   struct IDeferredCommand {
   1280     CONST_VTBL struct IDeferredCommandVtbl *lpVtbl;
   1281   };
   1282 #ifdef COBJMACROS
   1283 #define IDeferredCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1284 #define IDeferredCommand_AddRef(This) (This)->lpVtbl->AddRef(This)
   1285 #define IDeferredCommand_Release(This) (This)->lpVtbl->Release(This)
   1286 #define IDeferredCommand_Cancel(This) (This)->lpVtbl->Cancel(This)
   1287 #define IDeferredCommand_Confidence(This,pConfidence) (This)->lpVtbl->Confidence(This,pConfidence)
   1288 #define IDeferredCommand_Postpone(This,newtime) (This)->lpVtbl->Postpone(This,newtime)
   1289 #define IDeferredCommand_GetHResult(This,phrResult) (This)->lpVtbl->GetHResult(This,phrResult)
   1290 #endif
   1291 #endif
   1292   HRESULT WINAPI IDeferredCommand_Cancel_Proxy(IDeferredCommand *This);
   1293   void __RPC_STUB IDeferredCommand_Cancel_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1294   HRESULT WINAPI IDeferredCommand_Confidence_Proxy(IDeferredCommand *This,LONG *pConfidence);
   1295   void __RPC_STUB IDeferredCommand_Confidence_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1296   HRESULT WINAPI IDeferredCommand_Postpone_Proxy(IDeferredCommand *This,REFTIME newtime);
   1297   void __RPC_STUB IDeferredCommand_Postpone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1298   HRESULT WINAPI IDeferredCommand_GetHResult_Proxy(IDeferredCommand *This,HRESULT *phrResult);
   1299   void __RPC_STUB IDeferredCommand_GetHResult_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1300 #endif
   1301 
   1302 #ifndef __IQueueCommand_INTERFACE_DEFINED__
   1303 #define __IQueueCommand_INTERFACE_DEFINED__
   1304   DEFINE_GUID(IID_IQueueCommand,0x56a868b7,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
   1305 #if defined(__cplusplus) && !defined(CINTERFACE)
   1306   struct IQueueCommand : public IUnknown {
   1307   public:
   1308     virtual HRESULT WINAPI InvokeAtStreamTime(IDeferredCommand **pCmd,REFTIME time,GUID *iid,__LONG32 dispidMethod,short wFlags,__LONG32 cArgs,VARIANT *pDispParams,VARIANT *pvarResult,short *puArgErr) = 0;
   1309     virtual HRESULT WINAPI InvokeAtPresentationTime(IDeferredCommand **pCmd,REFTIME time,GUID *iid,__LONG32 dispidMethod,short wFlags,__LONG32 cArgs,VARIANT *pDispParams,VARIANT *pvarResult,short *puArgErr) = 0;
   1310   };
   1311 #else
   1312   typedef struct IQueueCommandVtbl {
   1313     BEGIN_INTERFACE
   1314       HRESULT (WINAPI *QueryInterface)(IQueueCommand *This,REFIID riid,void **ppvObject);
   1315       ULONG (WINAPI *AddRef)(IQueueCommand *This);
   1316       ULONG (WINAPI *Release)(IQueueCommand *This);
   1317       HRESULT (WINAPI *InvokeAtStreamTime)(IQueueCommand *This,IDeferredCommand **pCmd,REFTIME time,GUID *iid,__LONG32 dispidMethod,short wFlags,__LONG32 cArgs,VARIANT *pDispParams,VARIANT *pvarResult,short *puArgErr);
   1318       HRESULT (WINAPI *InvokeAtPresentationTime)(IQueueCommand *This,IDeferredCommand **pCmd,REFTIME time,GUID *iid,__LONG32 dispidMethod,short wFlags,__LONG32 cArgs,VARIANT *pDispParams,VARIANT *pvarResult,short *puArgErr);
   1319     END_INTERFACE
   1320   } IQueueCommandVtbl;
   1321   struct IQueueCommand {
   1322     CONST_VTBL struct IQueueCommandVtbl *lpVtbl;
   1323   };
   1324 #ifdef COBJMACROS
   1325 #define IQueueCommand_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1326 #define IQueueCommand_AddRef(This) (This)->lpVtbl->AddRef(This)
   1327 #define IQueueCommand_Release(This) (This)->lpVtbl->Release(This)
   1328 #define IQueueCommand_InvokeAtStreamTime(This,pCmd,time,iid,dispidMethod,wFlags,cArgs,pDispParams,pvarResult,puArgErr) (This)->lpVtbl->InvokeAtStreamTime(This,pCmd,time,iid,dispidMethod,wFlags,cArgs,pDispParams,pvarResult,puArgErr)
   1329 #define IQueueCommand_InvokeAtPresentationTime(This,pCmd,time,iid,dispidMethod,wFlags,cArgs,pDispParams,pvarResult,puArgErr) (This)->lpVtbl->InvokeAtPresentationTime(This,pCmd,time,iid,dispidMethod,wFlags,cArgs,pDispParams,pvarResult,puArgErr)
   1330 #endif
   1331 #endif
   1332   HRESULT WINAPI IQueueCommand_InvokeAtStreamTime_Proxy(IQueueCommand *This,IDeferredCommand **pCmd,REFTIME time,GUID *iid,__LONG32 dispidMethod,short wFlags,__LONG32 cArgs,VARIANT *pDispParams,VARIANT *pvarResult,short *puArgErr);
   1333   void __RPC_STUB IQueueCommand_InvokeAtStreamTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1334   HRESULT WINAPI IQueueCommand_InvokeAtPresentationTime_Proxy(IQueueCommand *This,IDeferredCommand **pCmd,REFTIME time,GUID *iid,__LONG32 dispidMethod,short wFlags,__LONG32 cArgs,VARIANT *pDispParams,VARIANT *pvarResult,short *puArgErr);
   1335   void __RPC_STUB IQueueCommand_InvokeAtPresentationTime_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1336 #endif
   1337 
   1338   DEFINE_GUID(CLSID_FilgraphManager,0xe436ebb3,0x524f,0x11ce,0x9f,0x53,0x00,0x20,0xaf,0x0b,0xa7,0x70);
   1339 #ifdef __cplusplus
   1340   class FilgraphManager;
   1341 #endif
   1342 
   1343 #ifndef __IFilterInfo_INTERFACE_DEFINED__
   1344 #define __IFilterInfo_INTERFACE_DEFINED__
   1345   DEFINE_GUID(IID_IFilterInfo,0x56a868ba,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
   1346 #if defined(__cplusplus) && !defined(CINTERFACE)
   1347   struct IFilterInfo : public IDispatch {
   1348   public:
   1349     virtual HRESULT WINAPI FindPin(BSTR strPinID,IDispatch **ppUnk) = 0;
   1350     virtual HRESULT WINAPI get_Name(BSTR *strName) = 0;
   1351     virtual HRESULT WINAPI get_VendorInfo(BSTR *strVendorInfo) = 0;
   1352     virtual HRESULT WINAPI get_Filter(IUnknown **ppUnk) = 0;
   1353     virtual HRESULT WINAPI get_Pins(IDispatch **ppUnk) = 0;
   1354     virtual HRESULT WINAPI get_IsFileSource(LONG *pbIsSource) = 0;
   1355     virtual HRESULT WINAPI get_Filename(BSTR *pstrFilename) = 0;
   1356     virtual HRESULT WINAPI put_Filename(BSTR strFilename) = 0;
   1357   };
   1358 #else
   1359   typedef struct IFilterInfoVtbl {
   1360     BEGIN_INTERFACE
   1361       HRESULT (WINAPI *QueryInterface)(IFilterInfo *This,REFIID riid,void **ppvObject);
   1362       ULONG (WINAPI *AddRef)(IFilterInfo *This);
   1363       ULONG (WINAPI *Release)(IFilterInfo *This);
   1364       HRESULT (WINAPI *GetTypeInfoCount)(IFilterInfo *This,UINT *pctinfo);
   1365       HRESULT (WINAPI *GetTypeInfo)(IFilterInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
   1366       HRESULT (WINAPI *GetIDsOfNames)(IFilterInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
   1367       HRESULT (WINAPI *Invoke)(IFilterInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
   1368       HRESULT (WINAPI *FindPin)(IFilterInfo *This,BSTR strPinID,IDispatch **ppUnk);
   1369       HRESULT (WINAPI *get_Name)(IFilterInfo *This,BSTR *strName);
   1370       HRESULT (WINAPI *get_VendorInfo)(IFilterInfo *This,BSTR *strVendorInfo);
   1371       HRESULT (WINAPI *get_Filter)(IFilterInfo *This,IUnknown **ppUnk);
   1372       HRESULT (WINAPI *get_Pins)(IFilterInfo *This,IDispatch **ppUnk);
   1373       HRESULT (WINAPI *get_IsFileSource)(IFilterInfo *This,LONG *pbIsSource);
   1374       HRESULT (WINAPI *get_Filename)(IFilterInfo *This,BSTR *pstrFilename);
   1375       HRESULT (WINAPI *put_Filename)(IFilterInfo *This,BSTR strFilename);
   1376     END_INTERFACE
   1377   } IFilterInfoVtbl;
   1378   struct IFilterInfo {
   1379     CONST_VTBL struct IFilterInfoVtbl *lpVtbl;
   1380   };
   1381 #ifdef COBJMACROS
   1382 #define IFilterInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1383 #define IFilterInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
   1384 #define IFilterInfo_Release(This) (This)->lpVtbl->Release(This)
   1385 #define IFilterInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
   1386 #define IFilterInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
   1387 #define IFilterInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
   1388 #define IFilterInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
   1389 #define IFilterInfo_FindPin(This,strPinID,ppUnk) (This)->lpVtbl->FindPin(This,strPinID,ppUnk)
   1390 #define IFilterInfo_get_Name(This,strName) (This)->lpVtbl->get_Name(This,strName)
   1391 #define IFilterInfo_get_VendorInfo(This,strVendorInfo) (This)->lpVtbl->get_VendorInfo(This,strVendorInfo)
   1392 #define IFilterInfo_get_Filter(This,ppUnk) (This)->lpVtbl->get_Filter(This,ppUnk)
   1393 #define IFilterInfo_get_Pins(This,ppUnk) (This)->lpVtbl->get_Pins(This,ppUnk)
   1394 #define IFilterInfo_get_IsFileSource(This,pbIsSource) (This)->lpVtbl->get_IsFileSource(This,pbIsSource)
   1395 #define IFilterInfo_get_Filename(This,pstrFilename) (This)->lpVtbl->get_Filename(This,pstrFilename)
   1396 #define IFilterInfo_put_Filename(This,strFilename) (This)->lpVtbl->put_Filename(This,strFilename)
   1397 #endif
   1398 #endif
   1399   HRESULT WINAPI IFilterInfo_FindPin_Proxy(IFilterInfo *This,BSTR strPinID,IDispatch **ppUnk);
   1400   void __RPC_STUB IFilterInfo_FindPin_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1401   HRESULT WINAPI IFilterInfo_get_Name_Proxy(IFilterInfo *This,BSTR *strName);
   1402   void __RPC_STUB IFilterInfo_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1403   HRESULT WINAPI IFilterInfo_get_VendorInfo_Proxy(IFilterInfo *This,BSTR *strVendorInfo);
   1404   void __RPC_STUB IFilterInfo_get_VendorInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1405   HRESULT WINAPI IFilterInfo_get_Filter_Proxy(IFilterInfo *This,IUnknown **ppUnk);
   1406   void __RPC_STUB IFilterInfo_get_Filter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1407   HRESULT WINAPI IFilterInfo_get_Pins_Proxy(IFilterInfo *This,IDispatch **ppUnk);
   1408   void __RPC_STUB IFilterInfo_get_Pins_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1409   HRESULT WINAPI IFilterInfo_get_IsFileSource_Proxy(IFilterInfo *This,LONG *pbIsSource);
   1410   void __RPC_STUB IFilterInfo_get_IsFileSource_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1411   HRESULT WINAPI IFilterInfo_get_Filename_Proxy(IFilterInfo *This,BSTR *pstrFilename);
   1412   void __RPC_STUB IFilterInfo_get_Filename_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1413   HRESULT WINAPI IFilterInfo_put_Filename_Proxy(IFilterInfo *This,BSTR strFilename);
   1414   void __RPC_STUB IFilterInfo_put_Filename_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1415 #endif
   1416 
   1417 #ifndef __IRegFilterInfo_INTERFACE_DEFINED__
   1418 #define __IRegFilterInfo_INTERFACE_DEFINED__
   1419   DEFINE_GUID(IID_IRegFilterInfo,0x56a868bb,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
   1420 #if defined(__cplusplus) && !defined(CINTERFACE)
   1421   struct IRegFilterInfo : public IDispatch {
   1422   public:
   1423     virtual HRESULT WINAPI get_Name(BSTR *strName) = 0;
   1424     virtual HRESULT WINAPI Filter(IDispatch **ppUnk) = 0;
   1425   };
   1426 #else
   1427   typedef struct IRegFilterInfoVtbl {
   1428     BEGIN_INTERFACE
   1429       HRESULT (WINAPI *QueryInterface)(IRegFilterInfo *This,REFIID riid,void **ppvObject);
   1430       ULONG (WINAPI *AddRef)(IRegFilterInfo *This);
   1431       ULONG (WINAPI *Release)(IRegFilterInfo *This);
   1432       HRESULT (WINAPI *GetTypeInfoCount)(IRegFilterInfo *This,UINT *pctinfo);
   1433       HRESULT (WINAPI *GetTypeInfo)(IRegFilterInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
   1434       HRESULT (WINAPI *GetIDsOfNames)(IRegFilterInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
   1435       HRESULT (WINAPI *Invoke)(IRegFilterInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
   1436       HRESULT (WINAPI *get_Name)(IRegFilterInfo *This,BSTR *strName);
   1437       HRESULT (WINAPI *Filter)(IRegFilterInfo *This,IDispatch **ppUnk);
   1438     END_INTERFACE
   1439   } IRegFilterInfoVtbl;
   1440   struct IRegFilterInfo {
   1441     CONST_VTBL struct IRegFilterInfoVtbl *lpVtbl;
   1442   };
   1443 #ifdef COBJMACROS
   1444 #define IRegFilterInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1445 #define IRegFilterInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
   1446 #define IRegFilterInfo_Release(This) (This)->lpVtbl->Release(This)
   1447 #define IRegFilterInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
   1448 #define IRegFilterInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
   1449 #define IRegFilterInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
   1450 #define IRegFilterInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
   1451 #define IRegFilterInfo_get_Name(This,strName) (This)->lpVtbl->get_Name(This,strName)
   1452 #define IRegFilterInfo_Filter(This,ppUnk) (This)->lpVtbl->Filter(This,ppUnk)
   1453 #endif
   1454 #endif
   1455   HRESULT WINAPI IRegFilterInfo_get_Name_Proxy(IRegFilterInfo *This,BSTR *strName);
   1456   void __RPC_STUB IRegFilterInfo_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1457   HRESULT WINAPI IRegFilterInfo_Filter_Proxy(IRegFilterInfo *This,IDispatch **ppUnk);
   1458   void __RPC_STUB IRegFilterInfo_Filter_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1459 #endif
   1460 
   1461 #ifndef __IMediaTypeInfo_INTERFACE_DEFINED__
   1462 #define __IMediaTypeInfo_INTERFACE_DEFINED__
   1463   DEFINE_GUID(IID_IMediaTypeInfo,0x56a868bc,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
   1464 #if defined(__cplusplus) && !defined(CINTERFACE)
   1465   struct IMediaTypeInfo : public IDispatch {
   1466   public:
   1467     virtual HRESULT WINAPI get_Type(BSTR *strType) = 0;
   1468     virtual HRESULT WINAPI get_Subtype(BSTR *strType) = 0;
   1469   };
   1470 #else
   1471   typedef struct IMediaTypeInfoVtbl {
   1472     BEGIN_INTERFACE
   1473       HRESULT (WINAPI *QueryInterface)(IMediaTypeInfo *This,REFIID riid,void **ppvObject);
   1474       ULONG (WINAPI *AddRef)(IMediaTypeInfo *This);
   1475       ULONG (WINAPI *Release)(IMediaTypeInfo *This);
   1476       HRESULT (WINAPI *GetTypeInfoCount)(IMediaTypeInfo *This,UINT *pctinfo);
   1477       HRESULT (WINAPI *GetTypeInfo)(IMediaTypeInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
   1478       HRESULT (WINAPI *GetIDsOfNames)(IMediaTypeInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
   1479       HRESULT (WINAPI *Invoke)(IMediaTypeInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
   1480       HRESULT (WINAPI *get_Type)(IMediaTypeInfo *This,BSTR *strType);
   1481       HRESULT (WINAPI *get_Subtype)(IMediaTypeInfo *This,BSTR *strType);
   1482     END_INTERFACE
   1483   } IMediaTypeInfoVtbl;
   1484   struct IMediaTypeInfo {
   1485     CONST_VTBL struct IMediaTypeInfoVtbl *lpVtbl;
   1486   };
   1487 #ifdef COBJMACROS
   1488 #define IMediaTypeInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1489 #define IMediaTypeInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
   1490 #define IMediaTypeInfo_Release(This) (This)->lpVtbl->Release(This)
   1491 #define IMediaTypeInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
   1492 #define IMediaTypeInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
   1493 #define IMediaTypeInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
   1494 #define IMediaTypeInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
   1495 #define IMediaTypeInfo_get_Type(This,strType) (This)->lpVtbl->get_Type(This,strType)
   1496 #define IMediaTypeInfo_get_Subtype(This,strType) (This)->lpVtbl->get_Subtype(This,strType)
   1497 #endif
   1498 #endif
   1499   HRESULT WINAPI IMediaTypeInfo_get_Type_Proxy(IMediaTypeInfo *This,BSTR *strType);
   1500   void __RPC_STUB IMediaTypeInfo_get_Type_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1501   HRESULT WINAPI IMediaTypeInfo_get_Subtype_Proxy(IMediaTypeInfo *This,BSTR *strType);
   1502   void __RPC_STUB IMediaTypeInfo_get_Subtype_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1503 #endif
   1504 
   1505 #ifndef __IPinInfo_INTERFACE_DEFINED__
   1506 #define __IPinInfo_INTERFACE_DEFINED__
   1507   DEFINE_GUID(IID_IPinInfo,0x56a868bd,0x0ad4,0x11ce,0xb0,0x3a,0x00,0x20,0xaf,0x0b,0xa7,0x70);
   1508 #if defined(__cplusplus) && !defined(CINTERFACE)
   1509   struct IPinInfo : public IDispatch {
   1510   public:
   1511     virtual HRESULT WINAPI get_Pin(IUnknown **ppUnk) = 0;
   1512     virtual HRESULT WINAPI get_ConnectedTo(IDispatch **ppUnk) = 0;
   1513     virtual HRESULT WINAPI get_ConnectionMediaType(IDispatch **ppUnk) = 0;
   1514     virtual HRESULT WINAPI get_FilterInfo(IDispatch **ppUnk) = 0;
   1515     virtual HRESULT WINAPI get_Name(BSTR *ppUnk) = 0;
   1516     virtual HRESULT WINAPI get_Direction(LONG *ppDirection) = 0;
   1517     virtual HRESULT WINAPI get_PinID(BSTR *strPinID) = 0;
   1518     virtual HRESULT WINAPI get_MediaTypes(IDispatch **ppUnk) = 0;
   1519     virtual HRESULT WINAPI Connect(IUnknown *pPin) = 0;
   1520     virtual HRESULT WINAPI ConnectDirect(IUnknown *pPin) = 0;
   1521     virtual HRESULT WINAPI ConnectWithType(IUnknown *pPin,IDispatch *pMediaType) = 0;
   1522     virtual HRESULT WINAPI Disconnect(void) = 0;
   1523     virtual HRESULT WINAPI Render(void) = 0;
   1524   };
   1525 #else
   1526   typedef struct IPinInfoVtbl {
   1527     BEGIN_INTERFACE
   1528       HRESULT (WINAPI *QueryInterface)(IPinInfo *This,REFIID riid,void **ppvObject);
   1529       ULONG (WINAPI *AddRef)(IPinInfo *This);
   1530       ULONG (WINAPI *Release)(IPinInfo *This);
   1531       HRESULT (WINAPI *GetTypeInfoCount)(IPinInfo *This,UINT *pctinfo);
   1532       HRESULT (WINAPI *GetTypeInfo)(IPinInfo *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
   1533       HRESULT (WINAPI *GetIDsOfNames)(IPinInfo *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
   1534       HRESULT (WINAPI *Invoke)(IPinInfo *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
   1535       HRESULT (WINAPI *get_Pin)(IPinInfo *This,IUnknown **ppUnk);
   1536       HRESULT (WINAPI *get_ConnectedTo)(IPinInfo *This,IDispatch **ppUnk);
   1537       HRESULT (WINAPI *get_ConnectionMediaType)(IPinInfo *This,IDispatch **ppUnk);
   1538       HRESULT (WINAPI *get_FilterInfo)(IPinInfo *This,IDispatch **ppUnk);
   1539       HRESULT (WINAPI *get_Name)(IPinInfo *This,BSTR *ppUnk);
   1540       HRESULT (WINAPI *get_Direction)(IPinInfo *This,LONG *ppDirection);
   1541       HRESULT (WINAPI *get_PinID)(IPinInfo *This,BSTR *strPinID);
   1542       HRESULT (WINAPI *get_MediaTypes)(IPinInfo *This,IDispatch **ppUnk);
   1543       HRESULT (WINAPI *Connect)(IPinInfo *This,IUnknown *pPin);
   1544       HRESULT (WINAPI *ConnectDirect)(IPinInfo *This,IUnknown *pPin);
   1545       HRESULT (WINAPI *ConnectWithType)(IPinInfo *This,IUnknown *pPin,IDispatch *pMediaType);
   1546       HRESULT (WINAPI *Disconnect)(IPinInfo *This);
   1547       HRESULT (WINAPI *Render)(IPinInfo *This);
   1548     END_INTERFACE
   1549   } IPinInfoVtbl;
   1550   struct IPinInfo {
   1551     CONST_VTBL struct IPinInfoVtbl *lpVtbl;
   1552   };
   1553 #ifdef COBJMACROS
   1554 #define IPinInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1555 #define IPinInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
   1556 #define IPinInfo_Release(This) (This)->lpVtbl->Release(This)
   1557 #define IPinInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
   1558 #define IPinInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
   1559 #define IPinInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
   1560 #define IPinInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
   1561 #define IPinInfo_get_Pin(This,ppUnk) (This)->lpVtbl->get_Pin(This,ppUnk)
   1562 #define IPinInfo_get_ConnectedTo(This,ppUnk) (This)->lpVtbl->get_ConnectedTo(This,ppUnk)
   1563 #define IPinInfo_get_ConnectionMediaType(This,ppUnk) (This)->lpVtbl->get_ConnectionMediaType(This,ppUnk)
   1564 #define IPinInfo_get_FilterInfo(This,ppUnk) (This)->lpVtbl->get_FilterInfo(This,ppUnk)
   1565 #define IPinInfo_get_Name(This,ppUnk) (This)->lpVtbl->get_Name(This,ppUnk)
   1566 #define IPinInfo_get_Direction(This,ppDirection) (This)->lpVtbl->get_Direction(This,ppDirection)
   1567 #define IPinInfo_get_PinID(This,strPinID) (This)->lpVtbl->get_PinID(This,strPinID)
   1568 #define IPinInfo_get_MediaTypes(This,ppUnk) (This)->lpVtbl->get_MediaTypes(This,ppUnk)
   1569 #define IPinInfo_Connect(This,pPin) (This)->lpVtbl->Connect(This,pPin)
   1570 #define IPinInfo_ConnectDirect(This,pPin) (This)->lpVtbl->ConnectDirect(This,pPin)
   1571 #define IPinInfo_ConnectWithType(This,pPin,pMediaType) (This)->lpVtbl->ConnectWithType(This,pPin,pMediaType)
   1572 #define IPinInfo_Disconnect(This) (This)->lpVtbl->Disconnect(This)
   1573 #define IPinInfo_Render(This) (This)->lpVtbl->Render(This)
   1574 #endif
   1575 #endif
   1576   HRESULT WINAPI IPinInfo_get_Pin_Proxy(IPinInfo *This,IUnknown **ppUnk);
   1577   void __RPC_STUB IPinInfo_get_Pin_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1578   HRESULT WINAPI IPinInfo_get_ConnectedTo_Proxy(IPinInfo *This,IDispatch **ppUnk);
   1579   void __RPC_STUB IPinInfo_get_ConnectedTo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1580   HRESULT WINAPI IPinInfo_get_ConnectionMediaType_Proxy(IPinInfo *This,IDispatch **ppUnk);
   1581   void __RPC_STUB IPinInfo_get_ConnectionMediaType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1582   HRESULT WINAPI IPinInfo_get_FilterInfo_Proxy(IPinInfo *This,IDispatch **ppUnk);
   1583   void __RPC_STUB IPinInfo_get_FilterInfo_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1584   HRESULT WINAPI IPinInfo_get_Name_Proxy(IPinInfo *This,BSTR *ppUnk);
   1585   void __RPC_STUB IPinInfo_get_Name_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1586   HRESULT WINAPI IPinInfo_get_Direction_Proxy(IPinInfo *This,LONG *ppDirection);
   1587   void __RPC_STUB IPinInfo_get_Direction_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1588   HRESULT WINAPI IPinInfo_get_PinID_Proxy(IPinInfo *This,BSTR *strPinID);
   1589   void __RPC_STUB IPinInfo_get_PinID_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1590   HRESULT WINAPI IPinInfo_get_MediaTypes_Proxy(IPinInfo *This,IDispatch **ppUnk);
   1591   void __RPC_STUB IPinInfo_get_MediaTypes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1592   HRESULT WINAPI IPinInfo_Connect_Proxy(IPinInfo *This,IUnknown *pPin);
   1593   void __RPC_STUB IPinInfo_Connect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1594   HRESULT WINAPI IPinInfo_ConnectDirect_Proxy(IPinInfo *This,IUnknown *pPin);
   1595   void __RPC_STUB IPinInfo_ConnectDirect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1596   HRESULT WINAPI IPinInfo_ConnectWithType_Proxy(IPinInfo *This,IUnknown *pPin,IDispatch *pMediaType);
   1597   void __RPC_STUB IPinInfo_ConnectWithType_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1598   HRESULT WINAPI IPinInfo_Disconnect_Proxy(IPinInfo *This);
   1599   void __RPC_STUB IPinInfo_Disconnect_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1600   HRESULT WINAPI IPinInfo_Render_Proxy(IPinInfo *This);
   1601   void __RPC_STUB IPinInfo_Render_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1602 #endif
   1603 
   1604 #ifndef __IAMStats_INTERFACE_DEFINED__
   1605 #define __IAMStats_INTERFACE_DEFINED__
   1606   DEFINE_GUID(IID_IAMStats,0xbc9bcf80,0xdcd2,0x11d2,0xab,0xf6,0x00,0xa0,0xc9,0x05,0xf3,0x75);
   1607 #if defined(__cplusplus) && !defined(CINTERFACE)
   1608   struct IAMStats : public IDispatch {
   1609   public:
   1610     virtual HRESULT WINAPI Reset(void) = 0;
   1611     virtual HRESULT WINAPI get_Count(LONG *plCount) = 0;
   1612     virtual HRESULT WINAPI GetValueByIndex(__LONG32 lIndex,BSTR *szName,__LONG32 *lCount,double *dLast,double *dAverage,double *dStdDev,double *dMin,double *dMax) = 0;
   1613     virtual HRESULT WINAPI GetValueByName(BSTR szName,__LONG32 *lIndex,__LONG32 *lCount,double *dLast,double *dAverage,double *dStdDev,double *dMin,double *dMax) = 0;
   1614     virtual HRESULT WINAPI GetIndex(BSTR szName,__LONG32 lCreate,__LONG32 *plIndex) = 0;
   1615     virtual HRESULT WINAPI AddValue(__LONG32 lIndex,double dValue) = 0;
   1616   };
   1617 #else
   1618   typedef struct IAMStatsVtbl {
   1619     BEGIN_INTERFACE
   1620       HRESULT (WINAPI *QueryInterface)(IAMStats *This,REFIID riid,void **ppvObject);
   1621       ULONG (WINAPI *AddRef)(IAMStats *This);
   1622       ULONG (WINAPI *Release)(IAMStats *This);
   1623       HRESULT (WINAPI *GetTypeInfoCount)(IAMStats *This,UINT *pctinfo);
   1624       HRESULT (WINAPI *GetTypeInfo)(IAMStats *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
   1625       HRESULT (WINAPI *GetIDsOfNames)(IAMStats *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
   1626       HRESULT (WINAPI *Invoke)(IAMStats *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
   1627       HRESULT (WINAPI *Reset)(IAMStats *This);
   1628       HRESULT (WINAPI *get_Count)(IAMStats *This,LONG *plCount);
   1629       HRESULT (WINAPI *GetValueByIndex)(IAMStats *This,__LONG32 lIndex,BSTR *szName,__LONG32 *lCount,double *dLast,double *dAverage,double *dStdDev,double *dMin,double *dMax);
   1630       HRESULT (WINAPI *GetValueByName)(IAMStats *This,BSTR szName,__LONG32 *lIndex,__LONG32 *lCount,double *dLast,double *dAverage,double *dStdDev,double *dMin,double *dMax);
   1631       HRESULT (WINAPI *GetIndex)(IAMStats *This,BSTR szName,__LONG32 lCreate,__LONG32 *plIndex);
   1632       HRESULT (WINAPI *AddValue)(IAMStats *This,__LONG32 lIndex,double dValue);
   1633     END_INTERFACE
   1634   } IAMStatsVtbl;
   1635   struct IAMStats {
   1636     CONST_VTBL struct IAMStatsVtbl *lpVtbl;
   1637   };
   1638 #ifdef COBJMACROS
   1639 #define IAMStats_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
   1640 #define IAMStats_AddRef(This) (This)->lpVtbl->AddRef(This)
   1641 #define IAMStats_Release(This) (This)->lpVtbl->Release(This)
   1642 #define IAMStats_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
   1643 #define IAMStats_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
   1644 #define IAMStats_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
   1645 #define IAMStats_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
   1646 #define IAMStats_Reset(This) (This)->lpVtbl->Reset(This)
   1647 #define IAMStats_get_Count(This,plCount) (This)->lpVtbl->get_Count(This,plCount)
   1648 #define IAMStats_GetValueByIndex(This,lIndex,szName,lCount,dLast,dAverage,dStdDev,dMin,dMax) (This)->lpVtbl->GetValueByIndex(This,lIndex,szName,lCount,dLast,dAverage,dStdDev,dMin,dMax)
   1649 #define IAMStats_GetValueByName(This,szName,lIndex,lCount,dLast,dAverage,dStdDev,dMin,dMax) (This)->lpVtbl->GetValueByName(This,szName,lIndex,lCount,dLast,dAverage,dStdDev,dMin,dMax)
   1650 #define IAMStats_GetIndex(This,szName,lCreate,plIndex) (This)->lpVtbl->GetIndex(This,szName,lCreate,plIndex)
   1651 #define IAMStats_AddValue(This,lIndex,dValue) (This)->lpVtbl->AddValue(This,lIndex,dValue)
   1652 #endif
   1653 #endif
   1654 
   1655   HRESULT WINAPI IAMStats_Reset_Proxy(IAMStats *This);
   1656   void __RPC_STUB IAMStats_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1657   HRESULT WINAPI IAMStats_get_Count_Proxy(IAMStats *This,LONG *plCount);
   1658   void __RPC_STUB IAMStats_get_Count_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1659   HRESULT WINAPI IAMStats_GetValueByIndex_Proxy(IAMStats *This,__LONG32 lIndex,BSTR *szName,__LONG32 *lCount,double *dLast,double *dAverage,double *dStdDev,double *dMin,double *dMax);
   1660   void __RPC_STUB IAMStats_GetValueByIndex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1661   HRESULT WINAPI IAMStats_GetValueByName_Proxy(IAMStats *This,BSTR szName,__LONG32 *lIndex,__LONG32 *lCount,double *dLast,double *dAverage,double *dStdDev,double *dMin,double *dMax);
   1662   void __RPC_STUB IAMStats_GetValueByName_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1663   HRESULT WINAPI IAMStats_GetIndex_Proxy(IAMStats *This,BSTR szName,__LONG32 lCreate,__LONG32 *plIndex);
   1664   void __RPC_STUB IAMStats_GetIndex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1665   HRESULT WINAPI IAMStats_AddValue_Proxy(IAMStats *This,__LONG32 lIndex,double dValue);
   1666   void __RPC_STUB IAMStats_AddValue_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
   1667 #endif
   1668 /* Begin additional prototypes for all interfaces */
   1669 
   1670 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
   1671 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
   1672 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
   1673 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
   1674 
   1675 /* End additional prototypes */
   1676 
   1677 #ifdef __cplusplus
   1678 }
   1679 #endif
   1680 
   1681 #endif /* __control_h__ */
   1682