msvidctl.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:64k
源码类别:

模拟服务器

开发平台:

C/C++

  1. #pragma warning( disable: 4049 )  /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3.  /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for msvidctl.idl:
  5.     Oicf, W1, Zp8, env=Win32 (32b run)
  6.     protocol : dce , ms_ext, c_ext, robust
  7.     error checks: allocation ref bounds_check enum stub_data 
  8.     VC __declspec() decoration level: 
  9.          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10.          DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING(  )
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __msvidctl_h__
  27. #define __msvidctl_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */ 
  32. #ifndef __IMSVidCtl_FWD_DEFINED__
  33. #define __IMSVidCtl_FWD_DEFINED__
  34. typedef interface IMSVidCtl IMSVidCtl;
  35. #endif  /* __IMSVidCtl_FWD_DEFINED__ */
  36. #ifndef __IMSEventBinder_FWD_DEFINED__
  37. #define __IMSEventBinder_FWD_DEFINED__
  38. typedef interface IMSEventBinder IMSEventBinder;
  39. #endif  /* __IMSEventBinder_FWD_DEFINED__ */
  40. #ifndef ___IMSVidCtlEvents_FWD_DEFINED__
  41. #define ___IMSVidCtlEvents_FWD_DEFINED__
  42. typedef interface _IMSVidCtlEvents _IMSVidCtlEvents;
  43. #endif  /* ___IMSVidCtlEvents_FWD_DEFINED__ */
  44. #ifndef __MSVidAnalogTunerDevice_FWD_DEFINED__
  45. #define __MSVidAnalogTunerDevice_FWD_DEFINED__
  46. #ifdef __cplusplus
  47. typedef class MSVidAnalogTunerDevice MSVidAnalogTunerDevice;
  48. #else
  49. typedef struct MSVidAnalogTunerDevice MSVidAnalogTunerDevice;
  50. #endif /* __cplusplus */
  51. #endif  /* __MSVidAnalogTunerDevice_FWD_DEFINED__ */
  52. #ifndef __MSVidBDATunerDevice_FWD_DEFINED__
  53. #define __MSVidBDATunerDevice_FWD_DEFINED__
  54. #ifdef __cplusplus
  55. typedef class MSVidBDATunerDevice MSVidBDATunerDevice;
  56. #else
  57. typedef struct MSVidBDATunerDevice MSVidBDATunerDevice;
  58. #endif /* __cplusplus */
  59. #endif  /* __MSVidBDATunerDevice_FWD_DEFINED__ */
  60. #ifndef __MSVidFilePlaybackDevice_FWD_DEFINED__
  61. #define __MSVidFilePlaybackDevice_FWD_DEFINED__
  62. #ifdef __cplusplus
  63. typedef class MSVidFilePlaybackDevice MSVidFilePlaybackDevice;
  64. #else
  65. typedef struct MSVidFilePlaybackDevice MSVidFilePlaybackDevice;
  66. #endif /* __cplusplus */
  67. #endif  /* __MSVidFilePlaybackDevice_FWD_DEFINED__ */
  68. #ifndef __MSVidWebDVD_FWD_DEFINED__
  69. #define __MSVidWebDVD_FWD_DEFINED__
  70. #ifdef __cplusplus
  71. typedef class MSVidWebDVD MSVidWebDVD;
  72. #else
  73. typedef struct MSVidWebDVD MSVidWebDVD;
  74. #endif /* __cplusplus */
  75. #endif  /* __MSVidWebDVD_FWD_DEFINED__ */
  76. #ifndef __MSVidWebDVDAdm_FWD_DEFINED__
  77. #define __MSVidWebDVDAdm_FWD_DEFINED__
  78. #ifdef __cplusplus
  79. typedef class MSVidWebDVDAdm MSVidWebDVDAdm;
  80. #else
  81. typedef struct MSVidWebDVDAdm MSVidWebDVDAdm;
  82. #endif /* __cplusplus */
  83. #endif  /* __MSVidWebDVDAdm_FWD_DEFINED__ */
  84. #ifndef __MSVidVideoRenderer_FWD_DEFINED__
  85. #define __MSVidVideoRenderer_FWD_DEFINED__
  86. #ifdef __cplusplus
  87. typedef class MSVidVideoRenderer MSVidVideoRenderer;
  88. #else
  89. typedef struct MSVidVideoRenderer MSVidVideoRenderer;
  90. #endif /* __cplusplus */
  91. #endif  /* __MSVidVideoRenderer_FWD_DEFINED__ */
  92. #ifndef __MSVidAudioRenderer_FWD_DEFINED__
  93. #define __MSVidAudioRenderer_FWD_DEFINED__
  94. #ifdef __cplusplus
  95. typedef class MSVidAudioRenderer MSVidAudioRenderer;
  96. #else
  97. typedef struct MSVidAudioRenderer MSVidAudioRenderer;
  98. #endif /* __cplusplus */
  99. #endif  /* __MSVidAudioRenderer_FWD_DEFINED__ */
  100. #ifndef __MSVidDataServices_FWD_DEFINED__
  101. #define __MSVidDataServices_FWD_DEFINED__
  102. #ifdef __cplusplus
  103. typedef class MSVidDataServices MSVidDataServices;
  104. #else
  105. typedef struct MSVidDataServices MSVidDataServices;
  106. #endif /* __cplusplus */
  107. #endif  /* __MSVidDataServices_FWD_DEFINED__ */
  108. #ifndef __MSVidClosedCaptioning_FWD_DEFINED__
  109. #define __MSVidClosedCaptioning_FWD_DEFINED__
  110. #ifdef __cplusplus
  111. typedef class MSVidClosedCaptioning MSVidClosedCaptioning;
  112. #else
  113. typedef struct MSVidClosedCaptioning MSVidClosedCaptioning;
  114. #endif /* __cplusplus */
  115. #endif  /* __MSVidClosedCaptioning_FWD_DEFINED__ */
  116. #ifndef __MSVidTVEGSeg_FWD_DEFINED__
  117. #define __MSVidTVEGSeg_FWD_DEFINED__
  118. #ifdef __cplusplus
  119. typedef class MSVidTVEGSeg MSVidTVEGSeg;
  120. #else
  121. typedef struct MSVidTVEGSeg MSVidTVEGSeg;
  122. #endif /* __cplusplus */
  123. #endif  /* __MSVidTVEGSeg_FWD_DEFINED__ */
  124. #ifndef __MSVidCAGSeg_FWD_DEFINED__
  125. #define __MSVidCAGSeg_FWD_DEFINED__
  126. #ifdef __cplusplus
  127. typedef class MSVidCAGSeg MSVidCAGSeg;
  128. #else
  129. typedef struct MSVidCAGSeg MSVidCAGSeg;
  130. #endif /* __cplusplus */
  131. #endif  /* __MSVidCAGSeg_FWD_DEFINED__ */
  132. #ifndef __MSVidCtl_FWD_DEFINED__
  133. #define __MSVidCtl_FWD_DEFINED__
  134. #ifdef __cplusplus
  135. typedef class MSVidCtl MSVidCtl;
  136. #else
  137. typedef struct MSVidCtl MSVidCtl;
  138. #endif /* __cplusplus */
  139. #endif  /* __MSVidCtl_FWD_DEFINED__ */
  140. #ifndef __MSVidInputDevices_FWD_DEFINED__
  141. #define __MSVidInputDevices_FWD_DEFINED__
  142. #ifdef __cplusplus
  143. typedef class MSVidInputDevices MSVidInputDevices;
  144. #else
  145. typedef struct MSVidInputDevices MSVidInputDevices;
  146. #endif /* __cplusplus */
  147. #endif  /* __MSVidInputDevices_FWD_DEFINED__ */
  148. #ifndef __MSVidOutputDevices_FWD_DEFINED__
  149. #define __MSVidOutputDevices_FWD_DEFINED__
  150. #ifdef __cplusplus
  151. typedef class MSVidOutputDevices MSVidOutputDevices;
  152. #else
  153. typedef struct MSVidOutputDevices MSVidOutputDevices;
  154. #endif /* __cplusplus */
  155. #endif  /* __MSVidOutputDevices_FWD_DEFINED__ */
  156. #ifndef __MSVidVideoRendererDevices_FWD_DEFINED__
  157. #define __MSVidVideoRendererDevices_FWD_DEFINED__
  158. #ifdef __cplusplus
  159. typedef class MSVidVideoRendererDevices MSVidVideoRendererDevices;
  160. #else
  161. typedef struct MSVidVideoRendererDevices MSVidVideoRendererDevices;
  162. #endif /* __cplusplus */
  163. #endif  /* __MSVidVideoRendererDevices_FWD_DEFINED__ */
  164. #ifndef __MSVidAudioRendererDevices_FWD_DEFINED__
  165. #define __MSVidAudioRendererDevices_FWD_DEFINED__
  166. #ifdef __cplusplus
  167. typedef class MSVidAudioRendererDevices MSVidAudioRendererDevices;
  168. #else
  169. typedef struct MSVidAudioRendererDevices MSVidAudioRendererDevices;
  170. #endif /* __cplusplus */
  171. #endif  /* __MSVidAudioRendererDevices_FWD_DEFINED__ */
  172. #ifndef __MSVidFeatures_FWD_DEFINED__
  173. #define __MSVidFeatures_FWD_DEFINED__
  174. #ifdef __cplusplus
  175. typedef class MSVidFeatures MSVidFeatures;
  176. #else
  177. typedef struct MSVidFeatures MSVidFeatures;
  178. #endif /* __cplusplus */
  179. #endif  /* __MSVidFeatures_FWD_DEFINED__ */
  180. #ifndef __MSVidGenericComposite_FWD_DEFINED__
  181. #define __MSVidGenericComposite_FWD_DEFINED__
  182. #ifdef __cplusplus
  183. typedef class MSVidGenericComposite MSVidGenericComposite;
  184. #else
  185. typedef struct MSVidGenericComposite MSVidGenericComposite;
  186. #endif /* __cplusplus */
  187. #endif  /* __MSVidGenericComposite_FWD_DEFINED__ */
  188. #ifndef __MSVidAnalogCaptureToOverlayMixer_FWD_DEFINED__
  189. #define __MSVidAnalogCaptureToOverlayMixer_FWD_DEFINED__
  190. #ifdef __cplusplus
  191. typedef class MSVidAnalogCaptureToOverlayMixer MSVidAnalogCaptureToOverlayMixer;
  192. #else
  193. typedef struct MSVidAnalogCaptureToOverlayMixer MSVidAnalogCaptureToOverlayMixer;
  194. #endif /* __cplusplus */
  195. #endif  /* __MSVidAnalogCaptureToOverlayMixer_FWD_DEFINED__ */
  196. #ifndef __MSVidAnalogCaptureToDataServices_FWD_DEFINED__
  197. #define __MSVidAnalogCaptureToDataServices_FWD_DEFINED__
  198. #ifdef __cplusplus
  199. typedef class MSVidAnalogCaptureToDataServices MSVidAnalogCaptureToDataServices;
  200. #else
  201. typedef struct MSVidAnalogCaptureToDataServices MSVidAnalogCaptureToDataServices;
  202. #endif /* __cplusplus */
  203. #endif  /* __MSVidAnalogCaptureToDataServices_FWD_DEFINED__ */
  204. #ifndef __MSVidWebDVDToVideoRenderer_FWD_DEFINED__
  205. #define __MSVidWebDVDToVideoRenderer_FWD_DEFINED__
  206. #ifdef __cplusplus
  207. typedef class MSVidWebDVDToVideoRenderer MSVidWebDVDToVideoRenderer;
  208. #else
  209. typedef struct MSVidWebDVDToVideoRenderer MSVidWebDVDToVideoRenderer;
  210. #endif /* __cplusplus */
  211. #endif  /* __MSVidWebDVDToVideoRenderer_FWD_DEFINED__ */
  212. #ifndef __MSVidMPEG2DecoderToClosedCaptioning_FWD_DEFINED__
  213. #define __MSVidMPEG2DecoderToClosedCaptioning_FWD_DEFINED__
  214. #ifdef __cplusplus
  215. typedef class MSVidMPEG2DecoderToClosedCaptioning MSVidMPEG2DecoderToClosedCaptioning;
  216. #else
  217. typedef struct MSVidMPEG2DecoderToClosedCaptioning MSVidMPEG2DecoderToClosedCaptioning;
  218. #endif /* __cplusplus */
  219. #endif  /* __MSVidMPEG2DecoderToClosedCaptioning_FWD_DEFINED__ */
  220. #ifndef __MSVidRenderFactory_FWD_DEFINED__
  221. #define __MSVidRenderFactory_FWD_DEFINED__
  222. #ifdef __cplusplus
  223. typedef class MSVidRenderFactory MSVidRenderFactory;
  224. #else
  225. typedef struct MSVidRenderFactory MSVidRenderFactory;
  226. #endif /* __cplusplus */
  227. #endif  /* __MSVidRenderFactory_FWD_DEFINED__ */
  228. #ifndef __MSEventBinder_FWD_DEFINED__
  229. #define __MSEventBinder_FWD_DEFINED__
  230. #ifdef __cplusplus
  231. typedef class MSEventBinder MSEventBinder;
  232. #else
  233. typedef struct MSEventBinder MSEventBinder;
  234. #endif /* __cplusplus */
  235. #endif  /* __MSEventBinder_FWD_DEFINED__ */
  236. #ifndef __MSVidRect_FWD_DEFINED__
  237. #define __MSVidRect_FWD_DEFINED__
  238. #ifdef __cplusplus
  239. typedef class MSVidRect MSVidRect;
  240. #else
  241. typedef struct MSVidRect MSVidRect;
  242. #endif /* __cplusplus */
  243. #endif  /* __MSVidRect_FWD_DEFINED__ */
  244. #ifndef __MSVidDevice_FWD_DEFINED__
  245. #define __MSVidDevice_FWD_DEFINED__
  246. #ifdef __cplusplus
  247. typedef class MSVidDevice MSVidDevice;
  248. #else
  249. typedef struct MSVidDevice MSVidDevice;
  250. #endif /* __cplusplus */
  251. #endif  /* __MSVidDevice_FWD_DEFINED__ */
  252. #ifndef __MSVidInputDevice_FWD_DEFINED__
  253. #define __MSVidInputDevice_FWD_DEFINED__
  254. #ifdef __cplusplus
  255. typedef class MSVidInputDevice MSVidInputDevice;
  256. #else
  257. typedef struct MSVidInputDevice MSVidInputDevice;
  258. #endif /* __cplusplus */
  259. #endif  /* __MSVidInputDevice_FWD_DEFINED__ */
  260. #ifndef __MSVidVideoInputDevice_FWD_DEFINED__
  261. #define __MSVidVideoInputDevice_FWD_DEFINED__
  262. #ifdef __cplusplus
  263. typedef class MSVidVideoInputDevice MSVidVideoInputDevice;
  264. #else
  265. typedef struct MSVidVideoInputDevice MSVidVideoInputDevice;
  266. #endif /* __cplusplus */
  267. #endif  /* __MSVidVideoInputDevice_FWD_DEFINED__ */
  268. #ifndef __MSVidVideoPlaybackDevice_FWD_DEFINED__
  269. #define __MSVidVideoPlaybackDevice_FWD_DEFINED__
  270. #ifdef __cplusplus
  271. typedef class MSVidVideoPlaybackDevice MSVidVideoPlaybackDevice;
  272. #else
  273. typedef struct MSVidVideoPlaybackDevice MSVidVideoPlaybackDevice;
  274. #endif /* __cplusplus */
  275. #endif  /* __MSVidVideoPlaybackDevice_FWD_DEFINED__ */
  276. #ifndef __MSVidFeature_FWD_DEFINED__
  277. #define __MSVidFeature_FWD_DEFINED__
  278. #ifdef __cplusplus
  279. typedef class MSVidFeature MSVidFeature;
  280. #else
  281. typedef struct MSVidFeature MSVidFeature;
  282. #endif /* __cplusplus */
  283. #endif  /* __MSVidFeature_FWD_DEFINED__ */
  284. #ifndef __MSVidOutput_FWD_DEFINED__
  285. #define __MSVidOutput_FWD_DEFINED__
  286. #ifdef __cplusplus
  287. typedef class MSVidOutput MSVidOutput;
  288. #else
  289. typedef struct MSVidOutput MSVidOutput;
  290. #endif /* __cplusplus */
  291. #endif  /* __MSVidOutput_FWD_DEFINED__ */
  292. /* header files for imported files */
  293. #include "mshtml.h"
  294. #include "mstve.h"
  295. #include "mstvca.h"
  296. #include "segment.h"
  297. #ifdef __cplusplus
  298. extern "C"{
  299. #endif 
  300. void * __RPC_USER MIDL_user_allocate(size_t);
  301. void __RPC_USER MIDL_user_free( void * ); 
  302. /* interface __MIDL_itf_msvidctl_0000 */
  303. /* [local] */ 
  304. //+-------------------------------------------------------------------------
  305. //
  306. //  Microsoft Windows
  307. //  Copyright (C) Microsoft Corporation, 1999-2000.
  308. //
  309. //--------------------------------------------------------------------------
  310. #pragma once
  311. typedef /* [public] */ 
  312. enum __MIDL___MIDL_itf_msvidctl_0000_0001
  313.     { dispidInputs = 0,
  314. dispidOutputs = dispidInputs + 1,
  315. dispid_Inputs = dispidOutputs + 1,
  316. dispid_Outputs = dispid_Inputs + 1,
  317. dispidVideoRenderers = dispid_Outputs + 1,
  318. dispidAudioRenderers = dispidVideoRenderers + 1,
  319. dispidFeatures = dispidAudioRenderers + 1,
  320. dispidInput = dispidFeatures + 1,
  321. dispidOutput = dispidInput + 1,
  322. dispidVideoRenderer = dispidOutput + 1,
  323. dispidAudioRenderer = dispidVideoRenderer + 1,
  324. dispidSelectedFeatures = dispidAudioRenderer + 1,
  325. dispidView = dispidSelectedFeatures + 1,
  326. dispidBuild = dispidView + 1,
  327. dispidPause = dispidBuild + 1,
  328. dispidRun = dispidPause + 1,
  329. dispidStop = dispidRun + 1,
  330. dispidDecompose = dispidStop + 1,
  331. dispidDisplaySize = dispidDecompose + 1,
  332. dispidMaintainAspectRatio = dispidDisplaySize + 1,
  333. dispidColorKey = dispidMaintainAspectRatio + 1,
  334. dispidStateChange = dispidColorKey + 1,
  335. dispidgetState = dispidStateChange + 1,
  336. dispidunbind = dispidgetState + 1,
  337. dispidbind = dispidunbind + 1,
  338. dispidDisableVideo = dispidbind + 1,
  339. dispidDisableAudio = dispidDisableVideo + 1,
  340. dispidViewNext = dispidDisableAudio + 1
  341.     }  MSViddispidList;
  342. typedef /* [public][public][public] */ 
  343. enum __MIDL___MIDL_itf_msvidctl_0000_0002
  344.     { dslDefaultSize = 0,
  345. dslSourceSize = 0,
  346. dslHalfSourceSize = dslSourceSize + 1,
  347. dslDoubleSourceSize = dslHalfSourceSize + 1,
  348. dslFullScreen = dslDoubleSourceSize + 1,
  349. dslHalfScreen = dslFullScreen + 1,
  350. dslQuarterScreen = dslHalfScreen + 1,
  351. dslSixteenthScreen = dslQuarterScreen + 1
  352.     }  DisplaySizeList;
  353. typedef /* [public][public][public][public] */ 
  354. enum __MIDL___MIDL_itf_msvidctl_0000_0003
  355.     { STATE_UNBUILT = -1,
  356. STATE_STOP = STATE_UNBUILT + 1,
  357. STATE_PAUSE = STATE_STOP + 1,
  358. STATE_PLAY = STATE_PAUSE + 1
  359.     }  MSVidCtlStateList;
  360. extern RPC_IF_HANDLE __MIDL_itf_msvidctl_0000_v0_0_c_ifspec;
  361. extern RPC_IF_HANDLE __MIDL_itf_msvidctl_0000_v0_0_s_ifspec;
  362. #ifndef __IMSVidCtl_INTERFACE_DEFINED__
  363. #define __IMSVidCtl_INTERFACE_DEFINED__
  364. /* interface IMSVidCtl */
  365. /* [unique][helpstring][nonextensible][hidden][dual][uuid][object] */ 
  366. EXTERN_C const IID IID_IMSVidCtl;
  367. #if defined(__cplusplus) && !defined(CINTERFACE)
  368.     
  369.     MIDL_INTERFACE("B0EDF162-910A-11D2-B632-00C04F79498E")
  370.     IMSVidCtl : public IDispatch
  371.     {
  372.     public:
  373.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_AutoSize( 
  374.             /* [retval][out] */ VARIANT_BOOL *pbool) = 0;
  375.         
  376.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_AutoSize( 
  377.             /* [in] */ VARIANT_BOOL vbool) = 0;
  378.         
  379.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_BackColor( 
  380.             /* [retval][out] */ OLE_COLOR *backcolor) = 0;
  381.         
  382.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_BackColor( 
  383.             /* [in] */ OLE_COLOR backcolor) = 0;
  384.         
  385.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Enabled( 
  386.             /* [retval][out] */ VARIANT_BOOL *pbool) = 0;
  387.         
  388.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_Enabled( 
  389.             /* [in] */ VARIANT_BOOL vbool) = 0;
  390.         
  391.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_TabStop( 
  392.             /* [retval][out] */ VARIANT_BOOL *pbool) = 0;
  393.         
  394.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_TabStop( 
  395.             /* [in] */ VARIANT_BOOL vbool) = 0;
  396.         
  397.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_Window( 
  398.             /* [retval][out] */ HWND *phwnd) = 0;
  399.         
  400.         virtual /* [id] */ HRESULT STDMETHODCALLTYPE Refresh( void) = 0;
  401.         
  402.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_DisplaySize( 
  403.             /* [retval][out] */ DisplaySizeList *CurrentValue) = 0;
  404.         
  405.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_DisplaySize( 
  406.             /* [in] */ DisplaySizeList NewValue) = 0;
  407.         
  408.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_MaintainAspectRatio( 
  409.             /* [retval][out] */ VARIANT_BOOL *CurrentValue) = 0;
  410.         
  411.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_MaintainAspectRatio( 
  412.             /* [in] */ VARIANT_BOOL NewValue) = 0;
  413.         
  414.         virtual /* [id][propget] */ HRESULT STDMETHODCALLTYPE get_ColorKey( 
  415.             /* [retval][out] */ OLE_COLOR *CurrentValue) = 0;
  416.         
  417.         virtual /* [id][propput] */ HRESULT STDMETHODCALLTYPE put_ColorKey( 
  418.             /* [in] */ OLE_COLOR NewValue) = 0;
  419.         
  420.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InputsAvailable( 
  421.             /* [in] */ BSTR CategoryGuid,
  422.             /* [retval][out] */ IMSVidInputDevices **pVal) = 0;
  423.         
  424.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OutputsAvailable( 
  425.             /* [in] */ BSTR CategoryGuid,
  426.             /* [retval][out] */ IMSVidOutputDevices **pVal) = 0;
  427.         
  428.         virtual /* [helpstring][restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__InputsAvailable( 
  429.             /* [in] */ LPCGUID CategoryGuid,
  430.             /* [retval][out] */ IMSVidInputDevices **pVal) = 0;
  431.         
  432.         virtual /* [helpstring][restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE get__OutputsAvailable( 
  433.             /* [in] */ LPCGUID CategoryGuid,
  434.             /* [retval][out] */ IMSVidOutputDevices **pVal) = 0;
  435.         
  436.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VideoRenderersAvailable( 
  437.             /* [retval][out] */ IMSVidVideoRendererDevices **pVal) = 0;
  438.         
  439.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AudioRenderersAvailable( 
  440.             /* [retval][out] */ IMSVidAudioRendererDevices **pVal) = 0;
  441.         
  442.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FeaturesAvailable( 
  443.             /* [retval][out] */ IMSVidFeatures **pVal) = 0;
  444.         
  445.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_InputActive( 
  446.             /* [retval][out] */ IMSVidInputDevice **pVal) = 0;
  447.         
  448.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_InputActive( 
  449.             /* [in] */ IMSVidInputDevice *pVal) = 0;
  450.         
  451.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_OutputsActive( 
  452.             /* [retval][out] */ IMSVidOutputDevices **pVal) = 0;
  453.         
  454.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_OutputsActive( 
  455.             /* [in] */ IMSVidOutputDevices *pVal) = 0;
  456.         
  457.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_VideoRendererActive( 
  458.             /* [retval][out] */ IMSVidVideoRenderer **pVal) = 0;
  459.         
  460.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_VideoRendererActive( 
  461.             /* [in] */ IMSVidVideoRenderer *pVal) = 0;
  462.         
  463.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_AudioRendererActive( 
  464.             /* [retval][out] */ IMSVidAudioRenderer **pVal) = 0;
  465.         
  466.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_AudioRendererActive( 
  467.             /* [in] */ IMSVidAudioRenderer *pVal) = 0;
  468.         
  469.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_FeaturesActive( 
  470.             /* [retval][out] */ IMSVidFeatures **pVal) = 0;
  471.         
  472.         virtual /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE put_FeaturesActive( 
  473.             /* [in] */ IMSVidFeatures *pVal) = 0;
  474.         
  475.         virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_State( 
  476.             /* [retval][out] */ MSVidCtlStateList *lState) = 0;
  477.         
  478.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE View( 
  479.             /* [in] */ VARIANT *v) = 0;
  480.         
  481.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Build( void) = 0;
  482.         
  483.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Pause( void) = 0;
  484.         
  485.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Run( void) = 0;
  486.         
  487.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Stop( void) = 0;
  488.         
  489.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Decompose( void) = 0;
  490.         
  491.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DisableVideo( void) = 0;
  492.         
  493.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE DisableAudio( void) = 0;
  494.         
  495.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ViewNext( 
  496.             /* [in] */ VARIANT *v) = 0;
  497.         
  498.     };
  499.     
  500. #else  /* C style interface */
  501.     typedef struct IMSVidCtlVtbl
  502.     {
  503.         BEGIN_INTERFACE
  504.         
  505.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  506.             IMSVidCtl * This,
  507.             /* [in] */ REFIID riid,
  508.             /* [iid_is][out] */ void **ppvObject);
  509.         
  510.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  511.             IMSVidCtl * This);
  512.         
  513.         ULONG ( STDMETHODCALLTYPE *Release )( 
  514.             IMSVidCtl * This);
  515.         
  516.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  517.             IMSVidCtl * This,
  518.             /* [out] */ UINT *pctinfo);
  519.         
  520.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  521.             IMSVidCtl * This,
  522.             /* [in] */ UINT iTInfo,
  523.             /* [in] */ LCID lcid,
  524.             /* [out] */ ITypeInfo **ppTInfo);
  525.         
  526.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  527.             IMSVidCtl * This,
  528.             /* [in] */ REFIID riid,
  529.             /* [size_is][in] */ LPOLESTR *rgszNames,
  530.             /* [in] */ UINT cNames,
  531.             /* [in] */ LCID lcid,
  532.             /* [size_is][out] */ DISPID *rgDispId);
  533.         
  534.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  535.             IMSVidCtl * This,
  536.             /* [in] */ DISPID dispIdMember,
  537.             /* [in] */ REFIID riid,
  538.             /* [in] */ LCID lcid,
  539.             /* [in] */ WORD wFlags,
  540.             /* [out][in] */ DISPPARAMS *pDispParams,
  541.             /* [out] */ VARIANT *pVarResult,
  542.             /* [out] */ EXCEPINFO *pExcepInfo,
  543.             /* [out] */ UINT *puArgErr);
  544.         
  545.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AutoSize )( 
  546.             IMSVidCtl * This,
  547.             /* [retval][out] */ VARIANT_BOOL *pbool);
  548.         
  549.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AutoSize )( 
  550.             IMSVidCtl * This,
  551.             /* [in] */ VARIANT_BOOL vbool);
  552.         
  553.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_BackColor )( 
  554.             IMSVidCtl * This,
  555.             /* [retval][out] */ OLE_COLOR *backcolor);
  556.         
  557.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_BackColor )( 
  558.             IMSVidCtl * This,
  559.             /* [in] */ OLE_COLOR backcolor);
  560.         
  561.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Enabled )( 
  562.             IMSVidCtl * This,
  563.             /* [retval][out] */ VARIANT_BOOL *pbool);
  564.         
  565.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Enabled )( 
  566.             IMSVidCtl * This,
  567.             /* [in] */ VARIANT_BOOL vbool);
  568.         
  569.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_TabStop )( 
  570.             IMSVidCtl * This,
  571.             /* [retval][out] */ VARIANT_BOOL *pbool);
  572.         
  573.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_TabStop )( 
  574.             IMSVidCtl * This,
  575.             /* [in] */ VARIANT_BOOL vbool);
  576.         
  577.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Window )( 
  578.             IMSVidCtl * This,
  579.             /* [retval][out] */ HWND *phwnd);
  580.         
  581.         /* [id] */ HRESULT ( STDMETHODCALLTYPE *Refresh )( 
  582.             IMSVidCtl * This);
  583.         
  584.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_DisplaySize )( 
  585.             IMSVidCtl * This,
  586.             /* [retval][out] */ DisplaySizeList *CurrentValue);
  587.         
  588.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_DisplaySize )( 
  589.             IMSVidCtl * This,
  590.             /* [in] */ DisplaySizeList NewValue);
  591.         
  592.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaintainAspectRatio )( 
  593.             IMSVidCtl * This,
  594.             /* [retval][out] */ VARIANT_BOOL *CurrentValue);
  595.         
  596.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_MaintainAspectRatio )( 
  597.             IMSVidCtl * This,
  598.             /* [in] */ VARIANT_BOOL NewValue);
  599.         
  600.         /* [id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ColorKey )( 
  601.             IMSVidCtl * This,
  602.             /* [retval][out] */ OLE_COLOR *CurrentValue);
  603.         
  604.         /* [id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_ColorKey )( 
  605.             IMSVidCtl * This,
  606.             /* [in] */ OLE_COLOR NewValue);
  607.         
  608.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InputsAvailable )( 
  609.             IMSVidCtl * This,
  610.             /* [in] */ BSTR CategoryGuid,
  611.             /* [retval][out] */ IMSVidInputDevices **pVal);
  612.         
  613.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OutputsAvailable )( 
  614.             IMSVidCtl * This,
  615.             /* [in] */ BSTR CategoryGuid,
  616.             /* [retval][out] */ IMSVidOutputDevices **pVal);
  617.         
  618.         /* [helpstring][restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__InputsAvailable )( 
  619.             IMSVidCtl * This,
  620.             /* [in] */ LPCGUID CategoryGuid,
  621.             /* [retval][out] */ IMSVidInputDevices **pVal);
  622.         
  623.         /* [helpstring][restricted][hidden][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get__OutputsAvailable )( 
  624.             IMSVidCtl * This,
  625.             /* [in] */ LPCGUID CategoryGuid,
  626.             /* [retval][out] */ IMSVidOutputDevices **pVal);
  627.         
  628.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VideoRenderersAvailable )( 
  629.             IMSVidCtl * This,
  630.             /* [retval][out] */ IMSVidVideoRendererDevices **pVal);
  631.         
  632.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioRenderersAvailable )( 
  633.             IMSVidCtl * This,
  634.             /* [retval][out] */ IMSVidAudioRendererDevices **pVal);
  635.         
  636.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FeaturesAvailable )( 
  637.             IMSVidCtl * This,
  638.             /* [retval][out] */ IMSVidFeatures **pVal);
  639.         
  640.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_InputActive )( 
  641.             IMSVidCtl * This,
  642.             /* [retval][out] */ IMSVidInputDevice **pVal);
  643.         
  644.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_InputActive )( 
  645.             IMSVidCtl * This,
  646.             /* [in] */ IMSVidInputDevice *pVal);
  647.         
  648.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_OutputsActive )( 
  649.             IMSVidCtl * This,
  650.             /* [retval][out] */ IMSVidOutputDevices **pVal);
  651.         
  652.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_OutputsActive )( 
  653.             IMSVidCtl * This,
  654.             /* [in] */ IMSVidOutputDevices *pVal);
  655.         
  656.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_VideoRendererActive )( 
  657.             IMSVidCtl * This,
  658.             /* [retval][out] */ IMSVidVideoRenderer **pVal);
  659.         
  660.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_VideoRendererActive )( 
  661.             IMSVidCtl * This,
  662.             /* [in] */ IMSVidVideoRenderer *pVal);
  663.         
  664.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_AudioRendererActive )( 
  665.             IMSVidCtl * This,
  666.             /* [retval][out] */ IMSVidAudioRenderer **pVal);
  667.         
  668.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_AudioRendererActive )( 
  669.             IMSVidCtl * This,
  670.             /* [in] */ IMSVidAudioRenderer *pVal);
  671.         
  672.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_FeaturesActive )( 
  673.             IMSVidCtl * This,
  674.             /* [retval][out] */ IMSVidFeatures **pVal);
  675.         
  676.         /* [helpstring][id][propput] */ HRESULT ( STDMETHODCALLTYPE *put_FeaturesActive )( 
  677.             IMSVidCtl * This,
  678.             /* [in] */ IMSVidFeatures *pVal);
  679.         
  680.         /* [helpstring][id][propget] */ HRESULT ( STDMETHODCALLTYPE *get_State )( 
  681.             IMSVidCtl * This,
  682.             /* [retval][out] */ MSVidCtlStateList *lState);
  683.         
  684.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *View )( 
  685.             IMSVidCtl * This,
  686.             /* [in] */ VARIANT *v);
  687.         
  688.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Build )( 
  689.             IMSVidCtl * This);
  690.         
  691.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Pause )( 
  692.             IMSVidCtl * This);
  693.         
  694.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Run )( 
  695.             IMSVidCtl * This);
  696.         
  697.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Stop )( 
  698.             IMSVidCtl * This);
  699.         
  700.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Decompose )( 
  701.             IMSVidCtl * This);
  702.         
  703.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DisableVideo )( 
  704.             IMSVidCtl * This);
  705.         
  706.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *DisableAudio )( 
  707.             IMSVidCtl * This);
  708.         
  709.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ViewNext )( 
  710.             IMSVidCtl * This,
  711.             /* [in] */ VARIANT *v);
  712.         
  713.         END_INTERFACE
  714.     } IMSVidCtlVtbl;
  715.     interface IMSVidCtl
  716.     {
  717.         CONST_VTBL struct IMSVidCtlVtbl *lpVtbl;
  718.     };
  719.     
  720. #ifdef COBJMACROS
  721. #define IMSVidCtl_QueryInterface(This,riid,ppvObject)
  722.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  723. #define IMSVidCtl_AddRef(This)
  724.     (This)->lpVtbl -> AddRef(This)
  725. #define IMSVidCtl_Release(This)
  726.     (This)->lpVtbl -> Release(This)
  727. #define IMSVidCtl_GetTypeInfoCount(This,pctinfo)
  728.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  729. #define IMSVidCtl_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  730.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  731. #define IMSVidCtl_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  732.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  733. #define IMSVidCtl_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  734.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  735. #define IMSVidCtl_get_AutoSize(This,pbool)
  736.     (This)->lpVtbl -> get_AutoSize(This,pbool)
  737. #define IMSVidCtl_put_AutoSize(This,vbool)
  738.     (This)->lpVtbl -> put_AutoSize(This,vbool)
  739. #define IMSVidCtl_get_BackColor(This,backcolor)
  740.     (This)->lpVtbl -> get_BackColor(This,backcolor)
  741. #define IMSVidCtl_put_BackColor(This,backcolor)
  742.     (This)->lpVtbl -> put_BackColor(This,backcolor)
  743. #define IMSVidCtl_get_Enabled(This,pbool)
  744.     (This)->lpVtbl -> get_Enabled(This,pbool)
  745. #define IMSVidCtl_put_Enabled(This,vbool)
  746.     (This)->lpVtbl -> put_Enabled(This,vbool)
  747. #define IMSVidCtl_get_TabStop(This,pbool)
  748.     (This)->lpVtbl -> get_TabStop(This,pbool)
  749. #define IMSVidCtl_put_TabStop(This,vbool)
  750.     (This)->lpVtbl -> put_TabStop(This,vbool)
  751. #define IMSVidCtl_get_Window(This,phwnd)
  752.     (This)->lpVtbl -> get_Window(This,phwnd)
  753. #define IMSVidCtl_Refresh(This)
  754.     (This)->lpVtbl -> Refresh(This)
  755. #define IMSVidCtl_get_DisplaySize(This,CurrentValue)
  756.     (This)->lpVtbl -> get_DisplaySize(This,CurrentValue)
  757. #define IMSVidCtl_put_DisplaySize(This,NewValue)
  758.     (This)->lpVtbl -> put_DisplaySize(This,NewValue)
  759. #define IMSVidCtl_get_MaintainAspectRatio(This,CurrentValue)
  760.     (This)->lpVtbl -> get_MaintainAspectRatio(This,CurrentValue)
  761. #define IMSVidCtl_put_MaintainAspectRatio(This,NewValue)
  762.     (This)->lpVtbl -> put_MaintainAspectRatio(This,NewValue)
  763. #define IMSVidCtl_get_ColorKey(This,CurrentValue)
  764.     (This)->lpVtbl -> get_ColorKey(This,CurrentValue)
  765. #define IMSVidCtl_put_ColorKey(This,NewValue)
  766.     (This)->lpVtbl -> put_ColorKey(This,NewValue)
  767. #define IMSVidCtl_get_InputsAvailable(This,CategoryGuid,pVal)
  768.     (This)->lpVtbl -> get_InputsAvailable(This,CategoryGuid,pVal)
  769. #define IMSVidCtl_get_OutputsAvailable(This,CategoryGuid,pVal)
  770.     (This)->lpVtbl -> get_OutputsAvailable(This,CategoryGuid,pVal)
  771. #define IMSVidCtl_get__InputsAvailable(This,CategoryGuid,pVal)
  772.     (This)->lpVtbl -> get__InputsAvailable(This,CategoryGuid,pVal)
  773. #define IMSVidCtl_get__OutputsAvailable(This,CategoryGuid,pVal)
  774.     (This)->lpVtbl -> get__OutputsAvailable(This,CategoryGuid,pVal)
  775. #define IMSVidCtl_get_VideoRenderersAvailable(This,pVal)
  776.     (This)->lpVtbl -> get_VideoRenderersAvailable(This,pVal)
  777. #define IMSVidCtl_get_AudioRenderersAvailable(This,pVal)
  778.     (This)->lpVtbl -> get_AudioRenderersAvailable(This,pVal)
  779. #define IMSVidCtl_get_FeaturesAvailable(This,pVal)
  780.     (This)->lpVtbl -> get_FeaturesAvailable(This,pVal)
  781. #define IMSVidCtl_get_InputActive(This,pVal)
  782.     (This)->lpVtbl -> get_InputActive(This,pVal)
  783. #define IMSVidCtl_put_InputActive(This,pVal)
  784.     (This)->lpVtbl -> put_InputActive(This,pVal)
  785. #define IMSVidCtl_get_OutputsActive(This,pVal)
  786.     (This)->lpVtbl -> get_OutputsActive(This,pVal)
  787. #define IMSVidCtl_put_OutputsActive(This,pVal)
  788.     (This)->lpVtbl -> put_OutputsActive(This,pVal)
  789. #define IMSVidCtl_get_VideoRendererActive(This,pVal)
  790.     (This)->lpVtbl -> get_VideoRendererActive(This,pVal)
  791. #define IMSVidCtl_put_VideoRendererActive(This,pVal)
  792.     (This)->lpVtbl -> put_VideoRendererActive(This,pVal)
  793. #define IMSVidCtl_get_AudioRendererActive(This,pVal)
  794.     (This)->lpVtbl -> get_AudioRendererActive(This,pVal)
  795. #define IMSVidCtl_put_AudioRendererActive(This,pVal)
  796.     (This)->lpVtbl -> put_AudioRendererActive(This,pVal)
  797. #define IMSVidCtl_get_FeaturesActive(This,pVal)
  798.     (This)->lpVtbl -> get_FeaturesActive(This,pVal)
  799. #define IMSVidCtl_put_FeaturesActive(This,pVal)
  800.     (This)->lpVtbl -> put_FeaturesActive(This,pVal)
  801. #define IMSVidCtl_get_State(This,lState)
  802.     (This)->lpVtbl -> get_State(This,lState)
  803. #define IMSVidCtl_View(This,v)
  804.     (This)->lpVtbl -> View(This,v)
  805. #define IMSVidCtl_Build(This)
  806.     (This)->lpVtbl -> Build(This)
  807. #define IMSVidCtl_Pause(This)
  808.     (This)->lpVtbl -> Pause(This)
  809. #define IMSVidCtl_Run(This)
  810.     (This)->lpVtbl -> Run(This)
  811. #define IMSVidCtl_Stop(This)
  812.     (This)->lpVtbl -> Stop(This)
  813. #define IMSVidCtl_Decompose(This)
  814.     (This)->lpVtbl -> Decompose(This)
  815. #define IMSVidCtl_DisableVideo(This)
  816.     (This)->lpVtbl -> DisableVideo(This)
  817. #define IMSVidCtl_DisableAudio(This)
  818.     (This)->lpVtbl -> DisableAudio(This)
  819. #define IMSVidCtl_ViewNext(This,v)
  820.     (This)->lpVtbl -> ViewNext(This,v)
  821. #endif /* COBJMACROS */
  822. #endif  /* C style interface */
  823. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_AutoSize_Proxy( 
  824.     IMSVidCtl * This,
  825.     /* [retval][out] */ VARIANT_BOOL *pbool);
  826. void __RPC_STUB IMSVidCtl_get_AutoSize_Stub(
  827.     IRpcStubBuffer *This,
  828.     IRpcChannelBuffer *_pRpcChannelBuffer,
  829.     PRPC_MESSAGE _pRpcMessage,
  830.     DWORD *_pdwStubPhase);
  831. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_AutoSize_Proxy( 
  832.     IMSVidCtl * This,
  833.     /* [in] */ VARIANT_BOOL vbool);
  834. void __RPC_STUB IMSVidCtl_put_AutoSize_Stub(
  835.     IRpcStubBuffer *This,
  836.     IRpcChannelBuffer *_pRpcChannelBuffer,
  837.     PRPC_MESSAGE _pRpcMessage,
  838.     DWORD *_pdwStubPhase);
  839. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_BackColor_Proxy( 
  840.     IMSVidCtl * This,
  841.     /* [retval][out] */ OLE_COLOR *backcolor);
  842. void __RPC_STUB IMSVidCtl_get_BackColor_Stub(
  843.     IRpcStubBuffer *This,
  844.     IRpcChannelBuffer *_pRpcChannelBuffer,
  845.     PRPC_MESSAGE _pRpcMessage,
  846.     DWORD *_pdwStubPhase);
  847. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_BackColor_Proxy( 
  848.     IMSVidCtl * This,
  849.     /* [in] */ OLE_COLOR backcolor);
  850. void __RPC_STUB IMSVidCtl_put_BackColor_Stub(
  851.     IRpcStubBuffer *This,
  852.     IRpcChannelBuffer *_pRpcChannelBuffer,
  853.     PRPC_MESSAGE _pRpcMessage,
  854.     DWORD *_pdwStubPhase);
  855. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_Enabled_Proxy( 
  856.     IMSVidCtl * This,
  857.     /* [retval][out] */ VARIANT_BOOL *pbool);
  858. void __RPC_STUB IMSVidCtl_get_Enabled_Stub(
  859.     IRpcStubBuffer *This,
  860.     IRpcChannelBuffer *_pRpcChannelBuffer,
  861.     PRPC_MESSAGE _pRpcMessage,
  862.     DWORD *_pdwStubPhase);
  863. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_Enabled_Proxy( 
  864.     IMSVidCtl * This,
  865.     /* [in] */ VARIANT_BOOL vbool);
  866. void __RPC_STUB IMSVidCtl_put_Enabled_Stub(
  867.     IRpcStubBuffer *This,
  868.     IRpcChannelBuffer *_pRpcChannelBuffer,
  869.     PRPC_MESSAGE _pRpcMessage,
  870.     DWORD *_pdwStubPhase);
  871. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_TabStop_Proxy( 
  872.     IMSVidCtl * This,
  873.     /* [retval][out] */ VARIANT_BOOL *pbool);
  874. void __RPC_STUB IMSVidCtl_get_TabStop_Stub(
  875.     IRpcStubBuffer *This,
  876.     IRpcChannelBuffer *_pRpcChannelBuffer,
  877.     PRPC_MESSAGE _pRpcMessage,
  878.     DWORD *_pdwStubPhase);
  879. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_TabStop_Proxy( 
  880.     IMSVidCtl * This,
  881.     /* [in] */ VARIANT_BOOL vbool);
  882. void __RPC_STUB IMSVidCtl_put_TabStop_Stub(
  883.     IRpcStubBuffer *This,
  884.     IRpcChannelBuffer *_pRpcChannelBuffer,
  885.     PRPC_MESSAGE _pRpcMessage,
  886.     DWORD *_pdwStubPhase);
  887. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_Window_Proxy( 
  888.     IMSVidCtl * This,
  889.     /* [retval][out] */ HWND *phwnd);
  890. void __RPC_STUB IMSVidCtl_get_Window_Stub(
  891.     IRpcStubBuffer *This,
  892.     IRpcChannelBuffer *_pRpcChannelBuffer,
  893.     PRPC_MESSAGE _pRpcMessage,
  894.     DWORD *_pdwStubPhase);
  895. /* [id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_Refresh_Proxy( 
  896.     IMSVidCtl * This);
  897. void __RPC_STUB IMSVidCtl_Refresh_Stub(
  898.     IRpcStubBuffer *This,
  899.     IRpcChannelBuffer *_pRpcChannelBuffer,
  900.     PRPC_MESSAGE _pRpcMessage,
  901.     DWORD *_pdwStubPhase);
  902. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_DisplaySize_Proxy( 
  903.     IMSVidCtl * This,
  904.     /* [retval][out] */ DisplaySizeList *CurrentValue);
  905. void __RPC_STUB IMSVidCtl_get_DisplaySize_Stub(
  906.     IRpcStubBuffer *This,
  907.     IRpcChannelBuffer *_pRpcChannelBuffer,
  908.     PRPC_MESSAGE _pRpcMessage,
  909.     DWORD *_pdwStubPhase);
  910. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_DisplaySize_Proxy( 
  911.     IMSVidCtl * This,
  912.     /* [in] */ DisplaySizeList NewValue);
  913. void __RPC_STUB IMSVidCtl_put_DisplaySize_Stub(
  914.     IRpcStubBuffer *This,
  915.     IRpcChannelBuffer *_pRpcChannelBuffer,
  916.     PRPC_MESSAGE _pRpcMessage,
  917.     DWORD *_pdwStubPhase);
  918. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_MaintainAspectRatio_Proxy( 
  919.     IMSVidCtl * This,
  920.     /* [retval][out] */ VARIANT_BOOL *CurrentValue);
  921. void __RPC_STUB IMSVidCtl_get_MaintainAspectRatio_Stub(
  922.     IRpcStubBuffer *This,
  923.     IRpcChannelBuffer *_pRpcChannelBuffer,
  924.     PRPC_MESSAGE _pRpcMessage,
  925.     DWORD *_pdwStubPhase);
  926. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_MaintainAspectRatio_Proxy( 
  927.     IMSVidCtl * This,
  928.     /* [in] */ VARIANT_BOOL NewValue);
  929. void __RPC_STUB IMSVidCtl_put_MaintainAspectRatio_Stub(
  930.     IRpcStubBuffer *This,
  931.     IRpcChannelBuffer *_pRpcChannelBuffer,
  932.     PRPC_MESSAGE _pRpcMessage,
  933.     DWORD *_pdwStubPhase);
  934. /* [id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_ColorKey_Proxy( 
  935.     IMSVidCtl * This,
  936.     /* [retval][out] */ OLE_COLOR *CurrentValue);
  937. void __RPC_STUB IMSVidCtl_get_ColorKey_Stub(
  938.     IRpcStubBuffer *This,
  939.     IRpcChannelBuffer *_pRpcChannelBuffer,
  940.     PRPC_MESSAGE _pRpcMessage,
  941.     DWORD *_pdwStubPhase);
  942. /* [id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_ColorKey_Proxy( 
  943.     IMSVidCtl * This,
  944.     /* [in] */ OLE_COLOR NewValue);
  945. void __RPC_STUB IMSVidCtl_put_ColorKey_Stub(
  946.     IRpcStubBuffer *This,
  947.     IRpcChannelBuffer *_pRpcChannelBuffer,
  948.     PRPC_MESSAGE _pRpcMessage,
  949.     DWORD *_pdwStubPhase);
  950. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_InputsAvailable_Proxy( 
  951.     IMSVidCtl * This,
  952.     /* [in] */ BSTR CategoryGuid,
  953.     /* [retval][out] */ IMSVidInputDevices **pVal);
  954. void __RPC_STUB IMSVidCtl_get_InputsAvailable_Stub(
  955.     IRpcStubBuffer *This,
  956.     IRpcChannelBuffer *_pRpcChannelBuffer,
  957.     PRPC_MESSAGE _pRpcMessage,
  958.     DWORD *_pdwStubPhase);
  959. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_OutputsAvailable_Proxy( 
  960.     IMSVidCtl * This,
  961.     /* [in] */ BSTR CategoryGuid,
  962.     /* [retval][out] */ IMSVidOutputDevices **pVal);
  963. void __RPC_STUB IMSVidCtl_get_OutputsAvailable_Stub(
  964.     IRpcStubBuffer *This,
  965.     IRpcChannelBuffer *_pRpcChannelBuffer,
  966.     PRPC_MESSAGE _pRpcMessage,
  967.     DWORD *_pdwStubPhase);
  968. /* [helpstring][restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get__InputsAvailable_Proxy( 
  969.     IMSVidCtl * This,
  970.     /* [in] */ LPCGUID CategoryGuid,
  971.     /* [retval][out] */ IMSVidInputDevices **pVal);
  972. void __RPC_STUB IMSVidCtl_get__InputsAvailable_Stub(
  973.     IRpcStubBuffer *This,
  974.     IRpcChannelBuffer *_pRpcChannelBuffer,
  975.     PRPC_MESSAGE _pRpcMessage,
  976.     DWORD *_pdwStubPhase);
  977. /* [helpstring][restricted][hidden][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get__OutputsAvailable_Proxy( 
  978.     IMSVidCtl * This,
  979.     /* [in] */ LPCGUID CategoryGuid,
  980.     /* [retval][out] */ IMSVidOutputDevices **pVal);
  981. void __RPC_STUB IMSVidCtl_get__OutputsAvailable_Stub(
  982.     IRpcStubBuffer *This,
  983.     IRpcChannelBuffer *_pRpcChannelBuffer,
  984.     PRPC_MESSAGE _pRpcMessage,
  985.     DWORD *_pdwStubPhase);
  986. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_VideoRenderersAvailable_Proxy( 
  987.     IMSVidCtl * This,
  988.     /* [retval][out] */ IMSVidVideoRendererDevices **pVal);
  989. void __RPC_STUB IMSVidCtl_get_VideoRenderersAvailable_Stub(
  990.     IRpcStubBuffer *This,
  991.     IRpcChannelBuffer *_pRpcChannelBuffer,
  992.     PRPC_MESSAGE _pRpcMessage,
  993.     DWORD *_pdwStubPhase);
  994. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_AudioRenderersAvailable_Proxy( 
  995.     IMSVidCtl * This,
  996.     /* [retval][out] */ IMSVidAudioRendererDevices **pVal);
  997. void __RPC_STUB IMSVidCtl_get_AudioRenderersAvailable_Stub(
  998.     IRpcStubBuffer *This,
  999.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1000.     PRPC_MESSAGE _pRpcMessage,
  1001.     DWORD *_pdwStubPhase);
  1002. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_FeaturesAvailable_Proxy( 
  1003.     IMSVidCtl * This,
  1004.     /* [retval][out] */ IMSVidFeatures **pVal);
  1005. void __RPC_STUB IMSVidCtl_get_FeaturesAvailable_Stub(
  1006.     IRpcStubBuffer *This,
  1007.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1008.     PRPC_MESSAGE _pRpcMessage,
  1009.     DWORD *_pdwStubPhase);
  1010. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_InputActive_Proxy( 
  1011.     IMSVidCtl * This,
  1012.     /* [retval][out] */ IMSVidInputDevice **pVal);
  1013. void __RPC_STUB IMSVidCtl_get_InputActive_Stub(
  1014.     IRpcStubBuffer *This,
  1015.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1016.     PRPC_MESSAGE _pRpcMessage,
  1017.     DWORD *_pdwStubPhase);
  1018. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_InputActive_Proxy( 
  1019.     IMSVidCtl * This,
  1020.     /* [in] */ IMSVidInputDevice *pVal);
  1021. void __RPC_STUB IMSVidCtl_put_InputActive_Stub(
  1022.     IRpcStubBuffer *This,
  1023.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1024.     PRPC_MESSAGE _pRpcMessage,
  1025.     DWORD *_pdwStubPhase);
  1026. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_OutputsActive_Proxy( 
  1027.     IMSVidCtl * This,
  1028.     /* [retval][out] */ IMSVidOutputDevices **pVal);
  1029. void __RPC_STUB IMSVidCtl_get_OutputsActive_Stub(
  1030.     IRpcStubBuffer *This,
  1031.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1032.     PRPC_MESSAGE _pRpcMessage,
  1033.     DWORD *_pdwStubPhase);
  1034. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_OutputsActive_Proxy( 
  1035.     IMSVidCtl * This,
  1036.     /* [in] */ IMSVidOutputDevices *pVal);
  1037. void __RPC_STUB IMSVidCtl_put_OutputsActive_Stub(
  1038.     IRpcStubBuffer *This,
  1039.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1040.     PRPC_MESSAGE _pRpcMessage,
  1041.     DWORD *_pdwStubPhase);
  1042. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_VideoRendererActive_Proxy( 
  1043.     IMSVidCtl * This,
  1044.     /* [retval][out] */ IMSVidVideoRenderer **pVal);
  1045. void __RPC_STUB IMSVidCtl_get_VideoRendererActive_Stub(
  1046.     IRpcStubBuffer *This,
  1047.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1048.     PRPC_MESSAGE _pRpcMessage,
  1049.     DWORD *_pdwStubPhase);
  1050. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_VideoRendererActive_Proxy( 
  1051.     IMSVidCtl * This,
  1052.     /* [in] */ IMSVidVideoRenderer *pVal);
  1053. void __RPC_STUB IMSVidCtl_put_VideoRendererActive_Stub(
  1054.     IRpcStubBuffer *This,
  1055.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1056.     PRPC_MESSAGE _pRpcMessage,
  1057.     DWORD *_pdwStubPhase);
  1058. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_AudioRendererActive_Proxy( 
  1059.     IMSVidCtl * This,
  1060.     /* [retval][out] */ IMSVidAudioRenderer **pVal);
  1061. void __RPC_STUB IMSVidCtl_get_AudioRendererActive_Stub(
  1062.     IRpcStubBuffer *This,
  1063.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1064.     PRPC_MESSAGE _pRpcMessage,
  1065.     DWORD *_pdwStubPhase);
  1066. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_AudioRendererActive_Proxy( 
  1067.     IMSVidCtl * This,
  1068.     /* [in] */ IMSVidAudioRenderer *pVal);
  1069. void __RPC_STUB IMSVidCtl_put_AudioRendererActive_Stub(
  1070.     IRpcStubBuffer *This,
  1071.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1072.     PRPC_MESSAGE _pRpcMessage,
  1073.     DWORD *_pdwStubPhase);
  1074. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_FeaturesActive_Proxy( 
  1075.     IMSVidCtl * This,
  1076.     /* [retval][out] */ IMSVidFeatures **pVal);
  1077. void __RPC_STUB IMSVidCtl_get_FeaturesActive_Stub(
  1078.     IRpcStubBuffer *This,
  1079.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1080.     PRPC_MESSAGE _pRpcMessage,
  1081.     DWORD *_pdwStubPhase);
  1082. /* [helpstring][id][propput] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_put_FeaturesActive_Proxy( 
  1083.     IMSVidCtl * This,
  1084.     /* [in] */ IMSVidFeatures *pVal);
  1085. void __RPC_STUB IMSVidCtl_put_FeaturesActive_Stub(
  1086.     IRpcStubBuffer *This,
  1087.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1088.     PRPC_MESSAGE _pRpcMessage,
  1089.     DWORD *_pdwStubPhase);
  1090. /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_get_State_Proxy( 
  1091.     IMSVidCtl * This,
  1092.     /* [retval][out] */ MSVidCtlStateList *lState);
  1093. void __RPC_STUB IMSVidCtl_get_State_Stub(
  1094.     IRpcStubBuffer *This,
  1095.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1096.     PRPC_MESSAGE _pRpcMessage,
  1097.     DWORD *_pdwStubPhase);
  1098. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_View_Proxy( 
  1099.     IMSVidCtl * This,
  1100.     /* [in] */ VARIANT *v);
  1101. void __RPC_STUB IMSVidCtl_View_Stub(
  1102.     IRpcStubBuffer *This,
  1103.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1104.     PRPC_MESSAGE _pRpcMessage,
  1105.     DWORD *_pdwStubPhase);
  1106. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_Build_Proxy( 
  1107.     IMSVidCtl * This);
  1108. void __RPC_STUB IMSVidCtl_Build_Stub(
  1109.     IRpcStubBuffer *This,
  1110.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1111.     PRPC_MESSAGE _pRpcMessage,
  1112.     DWORD *_pdwStubPhase);
  1113. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_Pause_Proxy( 
  1114.     IMSVidCtl * This);
  1115. void __RPC_STUB IMSVidCtl_Pause_Stub(
  1116.     IRpcStubBuffer *This,
  1117.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1118.     PRPC_MESSAGE _pRpcMessage,
  1119.     DWORD *_pdwStubPhase);
  1120. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_Run_Proxy( 
  1121.     IMSVidCtl * This);
  1122. void __RPC_STUB IMSVidCtl_Run_Stub(
  1123.     IRpcStubBuffer *This,
  1124.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1125.     PRPC_MESSAGE _pRpcMessage,
  1126.     DWORD *_pdwStubPhase);
  1127. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_Stop_Proxy( 
  1128.     IMSVidCtl * This);
  1129. void __RPC_STUB IMSVidCtl_Stop_Stub(
  1130.     IRpcStubBuffer *This,
  1131.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1132.     PRPC_MESSAGE _pRpcMessage,
  1133.     DWORD *_pdwStubPhase);
  1134. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_Decompose_Proxy( 
  1135.     IMSVidCtl * This);
  1136. void __RPC_STUB IMSVidCtl_Decompose_Stub(
  1137.     IRpcStubBuffer *This,
  1138.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1139.     PRPC_MESSAGE _pRpcMessage,
  1140.     DWORD *_pdwStubPhase);
  1141. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_DisableVideo_Proxy( 
  1142.     IMSVidCtl * This);
  1143. void __RPC_STUB IMSVidCtl_DisableVideo_Stub(
  1144.     IRpcStubBuffer *This,
  1145.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1146.     PRPC_MESSAGE _pRpcMessage,
  1147.     DWORD *_pdwStubPhase);
  1148. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_DisableAudio_Proxy( 
  1149.     IMSVidCtl * This);
  1150. void __RPC_STUB IMSVidCtl_DisableAudio_Stub(
  1151.     IRpcStubBuffer *This,
  1152.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1153.     PRPC_MESSAGE _pRpcMessage,
  1154.     DWORD *_pdwStubPhase);
  1155. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSVidCtl_ViewNext_Proxy( 
  1156.     IMSVidCtl * This,
  1157.     /* [in] */ VARIANT *v);
  1158. void __RPC_STUB IMSVidCtl_ViewNext_Stub(
  1159.     IRpcStubBuffer *This,
  1160.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1161.     PRPC_MESSAGE _pRpcMessage,
  1162.     DWORD *_pdwStubPhase);
  1163. #endif  /* __IMSVidCtl_INTERFACE_DEFINED__ */
  1164. #ifndef __IMSEventBinder_INTERFACE_DEFINED__
  1165. #define __IMSEventBinder_INTERFACE_DEFINED__
  1166. /* interface IMSEventBinder */
  1167. /* [helpstring][uuid][unique][nonextensible][hidden][oleautomation][dual][object] */ 
  1168. EXTERN_C const IID IID_IMSEventBinder;
  1169. #if defined(__cplusplus) && !defined(CINTERFACE)
  1170.     
  1171.     MIDL_INTERFACE("C3A9F406-2222-436D-86D5-BA3229279EFB")
  1172.     IMSEventBinder : public IDispatch
  1173.     {
  1174.     public:
  1175.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Bind( 
  1176.             /* [in] */ LPDISPATCH pEventObject,
  1177.             /* [in] */ BSTR EventName,
  1178.             /* [in] */ BSTR EventHandler,
  1179.             /* [retval][out] */ LONG *CancelID) = 0;
  1180.         
  1181.         virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Unbind( 
  1182.             /* [in] */ DWORD CancelCookie) = 0;
  1183.         
  1184.     };
  1185.     
  1186. #else  /* C style interface */
  1187.     typedef struct IMSEventBinderVtbl
  1188.     {
  1189.         BEGIN_INTERFACE
  1190.         
  1191.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1192.             IMSEventBinder * This,
  1193.             /* [in] */ REFIID riid,
  1194.             /* [iid_is][out] */ void **ppvObject);
  1195.         
  1196.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1197.             IMSEventBinder * This);
  1198.         
  1199.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1200.             IMSEventBinder * This);
  1201.         
  1202.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1203.             IMSEventBinder * This,
  1204.             /* [out] */ UINT *pctinfo);
  1205.         
  1206.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1207.             IMSEventBinder * This,
  1208.             /* [in] */ UINT iTInfo,
  1209.             /* [in] */ LCID lcid,
  1210.             /* [out] */ ITypeInfo **ppTInfo);
  1211.         
  1212.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1213.             IMSEventBinder * This,
  1214.             /* [in] */ REFIID riid,
  1215.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1216.             /* [in] */ UINT cNames,
  1217.             /* [in] */ LCID lcid,
  1218.             /* [size_is][out] */ DISPID *rgDispId);
  1219.         
  1220.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1221.             IMSEventBinder * This,
  1222.             /* [in] */ DISPID dispIdMember,
  1223.             /* [in] */ REFIID riid,
  1224.             /* [in] */ LCID lcid,
  1225.             /* [in] */ WORD wFlags,
  1226.             /* [out][in] */ DISPPARAMS *pDispParams,
  1227.             /* [out] */ VARIANT *pVarResult,
  1228.             /* [out] */ EXCEPINFO *pExcepInfo,
  1229.             /* [out] */ UINT *puArgErr);
  1230.         
  1231.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Bind )( 
  1232.             IMSEventBinder * This,
  1233.             /* [in] */ LPDISPATCH pEventObject,
  1234.             /* [in] */ BSTR EventName,
  1235.             /* [in] */ BSTR EventHandler,
  1236.             /* [retval][out] */ LONG *CancelID);
  1237.         
  1238.         /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Unbind )( 
  1239.             IMSEventBinder * This,
  1240.             /* [in] */ DWORD CancelCookie);
  1241.         
  1242.         END_INTERFACE
  1243.     } IMSEventBinderVtbl;
  1244.     interface IMSEventBinder
  1245.     {
  1246.         CONST_VTBL struct IMSEventBinderVtbl *lpVtbl;
  1247.     };
  1248.     
  1249. #ifdef COBJMACROS
  1250. #define IMSEventBinder_QueryInterface(This,riid,ppvObject)
  1251.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1252. #define IMSEventBinder_AddRef(This)
  1253.     (This)->lpVtbl -> AddRef(This)
  1254. #define IMSEventBinder_Release(This)
  1255.     (This)->lpVtbl -> Release(This)
  1256. #define IMSEventBinder_GetTypeInfoCount(This,pctinfo)
  1257.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1258. #define IMSEventBinder_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1259.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1260. #define IMSEventBinder_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1261.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1262. #define IMSEventBinder_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1263.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1264. #define IMSEventBinder_Bind(This,pEventObject,EventName,EventHandler,CancelID)
  1265.     (This)->lpVtbl -> Bind(This,pEventObject,EventName,EventHandler,CancelID)
  1266. #define IMSEventBinder_Unbind(This,CancelCookie)
  1267.     (This)->lpVtbl -> Unbind(This,CancelCookie)
  1268. #endif /* COBJMACROS */
  1269. #endif  /* C style interface */
  1270. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSEventBinder_Bind_Proxy( 
  1271.     IMSEventBinder * This,
  1272.     /* [in] */ LPDISPATCH pEventObject,
  1273.     /* [in] */ BSTR EventName,
  1274.     /* [in] */ BSTR EventHandler,
  1275.     /* [retval][out] */ LONG *CancelID);
  1276. void __RPC_STUB IMSEventBinder_Bind_Stub(
  1277.     IRpcStubBuffer *This,
  1278.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1279.     PRPC_MESSAGE _pRpcMessage,
  1280.     DWORD *_pdwStubPhase);
  1281. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IMSEventBinder_Unbind_Proxy( 
  1282.     IMSEventBinder * This,
  1283.     /* [in] */ DWORD CancelCookie);
  1284. void __RPC_STUB IMSEventBinder_Unbind_Stub(
  1285.     IRpcStubBuffer *This,
  1286.     IRpcChannelBuffer *_pRpcChannelBuffer,
  1287.     PRPC_MESSAGE _pRpcMessage,
  1288.     DWORD *_pdwStubPhase);
  1289. #endif  /* __IMSEventBinder_INTERFACE_DEFINED__ */
  1290. #ifndef __MSVidCtlLib_LIBRARY_DEFINED__
  1291. #define __MSVidCtlLib_LIBRARY_DEFINED__
  1292. /* library MSVidCtlLib */
  1293. /* [helpstring][version][uuid] */ 
  1294. EXTERN_C const IID LIBID_MSVidCtlLib;
  1295. #ifndef ___IMSVidCtlEvents_DISPINTERFACE_DEFINED__
  1296. #define ___IMSVidCtlEvents_DISPINTERFACE_DEFINED__
  1297. /* dispinterface _IMSVidCtlEvents */
  1298. /* [helpstring][uuid] */ 
  1299. EXTERN_C const IID DIID__IMSVidCtlEvents;
  1300. #if defined(__cplusplus) && !defined(CINTERFACE)
  1301.     MIDL_INTERFACE("B0EDF164-910A-11D2-B632-00C04F79498E")
  1302.     _IMSVidCtlEvents : public IDispatch
  1303.     {
  1304.     };
  1305.     
  1306. #else  /* C style interface */
  1307.     typedef struct _IMSVidCtlEventsVtbl
  1308.     {
  1309.         BEGIN_INTERFACE
  1310.         
  1311.         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1312.             _IMSVidCtlEvents * This,
  1313.             /* [in] */ REFIID riid,
  1314.             /* [iid_is][out] */ void **ppvObject);
  1315.         
  1316.         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1317.             _IMSVidCtlEvents * This);
  1318.         
  1319.         ULONG ( STDMETHODCALLTYPE *Release )( 
  1320.             _IMSVidCtlEvents * This);
  1321.         
  1322.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1323.             _IMSVidCtlEvents * This,
  1324.             /* [out] */ UINT *pctinfo);
  1325.         
  1326.         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1327.             _IMSVidCtlEvents * This,
  1328.             /* [in] */ UINT iTInfo,
  1329.             /* [in] */ LCID lcid,
  1330.             /* [out] */ ITypeInfo **ppTInfo);
  1331.         
  1332.         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1333.             _IMSVidCtlEvents * This,
  1334.             /* [in] */ REFIID riid,
  1335.             /* [size_is][in] */ LPOLESTR *rgszNames,
  1336.             /* [in] */ UINT cNames,
  1337.             /* [in] */ LCID lcid,
  1338.             /* [size_is][out] */ DISPID *rgDispId);
  1339.         
  1340.         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1341.             _IMSVidCtlEvents * This,
  1342.             /* [in] */ DISPID dispIdMember,
  1343.             /* [in] */ REFIID riid,
  1344.             /* [in] */ LCID lcid,
  1345.             /* [in] */ WORD wFlags,
  1346.             /* [out][in] */ DISPPARAMS *pDispParams,
  1347.             /* [out] */ VARIANT *pVarResult,
  1348.             /* [out] */ EXCEPINFO *pExcepInfo,
  1349.             /* [out] */ UINT *puArgErr);
  1350.         
  1351.         END_INTERFACE
  1352.     } _IMSVidCtlEventsVtbl;
  1353.     interface _IMSVidCtlEvents
  1354.     {
  1355.         CONST_VTBL struct _IMSVidCtlEventsVtbl *lpVtbl;
  1356.     };
  1357.     
  1358. #ifdef COBJMACROS
  1359. #define _IMSVidCtlEvents_QueryInterface(This,riid,ppvObject)
  1360.     (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1361. #define _IMSVidCtlEvents_AddRef(This)
  1362.     (This)->lpVtbl -> AddRef(This)
  1363. #define _IMSVidCtlEvents_Release(This)
  1364.     (This)->lpVtbl -> Release(This)
  1365. #define _IMSVidCtlEvents_GetTypeInfoCount(This,pctinfo)
  1366.     (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  1367. #define _IMSVidCtlEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1368.     (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  1369. #define _IMSVidCtlEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1370.     (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  1371. #define _IMSVidCtlEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1372.     (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  1373. #endif /* COBJMACROS */
  1374. #endif  /* C style interface */
  1375. #endif  /* ___IMSVidCtlEvents_DISPINTERFACE_DEFINED__ */
  1376. EXTERN_C const CLSID CLSID_MSVidAnalogTunerDevice;
  1377. #ifdef __cplusplus
  1378. class DECLSPEC_UUID("1C15D484-911D-11d2-B632-00C04F79498E")
  1379. MSVidAnalogTunerDevice;
  1380. #endif
  1381. EXTERN_C const CLSID CLSID_MSVidBDATunerDevice;
  1382. #ifdef __cplusplus
  1383. class DECLSPEC_UUID("A2E3074E-6C3D-11d3-B653-00C04F79498E")
  1384. MSVidBDATunerDevice;
  1385. #endif
  1386. EXTERN_C const CLSID CLSID_MSVidFilePlaybackDevice;
  1387. #ifdef __cplusplus
  1388. class DECLSPEC_UUID("37B0353C-A4C8-11d2-B634-00C04F79498E")
  1389. MSVidFilePlaybackDevice;
  1390. #endif
  1391. EXTERN_C const CLSID CLSID_MSVidWebDVD;
  1392. #ifdef __cplusplus
  1393. class DECLSPEC_UUID("011B3619-FE63-4814-8A84-15A194CE9CE3")
  1394. MSVidWebDVD;
  1395. #endif
  1396. EXTERN_C const CLSID CLSID_MSVidWebDVDAdm;
  1397. #ifdef __cplusplus
  1398. class DECLSPEC_UUID("FA7C375B-66A7-4280-879D-FD459C84BB02")
  1399. MSVidWebDVDAdm;
  1400. #endif
  1401. EXTERN_C const CLSID CLSID_MSVidVideoRenderer;
  1402. #ifdef __cplusplus
  1403. class DECLSPEC_UUID("37B03543-A4C8-11d2-B634-00C04F79498E")
  1404. MSVidVideoRenderer;
  1405. #endif
  1406. EXTERN_C const CLSID CLSID_MSVidAudioRenderer;
  1407. #ifdef __cplusplus
  1408. class DECLSPEC_UUID("37B03544-A4C8-11d2-B634-00C04F79498E")
  1409. MSVidAudioRenderer;
  1410. #endif
  1411. EXTERN_C const CLSID CLSID_MSVidDataServices;
  1412. #ifdef __cplusplus
  1413. class DECLSPEC_UUID("334125C0-77E5-11d3-B653-00C04F79498E")
  1414. MSVidDataServices;
  1415. #endif
  1416. EXTERN_C const CLSID CLSID_MSVidClosedCaptioning;
  1417. #ifdef __cplusplus
  1418. class DECLSPEC_UUID("7F9CB14D-48E4-43b6-9346-1AEBC39C64D3")
  1419. MSVidClosedCaptioning;
  1420. #endif
  1421. EXTERN_C const CLSID CLSID_MSVidTVEGSeg;
  1422. #ifdef __cplusplus
  1423. class DECLSPEC_UUID("1600F001-6666-4f66-B1E2-BF3C9FBB9BA6")
  1424. MSVidTVEGSeg;
  1425. #endif
  1426. EXTERN_C const CLSID CLSID_MSVidCAGSeg;
  1427. #ifdef __cplusplus
  1428. class DECLSPEC_UUID("1600F101-6666-4f66-B1E2-BF3C9FBB9BA6")
  1429. MSVidCAGSeg;
  1430. #endif
  1431. EXTERN_C const CLSID CLSID_MSVidCtl;
  1432. #ifdef __cplusplus
  1433. class DECLSPEC_UUID("B0EDF163-910A-11D2-B632-00C04F79498E")
  1434. MSVidCtl;
  1435. #endif
  1436. EXTERN_C const CLSID CLSID_MSVidInputDevices;
  1437. #ifdef __cplusplus
  1438. class DECLSPEC_UUID("C5702CCC-9B79-11d3-B654-00C04F79498E")
  1439. MSVidInputDevices;
  1440. #endif
  1441. EXTERN_C const CLSID CLSID_MSVidOutputDevices;
  1442. #ifdef __cplusplus
  1443. class DECLSPEC_UUID("C5702CCD-9B79-11d3-B654-00C04F79498E")
  1444. MSVidOutputDevices;
  1445. #endif
  1446. EXTERN_C const CLSID CLSID_MSVidVideoRendererDevices;
  1447. #ifdef __cplusplus
  1448. class DECLSPEC_UUID("C5702CCE-9B79-11d3-B654-00C04F79498E")
  1449. MSVidVideoRendererDevices;
  1450. #endif
  1451. EXTERN_C const CLSID CLSID_MSVidAudioRendererDevices;
  1452. #ifdef __cplusplus
  1453. class DECLSPEC_UUID("C5702CCF-9B79-11d3-B654-00C04F79498E")
  1454. MSVidAudioRendererDevices;
  1455. #endif
  1456. EXTERN_C const CLSID CLSID_MSVidFeatures;
  1457. #ifdef __cplusplus
  1458. class DECLSPEC_UUID("C5702CD0-9B79-11d3-B654-00C04F79498E")
  1459. MSVidFeatures;
  1460. #endif
  1461. EXTERN_C const CLSID CLSID_MSVidGenericComposite;
  1462. #ifdef __cplusplus
  1463. class DECLSPEC_UUID("2764BCE5-CC39-11D2-B639-00C04F79498E")
  1464. MSVidGenericComposite;
  1465. #endif
  1466. EXTERN_C const CLSID CLSID_MSVidAnalogCaptureToOverlayMixer;
  1467. #ifdef __cplusplus
  1468. class DECLSPEC_UUID("E18AF75A-08AF-11d3-B64A-00C04F79498E")
  1469. MSVidAnalogCaptureToOverlayMixer;
  1470. #endif
  1471. EXTERN_C const CLSID CLSID_MSVidAnalogCaptureToDataServices;
  1472. #ifdef __cplusplus
  1473. class DECLSPEC_UUID("C5702CD6-9B79-11d3-B654-00C04F79498E")
  1474. MSVidAnalogCaptureToDataServices;
  1475. #endif
  1476. EXTERN_C const CLSID CLSID_MSVidWebDVDToVideoRenderer;
  1477. #ifdef __cplusplus
  1478. class DECLSPEC_UUID("267db0b3-55e3-4902-949b-df8f5cec0191")
  1479. MSVidWebDVDToVideoRenderer;
  1480. #endif
  1481. EXTERN_C const CLSID CLSID_MSVidMPEG2DecoderToClosedCaptioning;
  1482. #ifdef __cplusplus
  1483. class DECLSPEC_UUID("6AD28EE1-5002-4e71-AAF7-BD077907B1A4")
  1484. MSVidMPEG2DecoderToClosedCaptioning;
  1485. #endif
  1486. EXTERN_C const CLSID CLSID_MSVidRenderFactory;
  1487. #ifdef __cplusplus
  1488. class DECLSPEC_UUID("11973C25-3529-40e4-9AB1-DDC164CBEF49")
  1489. MSVidRenderFactory;
  1490. #endif
  1491. EXTERN_C const CLSID CLSID_MSEventBinder;
  1492. #ifdef __cplusplus
  1493. class DECLSPEC_UUID("577FAA18-4518-445E-8F70-1473F8CF4BA4")
  1494. MSEventBinder;
  1495. #endif
  1496. EXTERN_C const CLSID CLSID_MSVidRect;
  1497. #ifdef __cplusplus
  1498. class DECLSPEC_UUID("CB4276E6-7D5F-4cf1-9727-629C5E6DB6AE")
  1499. MSVidRect;
  1500. #endif
  1501. EXTERN_C const CLSID CLSID_MSVidDevice;
  1502. #ifdef __cplusplus
  1503. class DECLSPEC_UUID("6E40476F-9C49-4c3e-8BB9-8587958EFF74")
  1504. MSVidDevice;
  1505. #endif
  1506. EXTERN_C const CLSID CLSID_MSVidInputDevice;
  1507. #ifdef __cplusplus
  1508. class DECLSPEC_UUID("AC1972F2-138A-4ca3-90DA-AE51112EDA28")
  1509. MSVidInputDevice;
  1510. #endif
  1511. EXTERN_C const CLSID CLSID_MSVidVideoInputDevice;
  1512. #ifdef __cplusplus
  1513. class DECLSPEC_UUID("95F4820B-BB3A-4e2d-BC64-5B817BC2C30E")
  1514. MSVidVideoInputDevice;
  1515. #endif
  1516. EXTERN_C const CLSID CLSID_MSVidVideoPlaybackDevice;
  1517. #ifdef __cplusplus
  1518. class DECLSPEC_UUID("1990D634-1A5E-4071-A34A-53AAFFCE9F36")
  1519. MSVidVideoPlaybackDevice;
  1520. #endif
  1521. EXTERN_C const CLSID CLSID_MSVidFeature;
  1522. #ifdef __cplusplus
  1523. class DECLSPEC_UUID("7748530B-C08A-47ea-B24C-BE8695FF405F")
  1524. MSVidFeature;
  1525. #endif
  1526. EXTERN_C const CLSID CLSID_MSVidOutput;
  1527. #ifdef __cplusplus
  1528. class DECLSPEC_UUID("87EB890D-03AD-4e9d-9866-376E5EC572ED")
  1529. MSVidOutput;
  1530. #endif
  1531. #endif /* __MSVidCtlLib_LIBRARY_DEFINED__ */
  1532. /* Additional Prototypes for ALL interfaces */
  1533. unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
  1534. unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
  1535. unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
  1536. void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 
  1537. unsigned long             __RPC_USER  HWND_UserSize(     unsigned long *, unsigned long            , HWND * ); 
  1538. unsigned char * __RPC_USER  HWND_UserMarshal(  unsigned long *, unsigned char *, HWND * ); 
  1539. unsigned char * __RPC_USER  HWND_UserUnmarshal(unsigned long *, unsigned char *, HWND * ); 
  1540. void                      __RPC_USER  HWND_UserFree(     unsigned long *, HWND * ); 
  1541. unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long *, unsigned long            , VARIANT * ); 
  1542. unsigned char * __RPC_USER  VARIANT_UserMarshal(  unsigned long *, unsigned char *, VARIANT * ); 
  1543. unsigned char * __RPC_USER  VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * ); 
  1544. void                      __RPC_USER  VARIANT_UserFree(     unsigned long *, VARIANT * ); 
  1545. /* end of Additional Prototypes */
  1546. #ifdef __cplusplus
  1547. }
  1548. #endif
  1549. #endif