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