Counter Strike : Global Offensive Source Code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

3354 lines
97 KiB

  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 vmr9.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 __vmr9_h__
  27. #define __vmr9_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IVMRImagePresenter9_FWD_DEFINED__
  33. #define __IVMRImagePresenter9_FWD_DEFINED__
  34. typedef interface IVMRImagePresenter9 IVMRImagePresenter9;
  35. #endif /* __IVMRImagePresenter9_FWD_DEFINED__ */
  36. #ifndef __IVMRSurfaceAllocator9_FWD_DEFINED__
  37. #define __IVMRSurfaceAllocator9_FWD_DEFINED__
  38. typedef interface IVMRSurfaceAllocator9 IVMRSurfaceAllocator9;
  39. #endif /* __IVMRSurfaceAllocator9_FWD_DEFINED__ */
  40. #ifndef __IVMRSurfaceAllocatorEx9_FWD_DEFINED__
  41. #define __IVMRSurfaceAllocatorEx9_FWD_DEFINED__
  42. typedef interface IVMRSurfaceAllocatorEx9 IVMRSurfaceAllocatorEx9;
  43. #endif /* __IVMRSurfaceAllocatorEx9_FWD_DEFINED__ */
  44. #ifndef __IVMRSurfaceAllocatorNotify9_FWD_DEFINED__
  45. #define __IVMRSurfaceAllocatorNotify9_FWD_DEFINED__
  46. typedef interface IVMRSurfaceAllocatorNotify9 IVMRSurfaceAllocatorNotify9;
  47. #endif /* __IVMRSurfaceAllocatorNotify9_FWD_DEFINED__ */
  48. #ifndef __IVMRWindowlessControl9_FWD_DEFINED__
  49. #define __IVMRWindowlessControl9_FWD_DEFINED__
  50. typedef interface IVMRWindowlessControl9 IVMRWindowlessControl9;
  51. #endif /* __IVMRWindowlessControl9_FWD_DEFINED__ */
  52. #ifndef __IVMRMixerControl9_FWD_DEFINED__
  53. #define __IVMRMixerControl9_FWD_DEFINED__
  54. typedef interface IVMRMixerControl9 IVMRMixerControl9;
  55. #endif /* __IVMRMixerControl9_FWD_DEFINED__ */
  56. #ifndef __IVMRMixerBitmap9_FWD_DEFINED__
  57. #define __IVMRMixerBitmap9_FWD_DEFINED__
  58. typedef interface IVMRMixerBitmap9 IVMRMixerBitmap9;
  59. #endif /* __IVMRMixerBitmap9_FWD_DEFINED__ */
  60. #ifndef __IVMRSurface9_FWD_DEFINED__
  61. #define __IVMRSurface9_FWD_DEFINED__
  62. typedef interface IVMRSurface9 IVMRSurface9;
  63. #endif /* __IVMRSurface9_FWD_DEFINED__ */
  64. #ifndef __IVMRImagePresenterConfig9_FWD_DEFINED__
  65. #define __IVMRImagePresenterConfig9_FWD_DEFINED__
  66. typedef interface IVMRImagePresenterConfig9 IVMRImagePresenterConfig9;
  67. #endif /* __IVMRImagePresenterConfig9_FWD_DEFINED__ */
  68. #ifndef __IVMRVideoStreamControl9_FWD_DEFINED__
  69. #define __IVMRVideoStreamControl9_FWD_DEFINED__
  70. typedef interface IVMRVideoStreamControl9 IVMRVideoStreamControl9;
  71. #endif /* __IVMRVideoStreamControl9_FWD_DEFINED__ */
  72. #ifndef __IVMRFilterConfig9_FWD_DEFINED__
  73. #define __IVMRFilterConfig9_FWD_DEFINED__
  74. typedef interface IVMRFilterConfig9 IVMRFilterConfig9;
  75. #endif /* __IVMRFilterConfig9_FWD_DEFINED__ */
  76. #ifndef __IVMRAspectRatioControl9_FWD_DEFINED__
  77. #define __IVMRAspectRatioControl9_FWD_DEFINED__
  78. typedef interface IVMRAspectRatioControl9 IVMRAspectRatioControl9;
  79. #endif /* __IVMRAspectRatioControl9_FWD_DEFINED__ */
  80. #ifndef __IVMRMonitorConfig9_FWD_DEFINED__
  81. #define __IVMRMonitorConfig9_FWD_DEFINED__
  82. typedef interface IVMRMonitorConfig9 IVMRMonitorConfig9;
  83. #endif /* __IVMRMonitorConfig9_FWD_DEFINED__ */
  84. #ifndef __IVMRDeinterlaceControl9_FWD_DEFINED__
  85. #define __IVMRDeinterlaceControl9_FWD_DEFINED__
  86. typedef interface IVMRDeinterlaceControl9 IVMRDeinterlaceControl9;
  87. #endif /* __IVMRDeinterlaceControl9_FWD_DEFINED__ */
  88. #ifndef __IVMRImageCompositor9_FWD_DEFINED__
  89. #define __IVMRImageCompositor9_FWD_DEFINED__
  90. typedef interface IVMRImageCompositor9 IVMRImageCompositor9;
  91. #endif /* __IVMRImageCompositor9_FWD_DEFINED__ */
  92. /* header files for imported files */
  93. #include "unknwn.h"
  94. #ifdef __cplusplus
  95. extern "C"{
  96. #endif
  97. void * __RPC_USER MIDL_user_allocate(size_t);
  98. void __RPC_USER MIDL_user_free( void * );
  99. /* interface __MIDL_itf_vmr9_0000 */
  100. /* [local] */
  101. #if 0
  102. typedef DWORD IDirect3DDevice9;
  103. typedef DWORD IDirect3DSurface9;
  104. typedef DWORD D3DFORMAT;
  105. typedef DWORD D3DCOLOR;
  106. typedef DWORD D3DPOOL;
  107. typedef LONGLONG REFERENCE_TIME;
  108. typedef DWORD *HMONITOR;
  109. typedef /* [public][public][public] */ struct __MIDL___MIDL_itf_vmr9_0000_0001
  110. {
  111. DWORD dw1;
  112. DWORD dw2;
  113. } AM_MEDIA_TYPE;
  114. #endif
  115. typedef /* [public] */
  116. enum __MIDL___MIDL_itf_vmr9_0000_0002
  117. { VMR9Sample_SyncPoint = 0x1,
  118. VMR9Sample_Preroll = 0x2,
  119. VMR9Sample_Discontinuity = 0x4,
  120. VMR9Sample_TimeValid = 0x8,
  121. VMR9Sample_SrcDstRectsValid = 0x10
  122. } VMR9PresentationFlags;
  123. typedef struct _VMR9PresentationInfo
  124. {
  125. DWORD dwFlags;
  126. IDirect3DSurface9 *lpSurf;
  127. REFERENCE_TIME rtStart;
  128. REFERENCE_TIME rtEnd;
  129. SIZE szAspectRatio;
  130. RECT rcSrc;
  131. RECT rcDst;
  132. DWORD dwReserved1;
  133. DWORD dwReserved2;
  134. } VMR9PresentationInfo;
  135. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0000_v0_0_c_ifspec;
  136. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0000_v0_0_s_ifspec;
  137. #ifndef __IVMRImagePresenter9_INTERFACE_DEFINED__
  138. #define __IVMRImagePresenter9_INTERFACE_DEFINED__
  139. /* interface IVMRImagePresenter9 */
  140. /* [unique][helpstring][uuid][local][object][local] */
  141. EXTERN_C const IID IID_IVMRImagePresenter9;
  142. #if defined(__cplusplus) && !defined(CINTERFACE)
  143. MIDL_INTERFACE("69188c61-12a3-40f0-8ffc-342e7b433fd7")
  144. IVMRImagePresenter9 : public IUnknown
  145. {
  146. public:
  147. virtual HRESULT STDMETHODCALLTYPE StartPresenting(
  148. /* [in] */ DWORD_PTR dwUserID) = 0;
  149. virtual HRESULT STDMETHODCALLTYPE StopPresenting(
  150. /* [in] */ DWORD_PTR dwUserID) = 0;
  151. virtual HRESULT STDMETHODCALLTYPE PresentImage(
  152. /* [in] */ DWORD_PTR dwUserID,
  153. /* [in] */ VMR9PresentationInfo *lpPresInfo) = 0;
  154. };
  155. #else /* C style interface */
  156. typedef struct IVMRImagePresenter9Vtbl
  157. {
  158. BEGIN_INTERFACE
  159. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  160. IVMRImagePresenter9 * This,
  161. /* [in] */ REFIID riid,
  162. /* [iid_is][out] */ void **ppvObject);
  163. ULONG ( STDMETHODCALLTYPE *AddRef )(
  164. IVMRImagePresenter9 * This);
  165. ULONG ( STDMETHODCALLTYPE *Release )(
  166. IVMRImagePresenter9 * This);
  167. HRESULT ( STDMETHODCALLTYPE *StartPresenting )(
  168. IVMRImagePresenter9 * This,
  169. /* [in] */ DWORD_PTR dwUserID);
  170. HRESULT ( STDMETHODCALLTYPE *StopPresenting )(
  171. IVMRImagePresenter9 * This,
  172. /* [in] */ DWORD_PTR dwUserID);
  173. HRESULT ( STDMETHODCALLTYPE *PresentImage )(
  174. IVMRImagePresenter9 * This,
  175. /* [in] */ DWORD_PTR dwUserID,
  176. /* [in] */ VMR9PresentationInfo *lpPresInfo);
  177. END_INTERFACE
  178. } IVMRImagePresenter9Vtbl;
  179. interface IVMRImagePresenter9
  180. {
  181. CONST_VTBL struct IVMRImagePresenter9Vtbl *lpVtbl;
  182. };
  183. #ifdef COBJMACROS
  184. #define IVMRImagePresenter9_QueryInterface(This,riid,ppvObject) \
  185. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  186. #define IVMRImagePresenter9_AddRef(This) \
  187. (This)->lpVtbl -> AddRef(This)
  188. #define IVMRImagePresenter9_Release(This) \
  189. (This)->lpVtbl -> Release(This)
  190. #define IVMRImagePresenter9_StartPresenting(This,dwUserID) \
  191. (This)->lpVtbl -> StartPresenting(This,dwUserID)
  192. #define IVMRImagePresenter9_StopPresenting(This,dwUserID) \
  193. (This)->lpVtbl -> StopPresenting(This,dwUserID)
  194. #define IVMRImagePresenter9_PresentImage(This,dwUserID,lpPresInfo) \
  195. (This)->lpVtbl -> PresentImage(This,dwUserID,lpPresInfo)
  196. #endif /* COBJMACROS */
  197. #endif /* C style interface */
  198. HRESULT STDMETHODCALLTYPE IVMRImagePresenter9_StartPresenting_Proxy(
  199. IVMRImagePresenter9 * This,
  200. /* [in] */ DWORD_PTR dwUserID);
  201. void __RPC_STUB IVMRImagePresenter9_StartPresenting_Stub(
  202. IRpcStubBuffer *This,
  203. IRpcChannelBuffer *_pRpcChannelBuffer,
  204. PRPC_MESSAGE _pRpcMessage,
  205. DWORD *_pdwStubPhase);
  206. HRESULT STDMETHODCALLTYPE IVMRImagePresenter9_StopPresenting_Proxy(
  207. IVMRImagePresenter9 * This,
  208. /* [in] */ DWORD_PTR dwUserID);
  209. void __RPC_STUB IVMRImagePresenter9_StopPresenting_Stub(
  210. IRpcStubBuffer *This,
  211. IRpcChannelBuffer *_pRpcChannelBuffer,
  212. PRPC_MESSAGE _pRpcMessage,
  213. DWORD *_pdwStubPhase);
  214. HRESULT STDMETHODCALLTYPE IVMRImagePresenter9_PresentImage_Proxy(
  215. IVMRImagePresenter9 * This,
  216. /* [in] */ DWORD_PTR dwUserID,
  217. /* [in] */ VMR9PresentationInfo *lpPresInfo);
  218. void __RPC_STUB IVMRImagePresenter9_PresentImage_Stub(
  219. IRpcStubBuffer *This,
  220. IRpcChannelBuffer *_pRpcChannelBuffer,
  221. PRPC_MESSAGE _pRpcMessage,
  222. DWORD *_pdwStubPhase);
  223. #endif /* __IVMRImagePresenter9_INTERFACE_DEFINED__ */
  224. /* interface __MIDL_itf_vmr9_0009 */
  225. /* [local] */
  226. typedef /* [public] */
  227. enum __MIDL___MIDL_itf_vmr9_0009_0001
  228. { VMR9AllocFlag_3DRenderTarget = 0x1,
  229. VMR9AllocFlag_DXVATarget = 0x2,
  230. VMR9AllocFlag_TextureSurface = 0x4,
  231. VMR9AllocFlag_OffscreenSurface = 0x8,
  232. VMR9AllocFlag_RGBDynamicSwitch = 0x10,
  233. VMR9AllocFlag_UsageReserved = 0xe0,
  234. VMR9AllocFlag_UsageMask = 0xff
  235. } VMR9SurfaceAllocationFlags;
  236. typedef struct _VMR9AllocationInfo
  237. {
  238. DWORD dwFlags;
  239. DWORD dwWidth;
  240. DWORD dwHeight;
  241. D3DFORMAT Format;
  242. D3DPOOL Pool;
  243. DWORD MinBuffers;
  244. SIZE szAspectRatio;
  245. SIZE szNativeSize;
  246. } VMR9AllocationInfo;
  247. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0009_v0_0_c_ifspec;
  248. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0009_v0_0_s_ifspec;
  249. #ifndef __IVMRSurfaceAllocator9_INTERFACE_DEFINED__
  250. #define __IVMRSurfaceAllocator9_INTERFACE_DEFINED__
  251. /* interface IVMRSurfaceAllocator9 */
  252. /* [unique][helpstring][uuid][local][object][local] */
  253. EXTERN_C const IID IID_IVMRSurfaceAllocator9;
  254. #if defined(__cplusplus) && !defined(CINTERFACE)
  255. MIDL_INTERFACE("8d5148ea-3f5d-46cf-9df1-d1b896eedb1f")
  256. IVMRSurfaceAllocator9 : public IUnknown
  257. {
  258. public:
  259. virtual HRESULT STDMETHODCALLTYPE InitializeDevice(
  260. /* [in] */ DWORD_PTR dwUserID,
  261. /* [in] */ VMR9AllocationInfo *lpAllocInfo,
  262. /* [out][in] */ DWORD *lpNumBuffers) = 0;
  263. virtual HRESULT STDMETHODCALLTYPE TerminateDevice(
  264. /* [in] */ DWORD_PTR dwID) = 0;
  265. virtual HRESULT STDMETHODCALLTYPE GetSurface(
  266. /* [in] */ DWORD_PTR dwUserID,
  267. /* [in] */ DWORD SurfaceIndex,
  268. /* [in] */ DWORD SurfaceFlags,
  269. /* [out] */ IDirect3DSurface9 **lplpSurface) = 0;
  270. virtual HRESULT STDMETHODCALLTYPE AdviseNotify(
  271. /* [in] */ IVMRSurfaceAllocatorNotify9 *lpIVMRSurfAllocNotify) = 0;
  272. };
  273. #else /* C style interface */
  274. typedef struct IVMRSurfaceAllocator9Vtbl
  275. {
  276. BEGIN_INTERFACE
  277. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  278. IVMRSurfaceAllocator9 * This,
  279. /* [in] */ REFIID riid,
  280. /* [iid_is][out] */ void **ppvObject);
  281. ULONG ( STDMETHODCALLTYPE *AddRef )(
  282. IVMRSurfaceAllocator9 * This);
  283. ULONG ( STDMETHODCALLTYPE *Release )(
  284. IVMRSurfaceAllocator9 * This);
  285. HRESULT ( STDMETHODCALLTYPE *InitializeDevice )(
  286. IVMRSurfaceAllocator9 * This,
  287. /* [in] */ DWORD_PTR dwUserID,
  288. /* [in] */ VMR9AllocationInfo *lpAllocInfo,
  289. /* [out][in] */ DWORD *lpNumBuffers);
  290. HRESULT ( STDMETHODCALLTYPE *TerminateDevice )(
  291. IVMRSurfaceAllocator9 * This,
  292. /* [in] */ DWORD_PTR dwID);
  293. HRESULT ( STDMETHODCALLTYPE *GetSurface )(
  294. IVMRSurfaceAllocator9 * This,
  295. /* [in] */ DWORD_PTR dwUserID,
  296. /* [in] */ DWORD SurfaceIndex,
  297. /* [in] */ DWORD SurfaceFlags,
  298. /* [out] */ IDirect3DSurface9 **lplpSurface);
  299. HRESULT ( STDMETHODCALLTYPE *AdviseNotify )(
  300. IVMRSurfaceAllocator9 * This,
  301. /* [in] */ IVMRSurfaceAllocatorNotify9 *lpIVMRSurfAllocNotify);
  302. END_INTERFACE
  303. } IVMRSurfaceAllocator9Vtbl;
  304. interface IVMRSurfaceAllocator9
  305. {
  306. CONST_VTBL struct IVMRSurfaceAllocator9Vtbl *lpVtbl;
  307. };
  308. #ifdef COBJMACROS
  309. #define IVMRSurfaceAllocator9_QueryInterface(This,riid,ppvObject) \
  310. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  311. #define IVMRSurfaceAllocator9_AddRef(This) \
  312. (This)->lpVtbl -> AddRef(This)
  313. #define IVMRSurfaceAllocator9_Release(This) \
  314. (This)->lpVtbl -> Release(This)
  315. #define IVMRSurfaceAllocator9_InitializeDevice(This,dwUserID,lpAllocInfo,lpNumBuffers) \
  316. (This)->lpVtbl -> InitializeDevice(This,dwUserID,lpAllocInfo,lpNumBuffers)
  317. #define IVMRSurfaceAllocator9_TerminateDevice(This,dwID) \
  318. (This)->lpVtbl -> TerminateDevice(This,dwID)
  319. #define IVMRSurfaceAllocator9_GetSurface(This,dwUserID,SurfaceIndex,SurfaceFlags,lplpSurface) \
  320. (This)->lpVtbl -> GetSurface(This,dwUserID,SurfaceIndex,SurfaceFlags,lplpSurface)
  321. #define IVMRSurfaceAllocator9_AdviseNotify(This,lpIVMRSurfAllocNotify) \
  322. (This)->lpVtbl -> AdviseNotify(This,lpIVMRSurfAllocNotify)
  323. #endif /* COBJMACROS */
  324. #endif /* C style interface */
  325. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocator9_InitializeDevice_Proxy(
  326. IVMRSurfaceAllocator9 * This,
  327. /* [in] */ DWORD_PTR dwUserID,
  328. /* [in] */ VMR9AllocationInfo *lpAllocInfo,
  329. /* [out][in] */ DWORD *lpNumBuffers);
  330. void __RPC_STUB IVMRSurfaceAllocator9_InitializeDevice_Stub(
  331. IRpcStubBuffer *This,
  332. IRpcChannelBuffer *_pRpcChannelBuffer,
  333. PRPC_MESSAGE _pRpcMessage,
  334. DWORD *_pdwStubPhase);
  335. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocator9_TerminateDevice_Proxy(
  336. IVMRSurfaceAllocator9 * This,
  337. /* [in] */ DWORD_PTR dwID);
  338. void __RPC_STUB IVMRSurfaceAllocator9_TerminateDevice_Stub(
  339. IRpcStubBuffer *This,
  340. IRpcChannelBuffer *_pRpcChannelBuffer,
  341. PRPC_MESSAGE _pRpcMessage,
  342. DWORD *_pdwStubPhase);
  343. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocator9_GetSurface_Proxy(
  344. IVMRSurfaceAllocator9 * This,
  345. /* [in] */ DWORD_PTR dwUserID,
  346. /* [in] */ DWORD SurfaceIndex,
  347. /* [in] */ DWORD SurfaceFlags,
  348. /* [out] */ IDirect3DSurface9 **lplpSurface);
  349. void __RPC_STUB IVMRSurfaceAllocator9_GetSurface_Stub(
  350. IRpcStubBuffer *This,
  351. IRpcChannelBuffer *_pRpcChannelBuffer,
  352. PRPC_MESSAGE _pRpcMessage,
  353. DWORD *_pdwStubPhase);
  354. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocator9_AdviseNotify_Proxy(
  355. IVMRSurfaceAllocator9 * This,
  356. /* [in] */ IVMRSurfaceAllocatorNotify9 *lpIVMRSurfAllocNotify);
  357. void __RPC_STUB IVMRSurfaceAllocator9_AdviseNotify_Stub(
  358. IRpcStubBuffer *This,
  359. IRpcChannelBuffer *_pRpcChannelBuffer,
  360. PRPC_MESSAGE _pRpcMessage,
  361. DWORD *_pdwStubPhase);
  362. #endif /* __IVMRSurfaceAllocator9_INTERFACE_DEFINED__ */
  363. #ifndef __IVMRSurfaceAllocatorEx9_INTERFACE_DEFINED__
  364. #define __IVMRSurfaceAllocatorEx9_INTERFACE_DEFINED__
  365. /* interface IVMRSurfaceAllocatorEx9 */
  366. /* [unique][helpstring][uuid][local][object][local] */
  367. EXTERN_C const IID IID_IVMRSurfaceAllocatorEx9;
  368. #if defined(__cplusplus) && !defined(CINTERFACE)
  369. MIDL_INTERFACE("6de9a68a-a928-4522-bf57-655ae3866456")
  370. IVMRSurfaceAllocatorEx9 : public IVMRSurfaceAllocator9
  371. {
  372. public:
  373. virtual HRESULT STDMETHODCALLTYPE GetSurfaceEx(
  374. /* [in] */ DWORD_PTR dwUserID,
  375. /* [in] */ DWORD SurfaceIndex,
  376. /* [in] */ DWORD SurfaceFlags,
  377. /* [out] */ IDirect3DSurface9 **lplpSurface,
  378. /* [out] */ RECT *lprcDst) = 0;
  379. };
  380. #else /* C style interface */
  381. typedef struct IVMRSurfaceAllocatorEx9Vtbl
  382. {
  383. BEGIN_INTERFACE
  384. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  385. IVMRSurfaceAllocatorEx9 * This,
  386. /* [in] */ REFIID riid,
  387. /* [iid_is][out] */ void **ppvObject);
  388. ULONG ( STDMETHODCALLTYPE *AddRef )(
  389. IVMRSurfaceAllocatorEx9 * This);
  390. ULONG ( STDMETHODCALLTYPE *Release )(
  391. IVMRSurfaceAllocatorEx9 * This);
  392. HRESULT ( STDMETHODCALLTYPE *InitializeDevice )(
  393. IVMRSurfaceAllocatorEx9 * This,
  394. /* [in] */ DWORD_PTR dwUserID,
  395. /* [in] */ VMR9AllocationInfo *lpAllocInfo,
  396. /* [out][in] */ DWORD *lpNumBuffers);
  397. HRESULT ( STDMETHODCALLTYPE *TerminateDevice )(
  398. IVMRSurfaceAllocatorEx9 * This,
  399. /* [in] */ DWORD_PTR dwID);
  400. HRESULT ( STDMETHODCALLTYPE *GetSurface )(
  401. IVMRSurfaceAllocatorEx9 * This,
  402. /* [in] */ DWORD_PTR dwUserID,
  403. /* [in] */ DWORD SurfaceIndex,
  404. /* [in] */ DWORD SurfaceFlags,
  405. /* [out] */ IDirect3DSurface9 **lplpSurface);
  406. HRESULT ( STDMETHODCALLTYPE *AdviseNotify )(
  407. IVMRSurfaceAllocatorEx9 * This,
  408. /* [in] */ IVMRSurfaceAllocatorNotify9 *lpIVMRSurfAllocNotify);
  409. HRESULT ( STDMETHODCALLTYPE *GetSurfaceEx )(
  410. IVMRSurfaceAllocatorEx9 * This,
  411. /* [in] */ DWORD_PTR dwUserID,
  412. /* [in] */ DWORD SurfaceIndex,
  413. /* [in] */ DWORD SurfaceFlags,
  414. /* [out] */ IDirect3DSurface9 **lplpSurface,
  415. /* [out] */ RECT *lprcDst);
  416. END_INTERFACE
  417. } IVMRSurfaceAllocatorEx9Vtbl;
  418. interface IVMRSurfaceAllocatorEx9
  419. {
  420. CONST_VTBL struct IVMRSurfaceAllocatorEx9Vtbl *lpVtbl;
  421. };
  422. #ifdef COBJMACROS
  423. #define IVMRSurfaceAllocatorEx9_QueryInterface(This,riid,ppvObject) \
  424. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  425. #define IVMRSurfaceAllocatorEx9_AddRef(This) \
  426. (This)->lpVtbl -> AddRef(This)
  427. #define IVMRSurfaceAllocatorEx9_Release(This) \
  428. (This)->lpVtbl -> Release(This)
  429. #define IVMRSurfaceAllocatorEx9_InitializeDevice(This,dwUserID,lpAllocInfo,lpNumBuffers) \
  430. (This)->lpVtbl -> InitializeDevice(This,dwUserID,lpAllocInfo,lpNumBuffers)
  431. #define IVMRSurfaceAllocatorEx9_TerminateDevice(This,dwID) \
  432. (This)->lpVtbl -> TerminateDevice(This,dwID)
  433. #define IVMRSurfaceAllocatorEx9_GetSurface(This,dwUserID,SurfaceIndex,SurfaceFlags,lplpSurface) \
  434. (This)->lpVtbl -> GetSurface(This,dwUserID,SurfaceIndex,SurfaceFlags,lplpSurface)
  435. #define IVMRSurfaceAllocatorEx9_AdviseNotify(This,lpIVMRSurfAllocNotify) \
  436. (This)->lpVtbl -> AdviseNotify(This,lpIVMRSurfAllocNotify)
  437. #define IVMRSurfaceAllocatorEx9_GetSurfaceEx(This,dwUserID,SurfaceIndex,SurfaceFlags,lplpSurface,lprcDst) \
  438. (This)->lpVtbl -> GetSurfaceEx(This,dwUserID,SurfaceIndex,SurfaceFlags,lplpSurface,lprcDst)
  439. #endif /* COBJMACROS */
  440. #endif /* C style interface */
  441. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocatorEx9_GetSurfaceEx_Proxy(
  442. IVMRSurfaceAllocatorEx9 * This,
  443. /* [in] */ DWORD_PTR dwUserID,
  444. /* [in] */ DWORD SurfaceIndex,
  445. /* [in] */ DWORD SurfaceFlags,
  446. /* [out] */ IDirect3DSurface9 **lplpSurface,
  447. /* [out] */ RECT *lprcDst);
  448. void __RPC_STUB IVMRSurfaceAllocatorEx9_GetSurfaceEx_Stub(
  449. IRpcStubBuffer *This,
  450. IRpcChannelBuffer *_pRpcChannelBuffer,
  451. PRPC_MESSAGE _pRpcMessage,
  452. DWORD *_pdwStubPhase);
  453. #endif /* __IVMRSurfaceAllocatorEx9_INTERFACE_DEFINED__ */
  454. #ifndef __IVMRSurfaceAllocatorNotify9_INTERFACE_DEFINED__
  455. #define __IVMRSurfaceAllocatorNotify9_INTERFACE_DEFINED__
  456. /* interface IVMRSurfaceAllocatorNotify9 */
  457. /* [unique][helpstring][uuid][local][object][local] */
  458. EXTERN_C const IID IID_IVMRSurfaceAllocatorNotify9;
  459. #if defined(__cplusplus) && !defined(CINTERFACE)
  460. MIDL_INTERFACE("dca3f5df-bb3a-4d03-bd81-84614bfbfa0c")
  461. IVMRSurfaceAllocatorNotify9 : public IUnknown
  462. {
  463. public:
  464. virtual HRESULT STDMETHODCALLTYPE AdviseSurfaceAllocator(
  465. /* [in] */ DWORD_PTR dwUserID,
  466. /* [in] */ IVMRSurfaceAllocator9 *lpIVRMSurfaceAllocator) = 0;
  467. virtual HRESULT STDMETHODCALLTYPE SetD3DDevice(
  468. /* [in] */ IDirect3DDevice9 *lpD3DDevice,
  469. /* [in] */ HMONITOR hMonitor) = 0;
  470. virtual HRESULT STDMETHODCALLTYPE ChangeD3DDevice(
  471. /* [in] */ IDirect3DDevice9 *lpD3DDevice,
  472. /* [in] */ HMONITOR hMonitor) = 0;
  473. virtual HRESULT STDMETHODCALLTYPE AllocateSurfaceHelper(
  474. /* [in] */ VMR9AllocationInfo *lpAllocInfo,
  475. /* [out][in] */ DWORD *lpNumBuffers,
  476. /* [out] */ IDirect3DSurface9 **lplpSurface) = 0;
  477. virtual HRESULT STDMETHODCALLTYPE NotifyEvent(
  478. /* [in] */ LONG EventCode,
  479. /* [in] */ LONG_PTR Param1,
  480. /* [in] */ LONG_PTR Param2) = 0;
  481. };
  482. #else /* C style interface */
  483. typedef struct IVMRSurfaceAllocatorNotify9Vtbl
  484. {
  485. BEGIN_INTERFACE
  486. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  487. IVMRSurfaceAllocatorNotify9 * This,
  488. /* [in] */ REFIID riid,
  489. /* [iid_is][out] */ void **ppvObject);
  490. ULONG ( STDMETHODCALLTYPE *AddRef )(
  491. IVMRSurfaceAllocatorNotify9 * This);
  492. ULONG ( STDMETHODCALLTYPE *Release )(
  493. IVMRSurfaceAllocatorNotify9 * This);
  494. HRESULT ( STDMETHODCALLTYPE *AdviseSurfaceAllocator )(
  495. IVMRSurfaceAllocatorNotify9 * This,
  496. /* [in] */ DWORD_PTR dwUserID,
  497. /* [in] */ IVMRSurfaceAllocator9 *lpIVRMSurfaceAllocator);
  498. HRESULT ( STDMETHODCALLTYPE *SetD3DDevice )(
  499. IVMRSurfaceAllocatorNotify9 * This,
  500. /* [in] */ IDirect3DDevice9 *lpD3DDevice,
  501. /* [in] */ HMONITOR hMonitor);
  502. HRESULT ( STDMETHODCALLTYPE *ChangeD3DDevice )(
  503. IVMRSurfaceAllocatorNotify9 * This,
  504. /* [in] */ IDirect3DDevice9 *lpD3DDevice,
  505. /* [in] */ HMONITOR hMonitor);
  506. HRESULT ( STDMETHODCALLTYPE *AllocateSurfaceHelper )(
  507. IVMRSurfaceAllocatorNotify9 * This,
  508. /* [in] */ VMR9AllocationInfo *lpAllocInfo,
  509. /* [out][in] */ DWORD *lpNumBuffers,
  510. /* [out] */ IDirect3DSurface9 **lplpSurface);
  511. HRESULT ( STDMETHODCALLTYPE *NotifyEvent )(
  512. IVMRSurfaceAllocatorNotify9 * This,
  513. /* [in] */ LONG EventCode,
  514. /* [in] */ LONG_PTR Param1,
  515. /* [in] */ LONG_PTR Param2);
  516. END_INTERFACE
  517. } IVMRSurfaceAllocatorNotify9Vtbl;
  518. interface IVMRSurfaceAllocatorNotify9
  519. {
  520. CONST_VTBL struct IVMRSurfaceAllocatorNotify9Vtbl *lpVtbl;
  521. };
  522. #ifdef COBJMACROS
  523. #define IVMRSurfaceAllocatorNotify9_QueryInterface(This,riid,ppvObject) \
  524. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  525. #define IVMRSurfaceAllocatorNotify9_AddRef(This) \
  526. (This)->lpVtbl -> AddRef(This)
  527. #define IVMRSurfaceAllocatorNotify9_Release(This) \
  528. (This)->lpVtbl -> Release(This)
  529. #define IVMRSurfaceAllocatorNotify9_AdviseSurfaceAllocator(This,dwUserID,lpIVRMSurfaceAllocator) \
  530. (This)->lpVtbl -> AdviseSurfaceAllocator(This,dwUserID,lpIVRMSurfaceAllocator)
  531. #define IVMRSurfaceAllocatorNotify9_SetD3DDevice(This,lpD3DDevice,hMonitor) \
  532. (This)->lpVtbl -> SetD3DDevice(This,lpD3DDevice,hMonitor)
  533. #define IVMRSurfaceAllocatorNotify9_ChangeD3DDevice(This,lpD3DDevice,hMonitor) \
  534. (This)->lpVtbl -> ChangeD3DDevice(This,lpD3DDevice,hMonitor)
  535. #define IVMRSurfaceAllocatorNotify9_AllocateSurfaceHelper(This,lpAllocInfo,lpNumBuffers,lplpSurface) \
  536. (This)->lpVtbl -> AllocateSurfaceHelper(This,lpAllocInfo,lpNumBuffers,lplpSurface)
  537. #define IVMRSurfaceAllocatorNotify9_NotifyEvent(This,EventCode,Param1,Param2) \
  538. (This)->lpVtbl -> NotifyEvent(This,EventCode,Param1,Param2)
  539. #endif /* COBJMACROS */
  540. #endif /* C style interface */
  541. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocatorNotify9_AdviseSurfaceAllocator_Proxy(
  542. IVMRSurfaceAllocatorNotify9 * This,
  543. /* [in] */ DWORD_PTR dwUserID,
  544. /* [in] */ IVMRSurfaceAllocator9 *lpIVRMSurfaceAllocator);
  545. void __RPC_STUB IVMRSurfaceAllocatorNotify9_AdviseSurfaceAllocator_Stub(
  546. IRpcStubBuffer *This,
  547. IRpcChannelBuffer *_pRpcChannelBuffer,
  548. PRPC_MESSAGE _pRpcMessage,
  549. DWORD *_pdwStubPhase);
  550. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocatorNotify9_SetD3DDevice_Proxy(
  551. IVMRSurfaceAllocatorNotify9 * This,
  552. /* [in] */ IDirect3DDevice9 *lpD3DDevice,
  553. /* [in] */ HMONITOR hMonitor);
  554. void __RPC_STUB IVMRSurfaceAllocatorNotify9_SetD3DDevice_Stub(
  555. IRpcStubBuffer *This,
  556. IRpcChannelBuffer *_pRpcChannelBuffer,
  557. PRPC_MESSAGE _pRpcMessage,
  558. DWORD *_pdwStubPhase);
  559. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocatorNotify9_ChangeD3DDevice_Proxy(
  560. IVMRSurfaceAllocatorNotify9 * This,
  561. /* [in] */ IDirect3DDevice9 *lpD3DDevice,
  562. /* [in] */ HMONITOR hMonitor);
  563. void __RPC_STUB IVMRSurfaceAllocatorNotify9_ChangeD3DDevice_Stub(
  564. IRpcStubBuffer *This,
  565. IRpcChannelBuffer *_pRpcChannelBuffer,
  566. PRPC_MESSAGE _pRpcMessage,
  567. DWORD *_pdwStubPhase);
  568. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocatorNotify9_AllocateSurfaceHelper_Proxy(
  569. IVMRSurfaceAllocatorNotify9 * This,
  570. /* [in] */ VMR9AllocationInfo *lpAllocInfo,
  571. /* [out][in] */ DWORD *lpNumBuffers,
  572. /* [out] */ IDirect3DSurface9 **lplpSurface);
  573. void __RPC_STUB IVMRSurfaceAllocatorNotify9_AllocateSurfaceHelper_Stub(
  574. IRpcStubBuffer *This,
  575. IRpcChannelBuffer *_pRpcChannelBuffer,
  576. PRPC_MESSAGE _pRpcMessage,
  577. DWORD *_pdwStubPhase);
  578. HRESULT STDMETHODCALLTYPE IVMRSurfaceAllocatorNotify9_NotifyEvent_Proxy(
  579. IVMRSurfaceAllocatorNotify9 * This,
  580. /* [in] */ LONG EventCode,
  581. /* [in] */ LONG_PTR Param1,
  582. /* [in] */ LONG_PTR Param2);
  583. void __RPC_STUB IVMRSurfaceAllocatorNotify9_NotifyEvent_Stub(
  584. IRpcStubBuffer *This,
  585. IRpcChannelBuffer *_pRpcChannelBuffer,
  586. PRPC_MESSAGE _pRpcMessage,
  587. DWORD *_pdwStubPhase);
  588. #endif /* __IVMRSurfaceAllocatorNotify9_INTERFACE_DEFINED__ */
  589. /* interface __MIDL_itf_vmr9_0012 */
  590. /* [local] */
  591. typedef /* [public] */
  592. enum __MIDL___MIDL_itf_vmr9_0012_0001
  593. { VMR9ARMode_None = 0,
  594. VMR9ARMode_LetterBox = VMR9ARMode_None + 1
  595. } VMR9AspectRatioMode;
  596. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0012_v0_0_c_ifspec;
  597. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0012_v0_0_s_ifspec;
  598. #ifndef __IVMRWindowlessControl9_INTERFACE_DEFINED__
  599. #define __IVMRWindowlessControl9_INTERFACE_DEFINED__
  600. /* interface IVMRWindowlessControl9 */
  601. /* [unique][helpstring][uuid][local][object][local] */
  602. EXTERN_C const IID IID_IVMRWindowlessControl9;
  603. #if defined(__cplusplus) && !defined(CINTERFACE)
  604. MIDL_INTERFACE("8f537d09-f85e-4414-b23b-502e54c79927")
  605. IVMRWindowlessControl9 : public IUnknown
  606. {
  607. public:
  608. virtual HRESULT STDMETHODCALLTYPE GetNativeVideoSize(
  609. /* [out] */ LONG *lpWidth,
  610. /* [out] */ LONG *lpHeight,
  611. /* [out] */ LONG *lpARWidth,
  612. /* [out] */ LONG *lpARHeight) = 0;
  613. virtual HRESULT STDMETHODCALLTYPE GetMinIdealVideoSize(
  614. /* [out] */ LONG *lpWidth,
  615. /* [out] */ LONG *lpHeight) = 0;
  616. virtual HRESULT STDMETHODCALLTYPE GetMaxIdealVideoSize(
  617. /* [out] */ LONG *lpWidth,
  618. /* [out] */ LONG *lpHeight) = 0;
  619. virtual HRESULT STDMETHODCALLTYPE SetVideoPosition(
  620. /* [in] */ const LPRECT lpSRCRect,
  621. /* [in] */ const LPRECT lpDSTRect) = 0;
  622. virtual HRESULT STDMETHODCALLTYPE GetVideoPosition(
  623. /* [out] */ LPRECT lpSRCRect,
  624. /* [out] */ LPRECT lpDSTRect) = 0;
  625. virtual HRESULT STDMETHODCALLTYPE GetAspectRatioMode(
  626. /* [out] */ DWORD *lpAspectRatioMode) = 0;
  627. virtual HRESULT STDMETHODCALLTYPE SetAspectRatioMode(
  628. /* [in] */ DWORD AspectRatioMode) = 0;
  629. virtual HRESULT STDMETHODCALLTYPE SetVideoClippingWindow(
  630. /* [in] */ HWND hwnd) = 0;
  631. virtual HRESULT STDMETHODCALLTYPE RepaintVideo(
  632. /* [in] */ HWND hwnd,
  633. /* [in] */ HDC hdc) = 0;
  634. virtual HRESULT STDMETHODCALLTYPE DisplayModeChanged( void) = 0;
  635. virtual HRESULT STDMETHODCALLTYPE GetCurrentImage(
  636. /* [out] */ BYTE **lpDib) = 0;
  637. virtual HRESULT STDMETHODCALLTYPE SetBorderColor(
  638. /* [in] */ COLORREF Clr) = 0;
  639. virtual HRESULT STDMETHODCALLTYPE GetBorderColor(
  640. /* [out] */ COLORREF *lpClr) = 0;
  641. };
  642. #else /* C style interface */
  643. typedef struct IVMRWindowlessControl9Vtbl
  644. {
  645. BEGIN_INTERFACE
  646. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  647. IVMRWindowlessControl9 * This,
  648. /* [in] */ REFIID riid,
  649. /* [iid_is][out] */ void **ppvObject);
  650. ULONG ( STDMETHODCALLTYPE *AddRef )(
  651. IVMRWindowlessControl9 * This);
  652. ULONG ( STDMETHODCALLTYPE *Release )(
  653. IVMRWindowlessControl9 * This);
  654. HRESULT ( STDMETHODCALLTYPE *GetNativeVideoSize )(
  655. IVMRWindowlessControl9 * This,
  656. /* [out] */ LONG *lpWidth,
  657. /* [out] */ LONG *lpHeight,
  658. /* [out] */ LONG *lpARWidth,
  659. /* [out] */ LONG *lpARHeight);
  660. HRESULT ( STDMETHODCALLTYPE *GetMinIdealVideoSize )(
  661. IVMRWindowlessControl9 * This,
  662. /* [out] */ LONG *lpWidth,
  663. /* [out] */ LONG *lpHeight);
  664. HRESULT ( STDMETHODCALLTYPE *GetMaxIdealVideoSize )(
  665. IVMRWindowlessControl9 * This,
  666. /* [out] */ LONG *lpWidth,
  667. /* [out] */ LONG *lpHeight);
  668. HRESULT ( STDMETHODCALLTYPE *SetVideoPosition )(
  669. IVMRWindowlessControl9 * This,
  670. /* [in] */ const LPRECT lpSRCRect,
  671. /* [in] */ const LPRECT lpDSTRect);
  672. HRESULT ( STDMETHODCALLTYPE *GetVideoPosition )(
  673. IVMRWindowlessControl9 * This,
  674. /* [out] */ LPRECT lpSRCRect,
  675. /* [out] */ LPRECT lpDSTRect);
  676. HRESULT ( STDMETHODCALLTYPE *GetAspectRatioMode )(
  677. IVMRWindowlessControl9 * This,
  678. /* [out] */ DWORD *lpAspectRatioMode);
  679. HRESULT ( STDMETHODCALLTYPE *SetAspectRatioMode )(
  680. IVMRWindowlessControl9 * This,
  681. /* [in] */ DWORD AspectRatioMode);
  682. HRESULT ( STDMETHODCALLTYPE *SetVideoClippingWindow )(
  683. IVMRWindowlessControl9 * This,
  684. /* [in] */ HWND hwnd);
  685. HRESULT ( STDMETHODCALLTYPE *RepaintVideo )(
  686. IVMRWindowlessControl9 * This,
  687. /* [in] */ HWND hwnd,
  688. /* [in] */ HDC hdc);
  689. HRESULT ( STDMETHODCALLTYPE *DisplayModeChanged )(
  690. IVMRWindowlessControl9 * This);
  691. HRESULT ( STDMETHODCALLTYPE *GetCurrentImage )(
  692. IVMRWindowlessControl9 * This,
  693. /* [out] */ BYTE **lpDib);
  694. HRESULT ( STDMETHODCALLTYPE *SetBorderColor )(
  695. IVMRWindowlessControl9 * This,
  696. /* [in] */ COLORREF Clr);
  697. HRESULT ( STDMETHODCALLTYPE *GetBorderColor )(
  698. IVMRWindowlessControl9 * This,
  699. /* [out] */ COLORREF *lpClr);
  700. END_INTERFACE
  701. } IVMRWindowlessControl9Vtbl;
  702. interface IVMRWindowlessControl9
  703. {
  704. CONST_VTBL struct IVMRWindowlessControl9Vtbl *lpVtbl;
  705. };
  706. #ifdef COBJMACROS
  707. #define IVMRWindowlessControl9_QueryInterface(This,riid,ppvObject) \
  708. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  709. #define IVMRWindowlessControl9_AddRef(This) \
  710. (This)->lpVtbl -> AddRef(This)
  711. #define IVMRWindowlessControl9_Release(This) \
  712. (This)->lpVtbl -> Release(This)
  713. #define IVMRWindowlessControl9_GetNativeVideoSize(This,lpWidth,lpHeight,lpARWidth,lpARHeight) \
  714. (This)->lpVtbl -> GetNativeVideoSize(This,lpWidth,lpHeight,lpARWidth,lpARHeight)
  715. #define IVMRWindowlessControl9_GetMinIdealVideoSize(This,lpWidth,lpHeight) \
  716. (This)->lpVtbl -> GetMinIdealVideoSize(This,lpWidth,lpHeight)
  717. #define IVMRWindowlessControl9_GetMaxIdealVideoSize(This,lpWidth,lpHeight) \
  718. (This)->lpVtbl -> GetMaxIdealVideoSize(This,lpWidth,lpHeight)
  719. #define IVMRWindowlessControl9_SetVideoPosition(This,lpSRCRect,lpDSTRect) \
  720. (This)->lpVtbl -> SetVideoPosition(This,lpSRCRect,lpDSTRect)
  721. #define IVMRWindowlessControl9_GetVideoPosition(This,lpSRCRect,lpDSTRect) \
  722. (This)->lpVtbl -> GetVideoPosition(This,lpSRCRect,lpDSTRect)
  723. #define IVMRWindowlessControl9_GetAspectRatioMode(This,lpAspectRatioMode) \
  724. (This)->lpVtbl -> GetAspectRatioMode(This,lpAspectRatioMode)
  725. #define IVMRWindowlessControl9_SetAspectRatioMode(This,AspectRatioMode) \
  726. (This)->lpVtbl -> SetAspectRatioMode(This,AspectRatioMode)
  727. #define IVMRWindowlessControl9_SetVideoClippingWindow(This,hwnd) \
  728. (This)->lpVtbl -> SetVideoClippingWindow(This,hwnd)
  729. #define IVMRWindowlessControl9_RepaintVideo(This,hwnd,hdc) \
  730. (This)->lpVtbl -> RepaintVideo(This,hwnd,hdc)
  731. #define IVMRWindowlessControl9_DisplayModeChanged(This) \
  732. (This)->lpVtbl -> DisplayModeChanged(This)
  733. #define IVMRWindowlessControl9_GetCurrentImage(This,lpDib) \
  734. (This)->lpVtbl -> GetCurrentImage(This,lpDib)
  735. #define IVMRWindowlessControl9_SetBorderColor(This,Clr) \
  736. (This)->lpVtbl -> SetBorderColor(This,Clr)
  737. #define IVMRWindowlessControl9_GetBorderColor(This,lpClr) \
  738. (This)->lpVtbl -> GetBorderColor(This,lpClr)
  739. #endif /* COBJMACROS */
  740. #endif /* C style interface */
  741. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetNativeVideoSize_Proxy(
  742. IVMRWindowlessControl9 * This,
  743. /* [out] */ LONG *lpWidth,
  744. /* [out] */ LONG *lpHeight,
  745. /* [out] */ LONG *lpARWidth,
  746. /* [out] */ LONG *lpARHeight);
  747. void __RPC_STUB IVMRWindowlessControl9_GetNativeVideoSize_Stub(
  748. IRpcStubBuffer *This,
  749. IRpcChannelBuffer *_pRpcChannelBuffer,
  750. PRPC_MESSAGE _pRpcMessage,
  751. DWORD *_pdwStubPhase);
  752. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetMinIdealVideoSize_Proxy(
  753. IVMRWindowlessControl9 * This,
  754. /* [out] */ LONG *lpWidth,
  755. /* [out] */ LONG *lpHeight);
  756. void __RPC_STUB IVMRWindowlessControl9_GetMinIdealVideoSize_Stub(
  757. IRpcStubBuffer *This,
  758. IRpcChannelBuffer *_pRpcChannelBuffer,
  759. PRPC_MESSAGE _pRpcMessage,
  760. DWORD *_pdwStubPhase);
  761. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetMaxIdealVideoSize_Proxy(
  762. IVMRWindowlessControl9 * This,
  763. /* [out] */ LONG *lpWidth,
  764. /* [out] */ LONG *lpHeight);
  765. void __RPC_STUB IVMRWindowlessControl9_GetMaxIdealVideoSize_Stub(
  766. IRpcStubBuffer *This,
  767. IRpcChannelBuffer *_pRpcChannelBuffer,
  768. PRPC_MESSAGE _pRpcMessage,
  769. DWORD *_pdwStubPhase);
  770. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_SetVideoPosition_Proxy(
  771. IVMRWindowlessControl9 * This,
  772. /* [in] */ const LPRECT lpSRCRect,
  773. /* [in] */ const LPRECT lpDSTRect);
  774. void __RPC_STUB IVMRWindowlessControl9_SetVideoPosition_Stub(
  775. IRpcStubBuffer *This,
  776. IRpcChannelBuffer *_pRpcChannelBuffer,
  777. PRPC_MESSAGE _pRpcMessage,
  778. DWORD *_pdwStubPhase);
  779. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetVideoPosition_Proxy(
  780. IVMRWindowlessControl9 * This,
  781. /* [out] */ LPRECT lpSRCRect,
  782. /* [out] */ LPRECT lpDSTRect);
  783. void __RPC_STUB IVMRWindowlessControl9_GetVideoPosition_Stub(
  784. IRpcStubBuffer *This,
  785. IRpcChannelBuffer *_pRpcChannelBuffer,
  786. PRPC_MESSAGE _pRpcMessage,
  787. DWORD *_pdwStubPhase);
  788. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetAspectRatioMode_Proxy(
  789. IVMRWindowlessControl9 * This,
  790. /* [out] */ DWORD *lpAspectRatioMode);
  791. void __RPC_STUB IVMRWindowlessControl9_GetAspectRatioMode_Stub(
  792. IRpcStubBuffer *This,
  793. IRpcChannelBuffer *_pRpcChannelBuffer,
  794. PRPC_MESSAGE _pRpcMessage,
  795. DWORD *_pdwStubPhase);
  796. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_SetAspectRatioMode_Proxy(
  797. IVMRWindowlessControl9 * This,
  798. /* [in] */ DWORD AspectRatioMode);
  799. void __RPC_STUB IVMRWindowlessControl9_SetAspectRatioMode_Stub(
  800. IRpcStubBuffer *This,
  801. IRpcChannelBuffer *_pRpcChannelBuffer,
  802. PRPC_MESSAGE _pRpcMessage,
  803. DWORD *_pdwStubPhase);
  804. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_SetVideoClippingWindow_Proxy(
  805. IVMRWindowlessControl9 * This,
  806. /* [in] */ HWND hwnd);
  807. void __RPC_STUB IVMRWindowlessControl9_SetVideoClippingWindow_Stub(
  808. IRpcStubBuffer *This,
  809. IRpcChannelBuffer *_pRpcChannelBuffer,
  810. PRPC_MESSAGE _pRpcMessage,
  811. DWORD *_pdwStubPhase);
  812. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_RepaintVideo_Proxy(
  813. IVMRWindowlessControl9 * This,
  814. /* [in] */ HWND hwnd,
  815. /* [in] */ HDC hdc);
  816. void __RPC_STUB IVMRWindowlessControl9_RepaintVideo_Stub(
  817. IRpcStubBuffer *This,
  818. IRpcChannelBuffer *_pRpcChannelBuffer,
  819. PRPC_MESSAGE _pRpcMessage,
  820. DWORD *_pdwStubPhase);
  821. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_DisplayModeChanged_Proxy(
  822. IVMRWindowlessControl9 * This);
  823. void __RPC_STUB IVMRWindowlessControl9_DisplayModeChanged_Stub(
  824. IRpcStubBuffer *This,
  825. IRpcChannelBuffer *_pRpcChannelBuffer,
  826. PRPC_MESSAGE _pRpcMessage,
  827. DWORD *_pdwStubPhase);
  828. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetCurrentImage_Proxy(
  829. IVMRWindowlessControl9 * This,
  830. /* [out] */ BYTE **lpDib);
  831. void __RPC_STUB IVMRWindowlessControl9_GetCurrentImage_Stub(
  832. IRpcStubBuffer *This,
  833. IRpcChannelBuffer *_pRpcChannelBuffer,
  834. PRPC_MESSAGE _pRpcMessage,
  835. DWORD *_pdwStubPhase);
  836. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_SetBorderColor_Proxy(
  837. IVMRWindowlessControl9 * This,
  838. /* [in] */ COLORREF Clr);
  839. void __RPC_STUB IVMRWindowlessControl9_SetBorderColor_Stub(
  840. IRpcStubBuffer *This,
  841. IRpcChannelBuffer *_pRpcChannelBuffer,
  842. PRPC_MESSAGE _pRpcMessage,
  843. DWORD *_pdwStubPhase);
  844. HRESULT STDMETHODCALLTYPE IVMRWindowlessControl9_GetBorderColor_Proxy(
  845. IVMRWindowlessControl9 * This,
  846. /* [out] */ COLORREF *lpClr);
  847. void __RPC_STUB IVMRWindowlessControl9_GetBorderColor_Stub(
  848. IRpcStubBuffer *This,
  849. IRpcChannelBuffer *_pRpcChannelBuffer,
  850. PRPC_MESSAGE _pRpcMessage,
  851. DWORD *_pdwStubPhase);
  852. #endif /* __IVMRWindowlessControl9_INTERFACE_DEFINED__ */
  853. /* interface __MIDL_itf_vmr9_0013 */
  854. /* [local] */
  855. typedef /* [public] */
  856. enum __MIDL___MIDL_itf_vmr9_0013_0001
  857. { MixerPref9_NoDecimation = 0x1,
  858. MixerPref9_DecimateOutput = 0x2,
  859. MixerPref9_ARAdjustXorY = 0x4,
  860. MixerPref9_NonSquareMixing = 0x8,
  861. MixerPref9_DecimateMask = 0xf,
  862. MixerPref9_BiLinearFiltering = 0x10,
  863. MixerPref9_PointFiltering = 0x20,
  864. MixerPref9_AnisotropicFiltering = 0x40,
  865. MixerPref9_PyramidalQuadFiltering = 0x80,
  866. MixerPref9_GaussianQuadFiltering = 0x100,
  867. MixerPref9_FilteringReserved = 0xe00,
  868. MixerPref9_FilteringMask = 0xff0,
  869. MixerPref9_RenderTargetRGB = 0x1000,
  870. MixerPref9_RenderTargetYUV = 0x2000,
  871. MixerPref9_RenderTargetReserved = 0xfc000,
  872. MixerPref9_RenderTargetMask = 0xff000,
  873. MixerPref9_DynamicSwitchToBOB = 0x100000,
  874. MixerPref9_DynamicDecimateBy2 = 0x200000,
  875. MixerPref9_DynamicReserved = 0xc00000,
  876. MixerPref9_DynamicMask = 0xf00000
  877. } VMR9MixerPrefs;
  878. typedef struct _VMR9NormalizedRect
  879. {
  880. float left;
  881. float top;
  882. float right;
  883. float bottom;
  884. } VMR9NormalizedRect;
  885. typedef /* [public][public][public] */
  886. enum __MIDL___MIDL_itf_vmr9_0013_0002
  887. { ProcAmpControl9_Brightness = 0x1,
  888. ProcAmpControl9_Contrast = 0x2,
  889. ProcAmpControl9_Hue = 0x4,
  890. ProcAmpControl9_Saturation = 0x8,
  891. ProcAmpControl9_Mask = 0xf
  892. } VMR9ProcAmpControlFlags;
  893. typedef struct _VMR9ProcAmpControl
  894. {
  895. DWORD dwSize;
  896. DWORD dwFlags;
  897. float Brightness;
  898. float Contrast;
  899. float Hue;
  900. float Saturation;
  901. } VMR9ProcAmpControl;
  902. typedef struct _VMR9ProcAmpControlRange
  903. {
  904. DWORD dwSize;
  905. VMR9ProcAmpControlFlags dwProperty;
  906. float MinValue;
  907. float MaxValue;
  908. float DefaultValue;
  909. float StepSize;
  910. } VMR9ProcAmpControlRange;
  911. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0013_v0_0_c_ifspec;
  912. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0013_v0_0_s_ifspec;
  913. #ifndef __IVMRMixerControl9_INTERFACE_DEFINED__
  914. #define __IVMRMixerControl9_INTERFACE_DEFINED__
  915. /* interface IVMRMixerControl9 */
  916. /* [unique][helpstring][uuid][local][object][local] */
  917. EXTERN_C const IID IID_IVMRMixerControl9;
  918. #if defined(__cplusplus) && !defined(CINTERFACE)
  919. MIDL_INTERFACE("1a777eaa-47c8-4930-b2c9-8fee1c1b0f3b")
  920. IVMRMixerControl9 : public IUnknown
  921. {
  922. public:
  923. virtual HRESULT STDMETHODCALLTYPE SetAlpha(
  924. /* [in] */ DWORD dwStreamID,
  925. /* [in] */ float Alpha) = 0;
  926. virtual HRESULT STDMETHODCALLTYPE GetAlpha(
  927. /* [in] */ DWORD dwStreamID,
  928. /* [out] */ float *pAlpha) = 0;
  929. virtual HRESULT STDMETHODCALLTYPE SetZOrder(
  930. /* [in] */ DWORD dwStreamID,
  931. /* [in] */ DWORD dwZ) = 0;
  932. virtual HRESULT STDMETHODCALLTYPE GetZOrder(
  933. /* [in] */ DWORD dwStreamID,
  934. /* [out] */ DWORD *pZ) = 0;
  935. virtual HRESULT STDMETHODCALLTYPE SetOutputRect(
  936. /* [in] */ DWORD dwStreamID,
  937. /* [in] */ const VMR9NormalizedRect *pRect) = 0;
  938. virtual HRESULT STDMETHODCALLTYPE GetOutputRect(
  939. /* [in] */ DWORD dwStreamID,
  940. /* [out] */ VMR9NormalizedRect *pRect) = 0;
  941. virtual HRESULT STDMETHODCALLTYPE SetBackgroundClr(
  942. /* [in] */ COLORREF ClrBkg) = 0;
  943. virtual HRESULT STDMETHODCALLTYPE GetBackgroundClr(
  944. /* [in] */ COLORREF *lpClrBkg) = 0;
  945. virtual HRESULT STDMETHODCALLTYPE SetMixingPrefs(
  946. /* [in] */ DWORD dwMixerPrefs) = 0;
  947. virtual HRESULT STDMETHODCALLTYPE GetMixingPrefs(
  948. /* [out] */ DWORD *pdwMixerPrefs) = 0;
  949. virtual HRESULT STDMETHODCALLTYPE SetProcAmpControl(
  950. /* [in] */ DWORD dwStreamID,
  951. /* [in] */ VMR9ProcAmpControl *lpClrControl) = 0;
  952. virtual HRESULT STDMETHODCALLTYPE GetProcAmpControl(
  953. /* [in] */ DWORD dwStreamID,
  954. /* [out][in] */ VMR9ProcAmpControl *lpClrControl) = 0;
  955. virtual HRESULT STDMETHODCALLTYPE GetProcAmpControlRange(
  956. /* [in] */ DWORD dwStreamID,
  957. /* [out][in] */ VMR9ProcAmpControlRange *lpClrControl) = 0;
  958. };
  959. #else /* C style interface */
  960. typedef struct IVMRMixerControl9Vtbl
  961. {
  962. BEGIN_INTERFACE
  963. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  964. IVMRMixerControl9 * This,
  965. /* [in] */ REFIID riid,
  966. /* [iid_is][out] */ void **ppvObject);
  967. ULONG ( STDMETHODCALLTYPE *AddRef )(
  968. IVMRMixerControl9 * This);
  969. ULONG ( STDMETHODCALLTYPE *Release )(
  970. IVMRMixerControl9 * This);
  971. HRESULT ( STDMETHODCALLTYPE *SetAlpha )(
  972. IVMRMixerControl9 * This,
  973. /* [in] */ DWORD dwStreamID,
  974. /* [in] */ float Alpha);
  975. HRESULT ( STDMETHODCALLTYPE *GetAlpha )(
  976. IVMRMixerControl9 * This,
  977. /* [in] */ DWORD dwStreamID,
  978. /* [out] */ float *pAlpha);
  979. HRESULT ( STDMETHODCALLTYPE *SetZOrder )(
  980. IVMRMixerControl9 * This,
  981. /* [in] */ DWORD dwStreamID,
  982. /* [in] */ DWORD dwZ);
  983. HRESULT ( STDMETHODCALLTYPE *GetZOrder )(
  984. IVMRMixerControl9 * This,
  985. /* [in] */ DWORD dwStreamID,
  986. /* [out] */ DWORD *pZ);
  987. HRESULT ( STDMETHODCALLTYPE *SetOutputRect )(
  988. IVMRMixerControl9 * This,
  989. /* [in] */ DWORD dwStreamID,
  990. /* [in] */ const VMR9NormalizedRect *pRect);
  991. HRESULT ( STDMETHODCALLTYPE *GetOutputRect )(
  992. IVMRMixerControl9 * This,
  993. /* [in] */ DWORD dwStreamID,
  994. /* [out] */ VMR9NormalizedRect *pRect);
  995. HRESULT ( STDMETHODCALLTYPE *SetBackgroundClr )(
  996. IVMRMixerControl9 * This,
  997. /* [in] */ COLORREF ClrBkg);
  998. HRESULT ( STDMETHODCALLTYPE *GetBackgroundClr )(
  999. IVMRMixerControl9 * This,
  1000. /* [in] */ COLORREF *lpClrBkg);
  1001. HRESULT ( STDMETHODCALLTYPE *SetMixingPrefs )(
  1002. IVMRMixerControl9 * This,
  1003. /* [in] */ DWORD dwMixerPrefs);
  1004. HRESULT ( STDMETHODCALLTYPE *GetMixingPrefs )(
  1005. IVMRMixerControl9 * This,
  1006. /* [out] */ DWORD *pdwMixerPrefs);
  1007. HRESULT ( STDMETHODCALLTYPE *SetProcAmpControl )(
  1008. IVMRMixerControl9 * This,
  1009. /* [in] */ DWORD dwStreamID,
  1010. /* [in] */ VMR9ProcAmpControl *lpClrControl);
  1011. HRESULT ( STDMETHODCALLTYPE *GetProcAmpControl )(
  1012. IVMRMixerControl9 * This,
  1013. /* [in] */ DWORD dwStreamID,
  1014. /* [out][in] */ VMR9ProcAmpControl *lpClrControl);
  1015. HRESULT ( STDMETHODCALLTYPE *GetProcAmpControlRange )(
  1016. IVMRMixerControl9 * This,
  1017. /* [in] */ DWORD dwStreamID,
  1018. /* [out][in] */ VMR9ProcAmpControlRange *lpClrControl);
  1019. END_INTERFACE
  1020. } IVMRMixerControl9Vtbl;
  1021. interface IVMRMixerControl9
  1022. {
  1023. CONST_VTBL struct IVMRMixerControl9Vtbl *lpVtbl;
  1024. };
  1025. #ifdef COBJMACROS
  1026. #define IVMRMixerControl9_QueryInterface(This,riid,ppvObject) \
  1027. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1028. #define IVMRMixerControl9_AddRef(This) \
  1029. (This)->lpVtbl -> AddRef(This)
  1030. #define IVMRMixerControl9_Release(This) \
  1031. (This)->lpVtbl -> Release(This)
  1032. #define IVMRMixerControl9_SetAlpha(This,dwStreamID,Alpha) \
  1033. (This)->lpVtbl -> SetAlpha(This,dwStreamID,Alpha)
  1034. #define IVMRMixerControl9_GetAlpha(This,dwStreamID,pAlpha) \
  1035. (This)->lpVtbl -> GetAlpha(This,dwStreamID,pAlpha)
  1036. #define IVMRMixerControl9_SetZOrder(This,dwStreamID,dwZ) \
  1037. (This)->lpVtbl -> SetZOrder(This,dwStreamID,dwZ)
  1038. #define IVMRMixerControl9_GetZOrder(This,dwStreamID,pZ) \
  1039. (This)->lpVtbl -> GetZOrder(This,dwStreamID,pZ)
  1040. #define IVMRMixerControl9_SetOutputRect(This,dwStreamID,pRect) \
  1041. (This)->lpVtbl -> SetOutputRect(This,dwStreamID,pRect)
  1042. #define IVMRMixerControl9_GetOutputRect(This,dwStreamID,pRect) \
  1043. (This)->lpVtbl -> GetOutputRect(This,dwStreamID,pRect)
  1044. #define IVMRMixerControl9_SetBackgroundClr(This,ClrBkg) \
  1045. (This)->lpVtbl -> SetBackgroundClr(This,ClrBkg)
  1046. #define IVMRMixerControl9_GetBackgroundClr(This,lpClrBkg) \
  1047. (This)->lpVtbl -> GetBackgroundClr(This,lpClrBkg)
  1048. #define IVMRMixerControl9_SetMixingPrefs(This,dwMixerPrefs) \
  1049. (This)->lpVtbl -> SetMixingPrefs(This,dwMixerPrefs)
  1050. #define IVMRMixerControl9_GetMixingPrefs(This,pdwMixerPrefs) \
  1051. (This)->lpVtbl -> GetMixingPrefs(This,pdwMixerPrefs)
  1052. #define IVMRMixerControl9_SetProcAmpControl(This,dwStreamID,lpClrControl) \
  1053. (This)->lpVtbl -> SetProcAmpControl(This,dwStreamID,lpClrControl)
  1054. #define IVMRMixerControl9_GetProcAmpControl(This,dwStreamID,lpClrControl) \
  1055. (This)->lpVtbl -> GetProcAmpControl(This,dwStreamID,lpClrControl)
  1056. #define IVMRMixerControl9_GetProcAmpControlRange(This,dwStreamID,lpClrControl) \
  1057. (This)->lpVtbl -> GetProcAmpControlRange(This,dwStreamID,lpClrControl)
  1058. #endif /* COBJMACROS */
  1059. #endif /* C style interface */
  1060. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_SetAlpha_Proxy(
  1061. IVMRMixerControl9 * This,
  1062. /* [in] */ DWORD dwStreamID,
  1063. /* [in] */ float Alpha);
  1064. void __RPC_STUB IVMRMixerControl9_SetAlpha_Stub(
  1065. IRpcStubBuffer *This,
  1066. IRpcChannelBuffer *_pRpcChannelBuffer,
  1067. PRPC_MESSAGE _pRpcMessage,
  1068. DWORD *_pdwStubPhase);
  1069. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_GetAlpha_Proxy(
  1070. IVMRMixerControl9 * This,
  1071. /* [in] */ DWORD dwStreamID,
  1072. /* [out] */ float *pAlpha);
  1073. void __RPC_STUB IVMRMixerControl9_GetAlpha_Stub(
  1074. IRpcStubBuffer *This,
  1075. IRpcChannelBuffer *_pRpcChannelBuffer,
  1076. PRPC_MESSAGE _pRpcMessage,
  1077. DWORD *_pdwStubPhase);
  1078. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_SetZOrder_Proxy(
  1079. IVMRMixerControl9 * This,
  1080. /* [in] */ DWORD dwStreamID,
  1081. /* [in] */ DWORD dwZ);
  1082. void __RPC_STUB IVMRMixerControl9_SetZOrder_Stub(
  1083. IRpcStubBuffer *This,
  1084. IRpcChannelBuffer *_pRpcChannelBuffer,
  1085. PRPC_MESSAGE _pRpcMessage,
  1086. DWORD *_pdwStubPhase);
  1087. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_GetZOrder_Proxy(
  1088. IVMRMixerControl9 * This,
  1089. /* [in] */ DWORD dwStreamID,
  1090. /* [out] */ DWORD *pZ);
  1091. void __RPC_STUB IVMRMixerControl9_GetZOrder_Stub(
  1092. IRpcStubBuffer *This,
  1093. IRpcChannelBuffer *_pRpcChannelBuffer,
  1094. PRPC_MESSAGE _pRpcMessage,
  1095. DWORD *_pdwStubPhase);
  1096. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_SetOutputRect_Proxy(
  1097. IVMRMixerControl9 * This,
  1098. /* [in] */ DWORD dwStreamID,
  1099. /* [in] */ const VMR9NormalizedRect *pRect);
  1100. void __RPC_STUB IVMRMixerControl9_SetOutputRect_Stub(
  1101. IRpcStubBuffer *This,
  1102. IRpcChannelBuffer *_pRpcChannelBuffer,
  1103. PRPC_MESSAGE _pRpcMessage,
  1104. DWORD *_pdwStubPhase);
  1105. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_GetOutputRect_Proxy(
  1106. IVMRMixerControl9 * This,
  1107. /* [in] */ DWORD dwStreamID,
  1108. /* [out] */ VMR9NormalizedRect *pRect);
  1109. void __RPC_STUB IVMRMixerControl9_GetOutputRect_Stub(
  1110. IRpcStubBuffer *This,
  1111. IRpcChannelBuffer *_pRpcChannelBuffer,
  1112. PRPC_MESSAGE _pRpcMessage,
  1113. DWORD *_pdwStubPhase);
  1114. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_SetBackgroundClr_Proxy(
  1115. IVMRMixerControl9 * This,
  1116. /* [in] */ COLORREF ClrBkg);
  1117. void __RPC_STUB IVMRMixerControl9_SetBackgroundClr_Stub(
  1118. IRpcStubBuffer *This,
  1119. IRpcChannelBuffer *_pRpcChannelBuffer,
  1120. PRPC_MESSAGE _pRpcMessage,
  1121. DWORD *_pdwStubPhase);
  1122. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_GetBackgroundClr_Proxy(
  1123. IVMRMixerControl9 * This,
  1124. /* [in] */ COLORREF *lpClrBkg);
  1125. void __RPC_STUB IVMRMixerControl9_GetBackgroundClr_Stub(
  1126. IRpcStubBuffer *This,
  1127. IRpcChannelBuffer *_pRpcChannelBuffer,
  1128. PRPC_MESSAGE _pRpcMessage,
  1129. DWORD *_pdwStubPhase);
  1130. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_SetMixingPrefs_Proxy(
  1131. IVMRMixerControl9 * This,
  1132. /* [in] */ DWORD dwMixerPrefs);
  1133. void __RPC_STUB IVMRMixerControl9_SetMixingPrefs_Stub(
  1134. IRpcStubBuffer *This,
  1135. IRpcChannelBuffer *_pRpcChannelBuffer,
  1136. PRPC_MESSAGE _pRpcMessage,
  1137. DWORD *_pdwStubPhase);
  1138. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_GetMixingPrefs_Proxy(
  1139. IVMRMixerControl9 * This,
  1140. /* [out] */ DWORD *pdwMixerPrefs);
  1141. void __RPC_STUB IVMRMixerControl9_GetMixingPrefs_Stub(
  1142. IRpcStubBuffer *This,
  1143. IRpcChannelBuffer *_pRpcChannelBuffer,
  1144. PRPC_MESSAGE _pRpcMessage,
  1145. DWORD *_pdwStubPhase);
  1146. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_SetProcAmpControl_Proxy(
  1147. IVMRMixerControl9 * This,
  1148. /* [in] */ DWORD dwStreamID,
  1149. /* [in] */ VMR9ProcAmpControl *lpClrControl);
  1150. void __RPC_STUB IVMRMixerControl9_SetProcAmpControl_Stub(
  1151. IRpcStubBuffer *This,
  1152. IRpcChannelBuffer *_pRpcChannelBuffer,
  1153. PRPC_MESSAGE _pRpcMessage,
  1154. DWORD *_pdwStubPhase);
  1155. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_GetProcAmpControl_Proxy(
  1156. IVMRMixerControl9 * This,
  1157. /* [in] */ DWORD dwStreamID,
  1158. /* [out][in] */ VMR9ProcAmpControl *lpClrControl);
  1159. void __RPC_STUB IVMRMixerControl9_GetProcAmpControl_Stub(
  1160. IRpcStubBuffer *This,
  1161. IRpcChannelBuffer *_pRpcChannelBuffer,
  1162. PRPC_MESSAGE _pRpcMessage,
  1163. DWORD *_pdwStubPhase);
  1164. HRESULT STDMETHODCALLTYPE IVMRMixerControl9_GetProcAmpControlRange_Proxy(
  1165. IVMRMixerControl9 * This,
  1166. /* [in] */ DWORD dwStreamID,
  1167. /* [out][in] */ VMR9ProcAmpControlRange *lpClrControl);
  1168. void __RPC_STUB IVMRMixerControl9_GetProcAmpControlRange_Stub(
  1169. IRpcStubBuffer *This,
  1170. IRpcChannelBuffer *_pRpcChannelBuffer,
  1171. PRPC_MESSAGE _pRpcMessage,
  1172. DWORD *_pdwStubPhase);
  1173. #endif /* __IVMRMixerControl9_INTERFACE_DEFINED__ */
  1174. /* interface __MIDL_itf_vmr9_0014 */
  1175. /* [local] */
  1176. typedef struct _VMR9AlphaBitmap
  1177. {
  1178. DWORD dwFlags;
  1179. HDC hdc;
  1180. IDirect3DSurface9 *pDDS;
  1181. RECT rSrc;
  1182. VMR9NormalizedRect rDest;
  1183. FLOAT fAlpha;
  1184. COLORREF clrSrcKey;
  1185. DWORD dwFilterMode;
  1186. } VMR9AlphaBitmap;
  1187. typedef /* [public] */
  1188. enum __MIDL___MIDL_itf_vmr9_0014_0001
  1189. { VMR9AlphaBitmap_Disable = 0x1,
  1190. VMR9AlphaBitmap_hDC = 0x2,
  1191. VMR9AlphaBitmap_EntireDDS = 0x4,
  1192. VMR9AlphaBitmap_SrcColorKey = 0x8,
  1193. VMR9AlphaBitmap_SrcRect = 0x10,
  1194. VMR9AlphaBitmap_FilterMode = 0x20
  1195. } VMR9AlphaBitmapFlags;
  1196. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0014_v0_0_c_ifspec;
  1197. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0014_v0_0_s_ifspec;
  1198. #ifndef __IVMRMixerBitmap9_INTERFACE_DEFINED__
  1199. #define __IVMRMixerBitmap9_INTERFACE_DEFINED__
  1200. /* interface IVMRMixerBitmap9 */
  1201. /* [unique][helpstring][uuid][local][object] */
  1202. EXTERN_C const IID IID_IVMRMixerBitmap9;
  1203. #if defined(__cplusplus) && !defined(CINTERFACE)
  1204. MIDL_INTERFACE("ced175e5-1935-4820-81bd-ff6ad00c9108")
  1205. IVMRMixerBitmap9 : public IUnknown
  1206. {
  1207. public:
  1208. virtual HRESULT STDMETHODCALLTYPE SetAlphaBitmap(
  1209. /* [in] */ const VMR9AlphaBitmap *pBmpParms) = 0;
  1210. virtual HRESULT STDMETHODCALLTYPE UpdateAlphaBitmapParameters(
  1211. /* [in] */ const VMR9AlphaBitmap *pBmpParms) = 0;
  1212. virtual HRESULT STDMETHODCALLTYPE GetAlphaBitmapParameters(
  1213. /* [out] */ VMR9AlphaBitmap *pBmpParms) = 0;
  1214. };
  1215. #else /* C style interface */
  1216. typedef struct IVMRMixerBitmap9Vtbl
  1217. {
  1218. BEGIN_INTERFACE
  1219. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1220. IVMRMixerBitmap9 * This,
  1221. /* [in] */ REFIID riid,
  1222. /* [iid_is][out] */ void **ppvObject);
  1223. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1224. IVMRMixerBitmap9 * This);
  1225. ULONG ( STDMETHODCALLTYPE *Release )(
  1226. IVMRMixerBitmap9 * This);
  1227. HRESULT ( STDMETHODCALLTYPE *SetAlphaBitmap )(
  1228. IVMRMixerBitmap9 * This,
  1229. /* [in] */ const VMR9AlphaBitmap *pBmpParms);
  1230. HRESULT ( STDMETHODCALLTYPE *UpdateAlphaBitmapParameters )(
  1231. IVMRMixerBitmap9 * This,
  1232. /* [in] */ const VMR9AlphaBitmap *pBmpParms);
  1233. HRESULT ( STDMETHODCALLTYPE *GetAlphaBitmapParameters )(
  1234. IVMRMixerBitmap9 * This,
  1235. /* [out] */ VMR9AlphaBitmap *pBmpParms);
  1236. END_INTERFACE
  1237. } IVMRMixerBitmap9Vtbl;
  1238. interface IVMRMixerBitmap9
  1239. {
  1240. CONST_VTBL struct IVMRMixerBitmap9Vtbl *lpVtbl;
  1241. };
  1242. #ifdef COBJMACROS
  1243. #define IVMRMixerBitmap9_QueryInterface(This,riid,ppvObject) \
  1244. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1245. #define IVMRMixerBitmap9_AddRef(This) \
  1246. (This)->lpVtbl -> AddRef(This)
  1247. #define IVMRMixerBitmap9_Release(This) \
  1248. (This)->lpVtbl -> Release(This)
  1249. #define IVMRMixerBitmap9_SetAlphaBitmap(This,pBmpParms) \
  1250. (This)->lpVtbl -> SetAlphaBitmap(This,pBmpParms)
  1251. #define IVMRMixerBitmap9_UpdateAlphaBitmapParameters(This,pBmpParms) \
  1252. (This)->lpVtbl -> UpdateAlphaBitmapParameters(This,pBmpParms)
  1253. #define IVMRMixerBitmap9_GetAlphaBitmapParameters(This,pBmpParms) \
  1254. (This)->lpVtbl -> GetAlphaBitmapParameters(This,pBmpParms)
  1255. #endif /* COBJMACROS */
  1256. #endif /* C style interface */
  1257. HRESULT STDMETHODCALLTYPE IVMRMixerBitmap9_SetAlphaBitmap_Proxy(
  1258. IVMRMixerBitmap9 * This,
  1259. /* [in] */ const VMR9AlphaBitmap *pBmpParms);
  1260. void __RPC_STUB IVMRMixerBitmap9_SetAlphaBitmap_Stub(
  1261. IRpcStubBuffer *This,
  1262. IRpcChannelBuffer *_pRpcChannelBuffer,
  1263. PRPC_MESSAGE _pRpcMessage,
  1264. DWORD *_pdwStubPhase);
  1265. HRESULT STDMETHODCALLTYPE IVMRMixerBitmap9_UpdateAlphaBitmapParameters_Proxy(
  1266. IVMRMixerBitmap9 * This,
  1267. /* [in] */ const VMR9AlphaBitmap *pBmpParms);
  1268. void __RPC_STUB IVMRMixerBitmap9_UpdateAlphaBitmapParameters_Stub(
  1269. IRpcStubBuffer *This,
  1270. IRpcChannelBuffer *_pRpcChannelBuffer,
  1271. PRPC_MESSAGE _pRpcMessage,
  1272. DWORD *_pdwStubPhase);
  1273. HRESULT STDMETHODCALLTYPE IVMRMixerBitmap9_GetAlphaBitmapParameters_Proxy(
  1274. IVMRMixerBitmap9 * This,
  1275. /* [out] */ VMR9AlphaBitmap *pBmpParms);
  1276. void __RPC_STUB IVMRMixerBitmap9_GetAlphaBitmapParameters_Stub(
  1277. IRpcStubBuffer *This,
  1278. IRpcChannelBuffer *_pRpcChannelBuffer,
  1279. PRPC_MESSAGE _pRpcMessage,
  1280. DWORD *_pdwStubPhase);
  1281. #endif /* __IVMRMixerBitmap9_INTERFACE_DEFINED__ */
  1282. #ifndef __IVMRSurface9_INTERFACE_DEFINED__
  1283. #define __IVMRSurface9_INTERFACE_DEFINED__
  1284. /* interface IVMRSurface9 */
  1285. /* [unique][helpstring][uuid][local][object][local] */
  1286. EXTERN_C const IID IID_IVMRSurface9;
  1287. #if defined(__cplusplus) && !defined(CINTERFACE)
  1288. MIDL_INTERFACE("dfc581a1-6e1f-4c3a-8d0a-5e9792ea2afc")
  1289. IVMRSurface9 : public IUnknown
  1290. {
  1291. public:
  1292. virtual HRESULT STDMETHODCALLTYPE IsSurfaceLocked( void) = 0;
  1293. virtual HRESULT STDMETHODCALLTYPE LockSurface(
  1294. /* [out] */ BYTE **lpSurface) = 0;
  1295. virtual HRESULT STDMETHODCALLTYPE UnlockSurface( void) = 0;
  1296. virtual HRESULT STDMETHODCALLTYPE GetSurface(
  1297. /* [out] */ IDirect3DSurface9 **lplpSurface) = 0;
  1298. };
  1299. #else /* C style interface */
  1300. typedef struct IVMRSurface9Vtbl
  1301. {
  1302. BEGIN_INTERFACE
  1303. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1304. IVMRSurface9 * This,
  1305. /* [in] */ REFIID riid,
  1306. /* [iid_is][out] */ void **ppvObject);
  1307. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1308. IVMRSurface9 * This);
  1309. ULONG ( STDMETHODCALLTYPE *Release )(
  1310. IVMRSurface9 * This);
  1311. HRESULT ( STDMETHODCALLTYPE *IsSurfaceLocked )(
  1312. IVMRSurface9 * This);
  1313. HRESULT ( STDMETHODCALLTYPE *LockSurface )(
  1314. IVMRSurface9 * This,
  1315. /* [out] */ BYTE **lpSurface);
  1316. HRESULT ( STDMETHODCALLTYPE *UnlockSurface )(
  1317. IVMRSurface9 * This);
  1318. HRESULT ( STDMETHODCALLTYPE *GetSurface )(
  1319. IVMRSurface9 * This,
  1320. /* [out] */ IDirect3DSurface9 **lplpSurface);
  1321. END_INTERFACE
  1322. } IVMRSurface9Vtbl;
  1323. interface IVMRSurface9
  1324. {
  1325. CONST_VTBL struct IVMRSurface9Vtbl *lpVtbl;
  1326. };
  1327. #ifdef COBJMACROS
  1328. #define IVMRSurface9_QueryInterface(This,riid,ppvObject) \
  1329. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1330. #define IVMRSurface9_AddRef(This) \
  1331. (This)->lpVtbl -> AddRef(This)
  1332. #define IVMRSurface9_Release(This) \
  1333. (This)->lpVtbl -> Release(This)
  1334. #define IVMRSurface9_IsSurfaceLocked(This) \
  1335. (This)->lpVtbl -> IsSurfaceLocked(This)
  1336. #define IVMRSurface9_LockSurface(This,lpSurface) \
  1337. (This)->lpVtbl -> LockSurface(This,lpSurface)
  1338. #define IVMRSurface9_UnlockSurface(This) \
  1339. (This)->lpVtbl -> UnlockSurface(This)
  1340. #define IVMRSurface9_GetSurface(This,lplpSurface) \
  1341. (This)->lpVtbl -> GetSurface(This,lplpSurface)
  1342. #endif /* COBJMACROS */
  1343. #endif /* C style interface */
  1344. HRESULT STDMETHODCALLTYPE IVMRSurface9_IsSurfaceLocked_Proxy(
  1345. IVMRSurface9 * This);
  1346. void __RPC_STUB IVMRSurface9_IsSurfaceLocked_Stub(
  1347. IRpcStubBuffer *This,
  1348. IRpcChannelBuffer *_pRpcChannelBuffer,
  1349. PRPC_MESSAGE _pRpcMessage,
  1350. DWORD *_pdwStubPhase);
  1351. HRESULT STDMETHODCALLTYPE IVMRSurface9_LockSurface_Proxy(
  1352. IVMRSurface9 * This,
  1353. /* [out] */ BYTE **lpSurface);
  1354. void __RPC_STUB IVMRSurface9_LockSurface_Stub(
  1355. IRpcStubBuffer *This,
  1356. IRpcChannelBuffer *_pRpcChannelBuffer,
  1357. PRPC_MESSAGE _pRpcMessage,
  1358. DWORD *_pdwStubPhase);
  1359. HRESULT STDMETHODCALLTYPE IVMRSurface9_UnlockSurface_Proxy(
  1360. IVMRSurface9 * This);
  1361. void __RPC_STUB IVMRSurface9_UnlockSurface_Stub(
  1362. IRpcStubBuffer *This,
  1363. IRpcChannelBuffer *_pRpcChannelBuffer,
  1364. PRPC_MESSAGE _pRpcMessage,
  1365. DWORD *_pdwStubPhase);
  1366. HRESULT STDMETHODCALLTYPE IVMRSurface9_GetSurface_Proxy(
  1367. IVMRSurface9 * This,
  1368. /* [out] */ IDirect3DSurface9 **lplpSurface);
  1369. void __RPC_STUB IVMRSurface9_GetSurface_Stub(
  1370. IRpcStubBuffer *This,
  1371. IRpcChannelBuffer *_pRpcChannelBuffer,
  1372. PRPC_MESSAGE _pRpcMessage,
  1373. DWORD *_pdwStubPhase);
  1374. #endif /* __IVMRSurface9_INTERFACE_DEFINED__ */
  1375. /* interface __MIDL_itf_vmr9_0016 */
  1376. /* [local] */
  1377. typedef /* [public] */
  1378. enum __MIDL___MIDL_itf_vmr9_0016_0001
  1379. { RenderPrefs9_DoNotRenderBorder = 0x1,
  1380. RenderPrefs9_Mask = 0x1
  1381. } VMR9RenderPrefs;
  1382. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0016_v0_0_c_ifspec;
  1383. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0016_v0_0_s_ifspec;
  1384. #ifndef __IVMRImagePresenterConfig9_INTERFACE_DEFINED__
  1385. #define __IVMRImagePresenterConfig9_INTERFACE_DEFINED__
  1386. /* interface IVMRImagePresenterConfig9 */
  1387. /* [unique][helpstring][uuid][local][object][local] */
  1388. EXTERN_C const IID IID_IVMRImagePresenterConfig9;
  1389. #if defined(__cplusplus) && !defined(CINTERFACE)
  1390. MIDL_INTERFACE("45c15cab-6e22-420a-8043-ae1f0ac02c7d")
  1391. IVMRImagePresenterConfig9 : public IUnknown
  1392. {
  1393. public:
  1394. virtual HRESULT STDMETHODCALLTYPE SetRenderingPrefs(
  1395. /* [in] */ DWORD dwRenderFlags) = 0;
  1396. virtual HRESULT STDMETHODCALLTYPE GetRenderingPrefs(
  1397. /* [out] */ DWORD *dwRenderFlags) = 0;
  1398. };
  1399. #else /* C style interface */
  1400. typedef struct IVMRImagePresenterConfig9Vtbl
  1401. {
  1402. BEGIN_INTERFACE
  1403. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1404. IVMRImagePresenterConfig9 * This,
  1405. /* [in] */ REFIID riid,
  1406. /* [iid_is][out] */ void **ppvObject);
  1407. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1408. IVMRImagePresenterConfig9 * This);
  1409. ULONG ( STDMETHODCALLTYPE *Release )(
  1410. IVMRImagePresenterConfig9 * This);
  1411. HRESULT ( STDMETHODCALLTYPE *SetRenderingPrefs )(
  1412. IVMRImagePresenterConfig9 * This,
  1413. /* [in] */ DWORD dwRenderFlags);
  1414. HRESULT ( STDMETHODCALLTYPE *GetRenderingPrefs )(
  1415. IVMRImagePresenterConfig9 * This,
  1416. /* [out] */ DWORD *dwRenderFlags);
  1417. END_INTERFACE
  1418. } IVMRImagePresenterConfig9Vtbl;
  1419. interface IVMRImagePresenterConfig9
  1420. {
  1421. CONST_VTBL struct IVMRImagePresenterConfig9Vtbl *lpVtbl;
  1422. };
  1423. #ifdef COBJMACROS
  1424. #define IVMRImagePresenterConfig9_QueryInterface(This,riid,ppvObject) \
  1425. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1426. #define IVMRImagePresenterConfig9_AddRef(This) \
  1427. (This)->lpVtbl -> AddRef(This)
  1428. #define IVMRImagePresenterConfig9_Release(This) \
  1429. (This)->lpVtbl -> Release(This)
  1430. #define IVMRImagePresenterConfig9_SetRenderingPrefs(This,dwRenderFlags) \
  1431. (This)->lpVtbl -> SetRenderingPrefs(This,dwRenderFlags)
  1432. #define IVMRImagePresenterConfig9_GetRenderingPrefs(This,dwRenderFlags) \
  1433. (This)->lpVtbl -> GetRenderingPrefs(This,dwRenderFlags)
  1434. #endif /* COBJMACROS */
  1435. #endif /* C style interface */
  1436. HRESULT STDMETHODCALLTYPE IVMRImagePresenterConfig9_SetRenderingPrefs_Proxy(
  1437. IVMRImagePresenterConfig9 * This,
  1438. /* [in] */ DWORD dwRenderFlags);
  1439. void __RPC_STUB IVMRImagePresenterConfig9_SetRenderingPrefs_Stub(
  1440. IRpcStubBuffer *This,
  1441. IRpcChannelBuffer *_pRpcChannelBuffer,
  1442. PRPC_MESSAGE _pRpcMessage,
  1443. DWORD *_pdwStubPhase);
  1444. HRESULT STDMETHODCALLTYPE IVMRImagePresenterConfig9_GetRenderingPrefs_Proxy(
  1445. IVMRImagePresenterConfig9 * This,
  1446. /* [out] */ DWORD *dwRenderFlags);
  1447. void __RPC_STUB IVMRImagePresenterConfig9_GetRenderingPrefs_Stub(
  1448. IRpcStubBuffer *This,
  1449. IRpcChannelBuffer *_pRpcChannelBuffer,
  1450. PRPC_MESSAGE _pRpcMessage,
  1451. DWORD *_pdwStubPhase);
  1452. #endif /* __IVMRImagePresenterConfig9_INTERFACE_DEFINED__ */
  1453. #ifndef __IVMRVideoStreamControl9_INTERFACE_DEFINED__
  1454. #define __IVMRVideoStreamControl9_INTERFACE_DEFINED__
  1455. /* interface IVMRVideoStreamControl9 */
  1456. /* [unique][helpstring][uuid][local][object] */
  1457. EXTERN_C const IID IID_IVMRVideoStreamControl9;
  1458. #if defined(__cplusplus) && !defined(CINTERFACE)
  1459. MIDL_INTERFACE("d0cfe38b-93e7-4772-8957-0400c49a4485")
  1460. IVMRVideoStreamControl9 : public IUnknown
  1461. {
  1462. public:
  1463. virtual HRESULT STDMETHODCALLTYPE SetStreamActiveState(
  1464. /* [in] */ BOOL fActive) = 0;
  1465. virtual HRESULT STDMETHODCALLTYPE GetStreamActiveState(
  1466. /* [out] */ BOOL *lpfActive) = 0;
  1467. };
  1468. #else /* C style interface */
  1469. typedef struct IVMRVideoStreamControl9Vtbl
  1470. {
  1471. BEGIN_INTERFACE
  1472. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1473. IVMRVideoStreamControl9 * This,
  1474. /* [in] */ REFIID riid,
  1475. /* [iid_is][out] */ void **ppvObject);
  1476. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1477. IVMRVideoStreamControl9 * This);
  1478. ULONG ( STDMETHODCALLTYPE *Release )(
  1479. IVMRVideoStreamControl9 * This);
  1480. HRESULT ( STDMETHODCALLTYPE *SetStreamActiveState )(
  1481. IVMRVideoStreamControl9 * This,
  1482. /* [in] */ BOOL fActive);
  1483. HRESULT ( STDMETHODCALLTYPE *GetStreamActiveState )(
  1484. IVMRVideoStreamControl9 * This,
  1485. /* [out] */ BOOL *lpfActive);
  1486. END_INTERFACE
  1487. } IVMRVideoStreamControl9Vtbl;
  1488. interface IVMRVideoStreamControl9
  1489. {
  1490. CONST_VTBL struct IVMRVideoStreamControl9Vtbl *lpVtbl;
  1491. };
  1492. #ifdef COBJMACROS
  1493. #define IVMRVideoStreamControl9_QueryInterface(This,riid,ppvObject) \
  1494. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1495. #define IVMRVideoStreamControl9_AddRef(This) \
  1496. (This)->lpVtbl -> AddRef(This)
  1497. #define IVMRVideoStreamControl9_Release(This) \
  1498. (This)->lpVtbl -> Release(This)
  1499. #define IVMRVideoStreamControl9_SetStreamActiveState(This,fActive) \
  1500. (This)->lpVtbl -> SetStreamActiveState(This,fActive)
  1501. #define IVMRVideoStreamControl9_GetStreamActiveState(This,lpfActive) \
  1502. (This)->lpVtbl -> GetStreamActiveState(This,lpfActive)
  1503. #endif /* COBJMACROS */
  1504. #endif /* C style interface */
  1505. HRESULT STDMETHODCALLTYPE IVMRVideoStreamControl9_SetStreamActiveState_Proxy(
  1506. IVMRVideoStreamControl9 * This,
  1507. /* [in] */ BOOL fActive);
  1508. void __RPC_STUB IVMRVideoStreamControl9_SetStreamActiveState_Stub(
  1509. IRpcStubBuffer *This,
  1510. IRpcChannelBuffer *_pRpcChannelBuffer,
  1511. PRPC_MESSAGE _pRpcMessage,
  1512. DWORD *_pdwStubPhase);
  1513. HRESULT STDMETHODCALLTYPE IVMRVideoStreamControl9_GetStreamActiveState_Proxy(
  1514. IVMRVideoStreamControl9 * This,
  1515. /* [out] */ BOOL *lpfActive);
  1516. void __RPC_STUB IVMRVideoStreamControl9_GetStreamActiveState_Stub(
  1517. IRpcStubBuffer *This,
  1518. IRpcChannelBuffer *_pRpcChannelBuffer,
  1519. PRPC_MESSAGE _pRpcMessage,
  1520. DWORD *_pdwStubPhase);
  1521. #endif /* __IVMRVideoStreamControl9_INTERFACE_DEFINED__ */
  1522. /* interface __MIDL_itf_vmr9_0018 */
  1523. /* [local] */
  1524. typedef /* [public] */
  1525. enum __MIDL___MIDL_itf_vmr9_0018_0001
  1526. { VMR9Mode_Windowed = 0x1,
  1527. VMR9Mode_Windowless = 0x2,
  1528. VMR9Mode_Renderless = 0x4,
  1529. VMR9Mode_Mask = 0x7
  1530. } VMR9Mode;
  1531. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0018_v0_0_c_ifspec;
  1532. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0018_v0_0_s_ifspec;
  1533. #ifndef __IVMRFilterConfig9_INTERFACE_DEFINED__
  1534. #define __IVMRFilterConfig9_INTERFACE_DEFINED__
  1535. /* interface IVMRFilterConfig9 */
  1536. /* [unique][helpstring][uuid][local][object] */
  1537. EXTERN_C const IID IID_IVMRFilterConfig9;
  1538. #if defined(__cplusplus) && !defined(CINTERFACE)
  1539. MIDL_INTERFACE("5a804648-4f66-4867-9c43-4f5c822cf1b8")
  1540. IVMRFilterConfig9 : public IUnknown
  1541. {
  1542. public:
  1543. virtual HRESULT STDMETHODCALLTYPE SetImageCompositor(
  1544. /* [in] */ IVMRImageCompositor9 *lpVMRImgCompositor) = 0;
  1545. virtual HRESULT STDMETHODCALLTYPE SetNumberOfStreams(
  1546. /* [in] */ DWORD dwMaxStreams) = 0;
  1547. virtual HRESULT STDMETHODCALLTYPE GetNumberOfStreams(
  1548. /* [out] */ DWORD *pdwMaxStreams) = 0;
  1549. virtual HRESULT STDMETHODCALLTYPE SetRenderingPrefs(
  1550. /* [in] */ DWORD dwRenderFlags) = 0;
  1551. virtual HRESULT STDMETHODCALLTYPE GetRenderingPrefs(
  1552. /* [out] */ DWORD *pdwRenderFlags) = 0;
  1553. virtual HRESULT STDMETHODCALLTYPE SetRenderingMode(
  1554. /* [in] */ DWORD Mode) = 0;
  1555. virtual HRESULT STDMETHODCALLTYPE GetRenderingMode(
  1556. /* [out] */ DWORD *pMode) = 0;
  1557. };
  1558. #else /* C style interface */
  1559. typedef struct IVMRFilterConfig9Vtbl
  1560. {
  1561. BEGIN_INTERFACE
  1562. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1563. IVMRFilterConfig9 * This,
  1564. /* [in] */ REFIID riid,
  1565. /* [iid_is][out] */ void **ppvObject);
  1566. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1567. IVMRFilterConfig9 * This);
  1568. ULONG ( STDMETHODCALLTYPE *Release )(
  1569. IVMRFilterConfig9 * This);
  1570. HRESULT ( STDMETHODCALLTYPE *SetImageCompositor )(
  1571. IVMRFilterConfig9 * This,
  1572. /* [in] */ IVMRImageCompositor9 *lpVMRImgCompositor);
  1573. HRESULT ( STDMETHODCALLTYPE *SetNumberOfStreams )(
  1574. IVMRFilterConfig9 * This,
  1575. /* [in] */ DWORD dwMaxStreams);
  1576. HRESULT ( STDMETHODCALLTYPE *GetNumberOfStreams )(
  1577. IVMRFilterConfig9 * This,
  1578. /* [out] */ DWORD *pdwMaxStreams);
  1579. HRESULT ( STDMETHODCALLTYPE *SetRenderingPrefs )(
  1580. IVMRFilterConfig9 * This,
  1581. /* [in] */ DWORD dwRenderFlags);
  1582. HRESULT ( STDMETHODCALLTYPE *GetRenderingPrefs )(
  1583. IVMRFilterConfig9 * This,
  1584. /* [out] */ DWORD *pdwRenderFlags);
  1585. HRESULT ( STDMETHODCALLTYPE *SetRenderingMode )(
  1586. IVMRFilterConfig9 * This,
  1587. /* [in] */ DWORD Mode);
  1588. HRESULT ( STDMETHODCALLTYPE *GetRenderingMode )(
  1589. IVMRFilterConfig9 * This,
  1590. /* [out] */ DWORD *pMode);
  1591. END_INTERFACE
  1592. } IVMRFilterConfig9Vtbl;
  1593. interface IVMRFilterConfig9
  1594. {
  1595. CONST_VTBL struct IVMRFilterConfig9Vtbl *lpVtbl;
  1596. };
  1597. #ifdef COBJMACROS
  1598. #define IVMRFilterConfig9_QueryInterface(This,riid,ppvObject) \
  1599. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1600. #define IVMRFilterConfig9_AddRef(This) \
  1601. (This)->lpVtbl -> AddRef(This)
  1602. #define IVMRFilterConfig9_Release(This) \
  1603. (This)->lpVtbl -> Release(This)
  1604. #define IVMRFilterConfig9_SetImageCompositor(This,lpVMRImgCompositor) \
  1605. (This)->lpVtbl -> SetImageCompositor(This,lpVMRImgCompositor)
  1606. #define IVMRFilterConfig9_SetNumberOfStreams(This,dwMaxStreams) \
  1607. (This)->lpVtbl -> SetNumberOfStreams(This,dwMaxStreams)
  1608. #define IVMRFilterConfig9_GetNumberOfStreams(This,pdwMaxStreams) \
  1609. (This)->lpVtbl -> GetNumberOfStreams(This,pdwMaxStreams)
  1610. #define IVMRFilterConfig9_SetRenderingPrefs(This,dwRenderFlags) \
  1611. (This)->lpVtbl -> SetRenderingPrefs(This,dwRenderFlags)
  1612. #define IVMRFilterConfig9_GetRenderingPrefs(This,pdwRenderFlags) \
  1613. (This)->lpVtbl -> GetRenderingPrefs(This,pdwRenderFlags)
  1614. #define IVMRFilterConfig9_SetRenderingMode(This,Mode) \
  1615. (This)->lpVtbl -> SetRenderingMode(This,Mode)
  1616. #define IVMRFilterConfig9_GetRenderingMode(This,pMode) \
  1617. (This)->lpVtbl -> GetRenderingMode(This,pMode)
  1618. #endif /* COBJMACROS */
  1619. #endif /* C style interface */
  1620. HRESULT STDMETHODCALLTYPE IVMRFilterConfig9_SetImageCompositor_Proxy(
  1621. IVMRFilterConfig9 * This,
  1622. /* [in] */ IVMRImageCompositor9 *lpVMRImgCompositor);
  1623. void __RPC_STUB IVMRFilterConfig9_SetImageCompositor_Stub(
  1624. IRpcStubBuffer *This,
  1625. IRpcChannelBuffer *_pRpcChannelBuffer,
  1626. PRPC_MESSAGE _pRpcMessage,
  1627. DWORD *_pdwStubPhase);
  1628. HRESULT STDMETHODCALLTYPE IVMRFilterConfig9_SetNumberOfStreams_Proxy(
  1629. IVMRFilterConfig9 * This,
  1630. /* [in] */ DWORD dwMaxStreams);
  1631. void __RPC_STUB IVMRFilterConfig9_SetNumberOfStreams_Stub(
  1632. IRpcStubBuffer *This,
  1633. IRpcChannelBuffer *_pRpcChannelBuffer,
  1634. PRPC_MESSAGE _pRpcMessage,
  1635. DWORD *_pdwStubPhase);
  1636. HRESULT STDMETHODCALLTYPE IVMRFilterConfig9_GetNumberOfStreams_Proxy(
  1637. IVMRFilterConfig9 * This,
  1638. /* [out] */ DWORD *pdwMaxStreams);
  1639. void __RPC_STUB IVMRFilterConfig9_GetNumberOfStreams_Stub(
  1640. IRpcStubBuffer *This,
  1641. IRpcChannelBuffer *_pRpcChannelBuffer,
  1642. PRPC_MESSAGE _pRpcMessage,
  1643. DWORD *_pdwStubPhase);
  1644. HRESULT STDMETHODCALLTYPE IVMRFilterConfig9_SetRenderingPrefs_Proxy(
  1645. IVMRFilterConfig9 * This,
  1646. /* [in] */ DWORD dwRenderFlags);
  1647. void __RPC_STUB IVMRFilterConfig9_SetRenderingPrefs_Stub(
  1648. IRpcStubBuffer *This,
  1649. IRpcChannelBuffer *_pRpcChannelBuffer,
  1650. PRPC_MESSAGE _pRpcMessage,
  1651. DWORD *_pdwStubPhase);
  1652. HRESULT STDMETHODCALLTYPE IVMRFilterConfig9_GetRenderingPrefs_Proxy(
  1653. IVMRFilterConfig9 * This,
  1654. /* [out] */ DWORD *pdwRenderFlags);
  1655. void __RPC_STUB IVMRFilterConfig9_GetRenderingPrefs_Stub(
  1656. IRpcStubBuffer *This,
  1657. IRpcChannelBuffer *_pRpcChannelBuffer,
  1658. PRPC_MESSAGE _pRpcMessage,
  1659. DWORD *_pdwStubPhase);
  1660. HRESULT STDMETHODCALLTYPE IVMRFilterConfig9_SetRenderingMode_Proxy(
  1661. IVMRFilterConfig9 * This,
  1662. /* [in] */ DWORD Mode);
  1663. void __RPC_STUB IVMRFilterConfig9_SetRenderingMode_Stub(
  1664. IRpcStubBuffer *This,
  1665. IRpcChannelBuffer *_pRpcChannelBuffer,
  1666. PRPC_MESSAGE _pRpcMessage,
  1667. DWORD *_pdwStubPhase);
  1668. HRESULT STDMETHODCALLTYPE IVMRFilterConfig9_GetRenderingMode_Proxy(
  1669. IVMRFilterConfig9 * This,
  1670. /* [out] */ DWORD *pMode);
  1671. void __RPC_STUB IVMRFilterConfig9_GetRenderingMode_Stub(
  1672. IRpcStubBuffer *This,
  1673. IRpcChannelBuffer *_pRpcChannelBuffer,
  1674. PRPC_MESSAGE _pRpcMessage,
  1675. DWORD *_pdwStubPhase);
  1676. #endif /* __IVMRFilterConfig9_INTERFACE_DEFINED__ */
  1677. #ifndef __IVMRAspectRatioControl9_INTERFACE_DEFINED__
  1678. #define __IVMRAspectRatioControl9_INTERFACE_DEFINED__
  1679. /* interface IVMRAspectRatioControl9 */
  1680. /* [unique][helpstring][uuid][local][object] */
  1681. EXTERN_C const IID IID_IVMRAspectRatioControl9;
  1682. #if defined(__cplusplus) && !defined(CINTERFACE)
  1683. MIDL_INTERFACE("00d96c29-bbde-4efc-9901-bb5036392146")
  1684. IVMRAspectRatioControl9 : public IUnknown
  1685. {
  1686. public:
  1687. virtual HRESULT STDMETHODCALLTYPE GetAspectRatioMode(
  1688. /* [out] */ LPDWORD lpdwARMode) = 0;
  1689. virtual HRESULT STDMETHODCALLTYPE SetAspectRatioMode(
  1690. /* [in] */ DWORD dwARMode) = 0;
  1691. };
  1692. #else /* C style interface */
  1693. typedef struct IVMRAspectRatioControl9Vtbl
  1694. {
  1695. BEGIN_INTERFACE
  1696. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1697. IVMRAspectRatioControl9 * This,
  1698. /* [in] */ REFIID riid,
  1699. /* [iid_is][out] */ void **ppvObject);
  1700. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1701. IVMRAspectRatioControl9 * This);
  1702. ULONG ( STDMETHODCALLTYPE *Release )(
  1703. IVMRAspectRatioControl9 * This);
  1704. HRESULT ( STDMETHODCALLTYPE *GetAspectRatioMode )(
  1705. IVMRAspectRatioControl9 * This,
  1706. /* [out] */ LPDWORD lpdwARMode);
  1707. HRESULT ( STDMETHODCALLTYPE *SetAspectRatioMode )(
  1708. IVMRAspectRatioControl9 * This,
  1709. /* [in] */ DWORD dwARMode);
  1710. END_INTERFACE
  1711. } IVMRAspectRatioControl9Vtbl;
  1712. interface IVMRAspectRatioControl9
  1713. {
  1714. CONST_VTBL struct IVMRAspectRatioControl9Vtbl *lpVtbl;
  1715. };
  1716. #ifdef COBJMACROS
  1717. #define IVMRAspectRatioControl9_QueryInterface(This,riid,ppvObject) \
  1718. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1719. #define IVMRAspectRatioControl9_AddRef(This) \
  1720. (This)->lpVtbl -> AddRef(This)
  1721. #define IVMRAspectRatioControl9_Release(This) \
  1722. (This)->lpVtbl -> Release(This)
  1723. #define IVMRAspectRatioControl9_GetAspectRatioMode(This,lpdwARMode) \
  1724. (This)->lpVtbl -> GetAspectRatioMode(This,lpdwARMode)
  1725. #define IVMRAspectRatioControl9_SetAspectRatioMode(This,dwARMode) \
  1726. (This)->lpVtbl -> SetAspectRatioMode(This,dwARMode)
  1727. #endif /* COBJMACROS */
  1728. #endif /* C style interface */
  1729. HRESULT STDMETHODCALLTYPE IVMRAspectRatioControl9_GetAspectRatioMode_Proxy(
  1730. IVMRAspectRatioControl9 * This,
  1731. /* [out] */ LPDWORD lpdwARMode);
  1732. void __RPC_STUB IVMRAspectRatioControl9_GetAspectRatioMode_Stub(
  1733. IRpcStubBuffer *This,
  1734. IRpcChannelBuffer *_pRpcChannelBuffer,
  1735. PRPC_MESSAGE _pRpcMessage,
  1736. DWORD *_pdwStubPhase);
  1737. HRESULT STDMETHODCALLTYPE IVMRAspectRatioControl9_SetAspectRatioMode_Proxy(
  1738. IVMRAspectRatioControl9 * This,
  1739. /* [in] */ DWORD dwARMode);
  1740. void __RPC_STUB IVMRAspectRatioControl9_SetAspectRatioMode_Stub(
  1741. IRpcStubBuffer *This,
  1742. IRpcChannelBuffer *_pRpcChannelBuffer,
  1743. PRPC_MESSAGE _pRpcMessage,
  1744. DWORD *_pdwStubPhase);
  1745. #endif /* __IVMRAspectRatioControl9_INTERFACE_DEFINED__ */
  1746. /* interface __MIDL_itf_vmr9_0020 */
  1747. /* [local] */
  1748. typedef struct _VMR9MonitorInfo
  1749. {
  1750. UINT uDevID;
  1751. RECT rcMonitor;
  1752. HMONITOR hMon;
  1753. DWORD dwFlags;
  1754. wchar_t szDevice[ 32 ];
  1755. wchar_t szDescription[ 512 ];
  1756. LARGE_INTEGER liDriverVersion;
  1757. DWORD dwVendorId;
  1758. DWORD dwDeviceId;
  1759. DWORD dwSubSysId;
  1760. DWORD dwRevision;
  1761. } VMR9MonitorInfo;
  1762. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0020_v0_0_c_ifspec;
  1763. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0020_v0_0_s_ifspec;
  1764. #ifndef __IVMRMonitorConfig9_INTERFACE_DEFINED__
  1765. #define __IVMRMonitorConfig9_INTERFACE_DEFINED__
  1766. /* interface IVMRMonitorConfig9 */
  1767. /* [unique][helpstring][uuid][local][object] */
  1768. EXTERN_C const IID IID_IVMRMonitorConfig9;
  1769. #if defined(__cplusplus) && !defined(CINTERFACE)
  1770. MIDL_INTERFACE("46c2e457-8ba0-4eef-b80b-0680f0978749")
  1771. IVMRMonitorConfig9 : public IUnknown
  1772. {
  1773. public:
  1774. virtual HRESULT STDMETHODCALLTYPE SetMonitor(
  1775. /* [in] */ UINT uDev) = 0;
  1776. virtual HRESULT STDMETHODCALLTYPE GetMonitor(
  1777. /* [out] */ UINT *puDev) = 0;
  1778. virtual HRESULT STDMETHODCALLTYPE SetDefaultMonitor(
  1779. /* [in] */ UINT uDev) = 0;
  1780. virtual HRESULT STDMETHODCALLTYPE GetDefaultMonitor(
  1781. /* [out] */ UINT *puDev) = 0;
  1782. virtual HRESULT STDMETHODCALLTYPE GetAvailableMonitors(
  1783. /* [size_is][out] */ VMR9MonitorInfo *pInfo,
  1784. /* [in] */ DWORD dwMaxInfoArraySize,
  1785. /* [out] */ DWORD *pdwNumDevices) = 0;
  1786. };
  1787. #else /* C style interface */
  1788. typedef struct IVMRMonitorConfig9Vtbl
  1789. {
  1790. BEGIN_INTERFACE
  1791. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1792. IVMRMonitorConfig9 * This,
  1793. /* [in] */ REFIID riid,
  1794. /* [iid_is][out] */ void **ppvObject);
  1795. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1796. IVMRMonitorConfig9 * This);
  1797. ULONG ( STDMETHODCALLTYPE *Release )(
  1798. IVMRMonitorConfig9 * This);
  1799. HRESULT ( STDMETHODCALLTYPE *SetMonitor )(
  1800. IVMRMonitorConfig9 * This,
  1801. /* [in] */ UINT uDev);
  1802. HRESULT ( STDMETHODCALLTYPE *GetMonitor )(
  1803. IVMRMonitorConfig9 * This,
  1804. /* [out] */ UINT *puDev);
  1805. HRESULT ( STDMETHODCALLTYPE *SetDefaultMonitor )(
  1806. IVMRMonitorConfig9 * This,
  1807. /* [in] */ UINT uDev);
  1808. HRESULT ( STDMETHODCALLTYPE *GetDefaultMonitor )(
  1809. IVMRMonitorConfig9 * This,
  1810. /* [out] */ UINT *puDev);
  1811. HRESULT ( STDMETHODCALLTYPE *GetAvailableMonitors )(
  1812. IVMRMonitorConfig9 * This,
  1813. /* [size_is][out] */ VMR9MonitorInfo *pInfo,
  1814. /* [in] */ DWORD dwMaxInfoArraySize,
  1815. /* [out] */ DWORD *pdwNumDevices);
  1816. END_INTERFACE
  1817. } IVMRMonitorConfig9Vtbl;
  1818. interface IVMRMonitorConfig9
  1819. {
  1820. CONST_VTBL struct IVMRMonitorConfig9Vtbl *lpVtbl;
  1821. };
  1822. #ifdef COBJMACROS
  1823. #define IVMRMonitorConfig9_QueryInterface(This,riid,ppvObject) \
  1824. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  1825. #define IVMRMonitorConfig9_AddRef(This) \
  1826. (This)->lpVtbl -> AddRef(This)
  1827. #define IVMRMonitorConfig9_Release(This) \
  1828. (This)->lpVtbl -> Release(This)
  1829. #define IVMRMonitorConfig9_SetMonitor(This,uDev) \
  1830. (This)->lpVtbl -> SetMonitor(This,uDev)
  1831. #define IVMRMonitorConfig9_GetMonitor(This,puDev) \
  1832. (This)->lpVtbl -> GetMonitor(This,puDev)
  1833. #define IVMRMonitorConfig9_SetDefaultMonitor(This,uDev) \
  1834. (This)->lpVtbl -> SetDefaultMonitor(This,uDev)
  1835. #define IVMRMonitorConfig9_GetDefaultMonitor(This,puDev) \
  1836. (This)->lpVtbl -> GetDefaultMonitor(This,puDev)
  1837. #define IVMRMonitorConfig9_GetAvailableMonitors(This,pInfo,dwMaxInfoArraySize,pdwNumDevices) \
  1838. (This)->lpVtbl -> GetAvailableMonitors(This,pInfo,dwMaxInfoArraySize,pdwNumDevices)
  1839. #endif /* COBJMACROS */
  1840. #endif /* C style interface */
  1841. HRESULT STDMETHODCALLTYPE IVMRMonitorConfig9_SetMonitor_Proxy(
  1842. IVMRMonitorConfig9 * This,
  1843. /* [in] */ UINT uDev);
  1844. void __RPC_STUB IVMRMonitorConfig9_SetMonitor_Stub(
  1845. IRpcStubBuffer *This,
  1846. IRpcChannelBuffer *_pRpcChannelBuffer,
  1847. PRPC_MESSAGE _pRpcMessage,
  1848. DWORD *_pdwStubPhase);
  1849. HRESULT STDMETHODCALLTYPE IVMRMonitorConfig9_GetMonitor_Proxy(
  1850. IVMRMonitorConfig9 * This,
  1851. /* [out] */ UINT *puDev);
  1852. void __RPC_STUB IVMRMonitorConfig9_GetMonitor_Stub(
  1853. IRpcStubBuffer *This,
  1854. IRpcChannelBuffer *_pRpcChannelBuffer,
  1855. PRPC_MESSAGE _pRpcMessage,
  1856. DWORD *_pdwStubPhase);
  1857. HRESULT STDMETHODCALLTYPE IVMRMonitorConfig9_SetDefaultMonitor_Proxy(
  1858. IVMRMonitorConfig9 * This,
  1859. /* [in] */ UINT uDev);
  1860. void __RPC_STUB IVMRMonitorConfig9_SetDefaultMonitor_Stub(
  1861. IRpcStubBuffer *This,
  1862. IRpcChannelBuffer *_pRpcChannelBuffer,
  1863. PRPC_MESSAGE _pRpcMessage,
  1864. DWORD *_pdwStubPhase);
  1865. HRESULT STDMETHODCALLTYPE IVMRMonitorConfig9_GetDefaultMonitor_Proxy(
  1866. IVMRMonitorConfig9 * This,
  1867. /* [out] */ UINT *puDev);
  1868. void __RPC_STUB IVMRMonitorConfig9_GetDefaultMonitor_Stub(
  1869. IRpcStubBuffer *This,
  1870. IRpcChannelBuffer *_pRpcChannelBuffer,
  1871. PRPC_MESSAGE _pRpcMessage,
  1872. DWORD *_pdwStubPhase);
  1873. HRESULT STDMETHODCALLTYPE IVMRMonitorConfig9_GetAvailableMonitors_Proxy(
  1874. IVMRMonitorConfig9 * This,
  1875. /* [size_is][out] */ VMR9MonitorInfo *pInfo,
  1876. /* [in] */ DWORD dwMaxInfoArraySize,
  1877. /* [out] */ DWORD *pdwNumDevices);
  1878. void __RPC_STUB IVMRMonitorConfig9_GetAvailableMonitors_Stub(
  1879. IRpcStubBuffer *This,
  1880. IRpcChannelBuffer *_pRpcChannelBuffer,
  1881. PRPC_MESSAGE _pRpcMessage,
  1882. DWORD *_pdwStubPhase);
  1883. #endif /* __IVMRMonitorConfig9_INTERFACE_DEFINED__ */
  1884. /* interface __MIDL_itf_vmr9_0021 */
  1885. /* [local] */
  1886. typedef /* [public] */
  1887. enum __MIDL___MIDL_itf_vmr9_0021_0001
  1888. { DeinterlacePref9_NextBest = 0x1,
  1889. DeinterlacePref9_BOB = 0x2,
  1890. DeinterlacePref9_Weave = 0x4,
  1891. DeinterlacePref9_Mask = 0x7
  1892. } VMR9DeinterlacePrefs;
  1893. typedef /* [public][public][public] */
  1894. enum __MIDL___MIDL_itf_vmr9_0021_0002
  1895. { DeinterlaceTech9_Unknown = 0,
  1896. DeinterlaceTech9_BOBLineReplicate = 0x1,
  1897. DeinterlaceTech9_BOBVerticalStretch = 0x2,
  1898. DeinterlaceTech9_MedianFiltering = 0x4,
  1899. DeinterlaceTech9_EdgeFiltering = 0x10,
  1900. DeinterlaceTech9_FieldAdaptive = 0x20,
  1901. DeinterlaceTech9_PixelAdaptive = 0x40,
  1902. DeinterlaceTech9_MotionVectorSteered = 0x80
  1903. } VMR9DeinterlaceTech;
  1904. typedef struct _VMR9Frequency
  1905. {
  1906. DWORD dwNumerator;
  1907. DWORD dwDenominator;
  1908. } VMR9Frequency;
  1909. typedef
  1910. enum _VMR9_SampleFormat
  1911. { VMR9_SampleReserved = 1,
  1912. VMR9_SampleProgressiveFrame = 2,
  1913. VMR9_SampleFieldInterleavedEvenFirst = 3,
  1914. VMR9_SampleFieldInterleavedOddFirst = 4,
  1915. VMR9_SampleFieldSingleEven = 5,
  1916. VMR9_SampleFieldSingleOdd = 6
  1917. } VMR9_SampleFormat;
  1918. typedef struct _VMR9VideoDesc
  1919. {
  1920. DWORD dwSize;
  1921. DWORD dwSampleWidth;
  1922. DWORD dwSampleHeight;
  1923. VMR9_SampleFormat SampleFormat;
  1924. DWORD dwFourCC;
  1925. VMR9Frequency InputSampleFreq;
  1926. VMR9Frequency OutputFrameFreq;
  1927. } VMR9VideoDesc;
  1928. typedef struct _VMR9DeinterlaceCaps
  1929. {
  1930. DWORD dwSize;
  1931. DWORD dwNumPreviousOutputFrames;
  1932. DWORD dwNumForwardRefSamples;
  1933. DWORD dwNumBackwardRefSamples;
  1934. VMR9DeinterlaceTech DeinterlaceTechnology;
  1935. } VMR9DeinterlaceCaps;
  1936. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0021_v0_0_c_ifspec;
  1937. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0021_v0_0_s_ifspec;
  1938. #ifndef __IVMRDeinterlaceControl9_INTERFACE_DEFINED__
  1939. #define __IVMRDeinterlaceControl9_INTERFACE_DEFINED__
  1940. /* interface IVMRDeinterlaceControl9 */
  1941. /* [unique][helpstring][uuid][local][object] */
  1942. EXTERN_C const IID IID_IVMRDeinterlaceControl9;
  1943. #if defined(__cplusplus) && !defined(CINTERFACE)
  1944. MIDL_INTERFACE("a215fb8d-13c2-4f7f-993c-003d6271a459")
  1945. IVMRDeinterlaceControl9 : public IUnknown
  1946. {
  1947. public:
  1948. virtual HRESULT STDMETHODCALLTYPE GetNumberOfDeinterlaceModes(
  1949. /* [in] */ VMR9VideoDesc *lpVideoDescription,
  1950. /* [out][in] */ LPDWORD lpdwNumDeinterlaceModes,
  1951. /* [out] */ LPGUID lpDeinterlaceModes) = 0;
  1952. virtual HRESULT STDMETHODCALLTYPE GetDeinterlaceModeCaps(
  1953. /* [in] */ LPGUID lpDeinterlaceMode,
  1954. /* [in] */ VMR9VideoDesc *lpVideoDescription,
  1955. /* [out] */ VMR9DeinterlaceCaps *lpDeinterlaceCaps) = 0;
  1956. virtual HRESULT STDMETHODCALLTYPE GetDeinterlaceMode(
  1957. /* [in] */ DWORD dwStreamID,
  1958. /* [out] */ LPGUID lpDeinterlaceMode) = 0;
  1959. virtual HRESULT STDMETHODCALLTYPE SetDeinterlaceMode(
  1960. /* [in] */ DWORD dwStreamID,
  1961. /* [in] */ LPGUID lpDeinterlaceMode) = 0;
  1962. virtual HRESULT STDMETHODCALLTYPE GetDeinterlacePrefs(
  1963. /* [out] */ LPDWORD lpdwDeinterlacePrefs) = 0;
  1964. virtual HRESULT STDMETHODCALLTYPE SetDeinterlacePrefs(
  1965. /* [in] */ DWORD dwDeinterlacePrefs) = 0;
  1966. virtual HRESULT STDMETHODCALLTYPE GetActualDeinterlaceMode(
  1967. /* [in] */ DWORD dwStreamID,
  1968. /* [out] */ LPGUID lpDeinterlaceMode) = 0;
  1969. };
  1970. #else /* C style interface */
  1971. typedef struct IVMRDeinterlaceControl9Vtbl
  1972. {
  1973. BEGIN_INTERFACE
  1974. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1975. IVMRDeinterlaceControl9 * This,
  1976. /* [in] */ REFIID riid,
  1977. /* [iid_is][out] */ void **ppvObject);
  1978. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1979. IVMRDeinterlaceControl9 * This);
  1980. ULONG ( STDMETHODCALLTYPE *Release )(
  1981. IVMRDeinterlaceControl9 * This);
  1982. HRESULT ( STDMETHODCALLTYPE *GetNumberOfDeinterlaceModes )(
  1983. IVMRDeinterlaceControl9 * This,
  1984. /* [in] */ VMR9VideoDesc *lpVideoDescription,
  1985. /* [out][in] */ LPDWORD lpdwNumDeinterlaceModes,
  1986. /* [out] */ LPGUID lpDeinterlaceModes);
  1987. HRESULT ( STDMETHODCALLTYPE *GetDeinterlaceModeCaps )(
  1988. IVMRDeinterlaceControl9 * This,
  1989. /* [in] */ LPGUID lpDeinterlaceMode,
  1990. /* [in] */ VMR9VideoDesc *lpVideoDescription,
  1991. /* [out] */ VMR9DeinterlaceCaps *lpDeinterlaceCaps);
  1992. HRESULT ( STDMETHODCALLTYPE *GetDeinterlaceMode )(
  1993. IVMRDeinterlaceControl9 * This,
  1994. /* [in] */ DWORD dwStreamID,
  1995. /* [out] */ LPGUID lpDeinterlaceMode);
  1996. HRESULT ( STDMETHODCALLTYPE *SetDeinterlaceMode )(
  1997. IVMRDeinterlaceControl9 * This,
  1998. /* [in] */ DWORD dwStreamID,
  1999. /* [in] */ LPGUID lpDeinterlaceMode);
  2000. HRESULT ( STDMETHODCALLTYPE *GetDeinterlacePrefs )(
  2001. IVMRDeinterlaceControl9 * This,
  2002. /* [out] */ LPDWORD lpdwDeinterlacePrefs);
  2003. HRESULT ( STDMETHODCALLTYPE *SetDeinterlacePrefs )(
  2004. IVMRDeinterlaceControl9 * This,
  2005. /* [in] */ DWORD dwDeinterlacePrefs);
  2006. HRESULT ( STDMETHODCALLTYPE *GetActualDeinterlaceMode )(
  2007. IVMRDeinterlaceControl9 * This,
  2008. /* [in] */ DWORD dwStreamID,
  2009. /* [out] */ LPGUID lpDeinterlaceMode);
  2010. END_INTERFACE
  2011. } IVMRDeinterlaceControl9Vtbl;
  2012. interface IVMRDeinterlaceControl9
  2013. {
  2014. CONST_VTBL struct IVMRDeinterlaceControl9Vtbl *lpVtbl;
  2015. };
  2016. #ifdef COBJMACROS
  2017. #define IVMRDeinterlaceControl9_QueryInterface(This,riid,ppvObject) \
  2018. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2019. #define IVMRDeinterlaceControl9_AddRef(This) \
  2020. (This)->lpVtbl -> AddRef(This)
  2021. #define IVMRDeinterlaceControl9_Release(This) \
  2022. (This)->lpVtbl -> Release(This)
  2023. #define IVMRDeinterlaceControl9_GetNumberOfDeinterlaceModes(This,lpVideoDescription,lpdwNumDeinterlaceModes,lpDeinterlaceModes) \
  2024. (This)->lpVtbl -> GetNumberOfDeinterlaceModes(This,lpVideoDescription,lpdwNumDeinterlaceModes,lpDeinterlaceModes)
  2025. #define IVMRDeinterlaceControl9_GetDeinterlaceModeCaps(This,lpDeinterlaceMode,lpVideoDescription,lpDeinterlaceCaps) \
  2026. (This)->lpVtbl -> GetDeinterlaceModeCaps(This,lpDeinterlaceMode,lpVideoDescription,lpDeinterlaceCaps)
  2027. #define IVMRDeinterlaceControl9_GetDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) \
  2028. (This)->lpVtbl -> GetDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode)
  2029. #define IVMRDeinterlaceControl9_SetDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) \
  2030. (This)->lpVtbl -> SetDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode)
  2031. #define IVMRDeinterlaceControl9_GetDeinterlacePrefs(This,lpdwDeinterlacePrefs) \
  2032. (This)->lpVtbl -> GetDeinterlacePrefs(This,lpdwDeinterlacePrefs)
  2033. #define IVMRDeinterlaceControl9_SetDeinterlacePrefs(This,dwDeinterlacePrefs) \
  2034. (This)->lpVtbl -> SetDeinterlacePrefs(This,dwDeinterlacePrefs)
  2035. #define IVMRDeinterlaceControl9_GetActualDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode) \
  2036. (This)->lpVtbl -> GetActualDeinterlaceMode(This,dwStreamID,lpDeinterlaceMode)
  2037. #endif /* COBJMACROS */
  2038. #endif /* C style interface */
  2039. HRESULT STDMETHODCALLTYPE IVMRDeinterlaceControl9_GetNumberOfDeinterlaceModes_Proxy(
  2040. IVMRDeinterlaceControl9 * This,
  2041. /* [in] */ VMR9VideoDesc *lpVideoDescription,
  2042. /* [out][in] */ LPDWORD lpdwNumDeinterlaceModes,
  2043. /* [out] */ LPGUID lpDeinterlaceModes);
  2044. void __RPC_STUB IVMRDeinterlaceControl9_GetNumberOfDeinterlaceModes_Stub(
  2045. IRpcStubBuffer *This,
  2046. IRpcChannelBuffer *_pRpcChannelBuffer,
  2047. PRPC_MESSAGE _pRpcMessage,
  2048. DWORD *_pdwStubPhase);
  2049. HRESULT STDMETHODCALLTYPE IVMRDeinterlaceControl9_GetDeinterlaceModeCaps_Proxy(
  2050. IVMRDeinterlaceControl9 * This,
  2051. /* [in] */ LPGUID lpDeinterlaceMode,
  2052. /* [in] */ VMR9VideoDesc *lpVideoDescription,
  2053. /* [out] */ VMR9DeinterlaceCaps *lpDeinterlaceCaps);
  2054. void __RPC_STUB IVMRDeinterlaceControl9_GetDeinterlaceModeCaps_Stub(
  2055. IRpcStubBuffer *This,
  2056. IRpcChannelBuffer *_pRpcChannelBuffer,
  2057. PRPC_MESSAGE _pRpcMessage,
  2058. DWORD *_pdwStubPhase);
  2059. HRESULT STDMETHODCALLTYPE IVMRDeinterlaceControl9_GetDeinterlaceMode_Proxy(
  2060. IVMRDeinterlaceControl9 * This,
  2061. /* [in] */ DWORD dwStreamID,
  2062. /* [out] */ LPGUID lpDeinterlaceMode);
  2063. void __RPC_STUB IVMRDeinterlaceControl9_GetDeinterlaceMode_Stub(
  2064. IRpcStubBuffer *This,
  2065. IRpcChannelBuffer *_pRpcChannelBuffer,
  2066. PRPC_MESSAGE _pRpcMessage,
  2067. DWORD *_pdwStubPhase);
  2068. HRESULT STDMETHODCALLTYPE IVMRDeinterlaceControl9_SetDeinterlaceMode_Proxy(
  2069. IVMRDeinterlaceControl9 * This,
  2070. /* [in] */ DWORD dwStreamID,
  2071. /* [in] */ LPGUID lpDeinterlaceMode);
  2072. void __RPC_STUB IVMRDeinterlaceControl9_SetDeinterlaceMode_Stub(
  2073. IRpcStubBuffer *This,
  2074. IRpcChannelBuffer *_pRpcChannelBuffer,
  2075. PRPC_MESSAGE _pRpcMessage,
  2076. DWORD *_pdwStubPhase);
  2077. HRESULT STDMETHODCALLTYPE IVMRDeinterlaceControl9_GetDeinterlacePrefs_Proxy(
  2078. IVMRDeinterlaceControl9 * This,
  2079. /* [out] */ LPDWORD lpdwDeinterlacePrefs);
  2080. void __RPC_STUB IVMRDeinterlaceControl9_GetDeinterlacePrefs_Stub(
  2081. IRpcStubBuffer *This,
  2082. IRpcChannelBuffer *_pRpcChannelBuffer,
  2083. PRPC_MESSAGE _pRpcMessage,
  2084. DWORD *_pdwStubPhase);
  2085. HRESULT STDMETHODCALLTYPE IVMRDeinterlaceControl9_SetDeinterlacePrefs_Proxy(
  2086. IVMRDeinterlaceControl9 * This,
  2087. /* [in] */ DWORD dwDeinterlacePrefs);
  2088. void __RPC_STUB IVMRDeinterlaceControl9_SetDeinterlacePrefs_Stub(
  2089. IRpcStubBuffer *This,
  2090. IRpcChannelBuffer *_pRpcChannelBuffer,
  2091. PRPC_MESSAGE _pRpcMessage,
  2092. DWORD *_pdwStubPhase);
  2093. HRESULT STDMETHODCALLTYPE IVMRDeinterlaceControl9_GetActualDeinterlaceMode_Proxy(
  2094. IVMRDeinterlaceControl9 * This,
  2095. /* [in] */ DWORD dwStreamID,
  2096. /* [out] */ LPGUID lpDeinterlaceMode);
  2097. void __RPC_STUB IVMRDeinterlaceControl9_GetActualDeinterlaceMode_Stub(
  2098. IRpcStubBuffer *This,
  2099. IRpcChannelBuffer *_pRpcChannelBuffer,
  2100. PRPC_MESSAGE _pRpcMessage,
  2101. DWORD *_pdwStubPhase);
  2102. #endif /* __IVMRDeinterlaceControl9_INTERFACE_DEFINED__ */
  2103. /* interface __MIDL_itf_vmr9_0022 */
  2104. /* [local] */
  2105. typedef struct _VMR9VideoStreamInfo
  2106. {
  2107. IDirect3DSurface9 *pddsVideoSurface;
  2108. DWORD dwWidth;
  2109. DWORD dwHeight;
  2110. DWORD dwStrmID;
  2111. FLOAT fAlpha;
  2112. VMR9NormalizedRect rNormal;
  2113. REFERENCE_TIME rtStart;
  2114. REFERENCE_TIME rtEnd;
  2115. VMR9_SampleFormat SampleFormat;
  2116. } VMR9VideoStreamInfo;
  2117. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0022_v0_0_c_ifspec;
  2118. extern RPC_IF_HANDLE __MIDL_itf_vmr9_0022_v0_0_s_ifspec;
  2119. #ifndef __IVMRImageCompositor9_INTERFACE_DEFINED__
  2120. #define __IVMRImageCompositor9_INTERFACE_DEFINED__
  2121. /* interface IVMRImageCompositor9 */
  2122. /* [unique][helpstring][uuid][local][object][local] */
  2123. EXTERN_C const IID IID_IVMRImageCompositor9;
  2124. #if defined(__cplusplus) && !defined(CINTERFACE)
  2125. MIDL_INTERFACE("4a5c89eb-df51-4654-ac2a-e48e02bbabf6")
  2126. IVMRImageCompositor9 : public IUnknown
  2127. {
  2128. public:
  2129. virtual HRESULT STDMETHODCALLTYPE InitCompositionDevice(
  2130. /* [in] */ IUnknown *pD3DDevice) = 0;
  2131. virtual HRESULT STDMETHODCALLTYPE TermCompositionDevice(
  2132. /* [in] */ IUnknown *pD3DDevice) = 0;
  2133. virtual HRESULT STDMETHODCALLTYPE SetStreamMediaType(
  2134. /* [in] */ DWORD dwStrmID,
  2135. /* [in] */ AM_MEDIA_TYPE *pmt,
  2136. /* [in] */ BOOL fTexture) = 0;
  2137. virtual HRESULT STDMETHODCALLTYPE CompositeImage(
  2138. /* [in] */ IUnknown *pD3DDevice,
  2139. /* [in] */ IDirect3DSurface9 *pddsRenderTarget,
  2140. /* [in] */ AM_MEDIA_TYPE *pmtRenderTarget,
  2141. /* [in] */ REFERENCE_TIME rtStart,
  2142. /* [in] */ REFERENCE_TIME rtEnd,
  2143. /* [in] */ D3DCOLOR dwClrBkGnd,
  2144. /* [in] */ VMR9VideoStreamInfo *pVideoStreamInfo,
  2145. /* [in] */ UINT cStreams) = 0;
  2146. };
  2147. #else /* C style interface */
  2148. typedef struct IVMRImageCompositor9Vtbl
  2149. {
  2150. BEGIN_INTERFACE
  2151. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  2152. IVMRImageCompositor9 * This,
  2153. /* [in] */ REFIID riid,
  2154. /* [iid_is][out] */ void **ppvObject);
  2155. ULONG ( STDMETHODCALLTYPE *AddRef )(
  2156. IVMRImageCompositor9 * This);
  2157. ULONG ( STDMETHODCALLTYPE *Release )(
  2158. IVMRImageCompositor9 * This);
  2159. HRESULT ( STDMETHODCALLTYPE *InitCompositionDevice )(
  2160. IVMRImageCompositor9 * This,
  2161. /* [in] */ IUnknown *pD3DDevice);
  2162. HRESULT ( STDMETHODCALLTYPE *TermCompositionDevice )(
  2163. IVMRImageCompositor9 * This,
  2164. /* [in] */ IUnknown *pD3DDevice);
  2165. HRESULT ( STDMETHODCALLTYPE *SetStreamMediaType )(
  2166. IVMRImageCompositor9 * This,
  2167. /* [in] */ DWORD dwStrmID,
  2168. /* [in] */ AM_MEDIA_TYPE *pmt,
  2169. /* [in] */ BOOL fTexture);
  2170. HRESULT ( STDMETHODCALLTYPE *CompositeImage )(
  2171. IVMRImageCompositor9 * This,
  2172. /* [in] */ IUnknown *pD3DDevice,
  2173. /* [in] */ IDirect3DSurface9 *pddsRenderTarget,
  2174. /* [in] */ AM_MEDIA_TYPE *pmtRenderTarget,
  2175. /* [in] */ REFERENCE_TIME rtStart,
  2176. /* [in] */ REFERENCE_TIME rtEnd,
  2177. /* [in] */ D3DCOLOR dwClrBkGnd,
  2178. /* [in] */ VMR9VideoStreamInfo *pVideoStreamInfo,
  2179. /* [in] */ UINT cStreams);
  2180. END_INTERFACE
  2181. } IVMRImageCompositor9Vtbl;
  2182. interface IVMRImageCompositor9
  2183. {
  2184. CONST_VTBL struct IVMRImageCompositor9Vtbl *lpVtbl;
  2185. };
  2186. #ifdef COBJMACROS
  2187. #define IVMRImageCompositor9_QueryInterface(This,riid,ppvObject) \
  2188. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  2189. #define IVMRImageCompositor9_AddRef(This) \
  2190. (This)->lpVtbl -> AddRef(This)
  2191. #define IVMRImageCompositor9_Release(This) \
  2192. (This)->lpVtbl -> Release(This)
  2193. #define IVMRImageCompositor9_InitCompositionDevice(This,pD3DDevice) \
  2194. (This)->lpVtbl -> InitCompositionDevice(This,pD3DDevice)
  2195. #define IVMRImageCompositor9_TermCompositionDevice(This,pD3DDevice) \
  2196. (This)->lpVtbl -> TermCompositionDevice(This,pD3DDevice)
  2197. #define IVMRImageCompositor9_SetStreamMediaType(This,dwStrmID,pmt,fTexture) \
  2198. (This)->lpVtbl -> SetStreamMediaType(This,dwStrmID,pmt,fTexture)
  2199. #define IVMRImageCompositor9_CompositeImage(This,pD3DDevice,pddsRenderTarget,pmtRenderTarget,rtStart,rtEnd,dwClrBkGnd,pVideoStreamInfo,cStreams) \
  2200. (This)->lpVtbl -> CompositeImage(This,pD3DDevice,pddsRenderTarget,pmtRenderTarget,rtStart,rtEnd,dwClrBkGnd,pVideoStreamInfo,cStreams)
  2201. #endif /* COBJMACROS */
  2202. #endif /* C style interface */
  2203. HRESULT STDMETHODCALLTYPE IVMRImageCompositor9_InitCompositionDevice_Proxy(
  2204. IVMRImageCompositor9 * This,
  2205. /* [in] */ IUnknown *pD3DDevice);
  2206. void __RPC_STUB IVMRImageCompositor9_InitCompositionDevice_Stub(
  2207. IRpcStubBuffer *This,
  2208. IRpcChannelBuffer *_pRpcChannelBuffer,
  2209. PRPC_MESSAGE _pRpcMessage,
  2210. DWORD *_pdwStubPhase);
  2211. HRESULT STDMETHODCALLTYPE IVMRImageCompositor9_TermCompositionDevice_Proxy(
  2212. IVMRImageCompositor9 * This,
  2213. /* [in] */ IUnknown *pD3DDevice);
  2214. void __RPC_STUB IVMRImageCompositor9_TermCompositionDevice_Stub(
  2215. IRpcStubBuffer *This,
  2216. IRpcChannelBuffer *_pRpcChannelBuffer,
  2217. PRPC_MESSAGE _pRpcMessage,
  2218. DWORD *_pdwStubPhase);
  2219. HRESULT STDMETHODCALLTYPE IVMRImageCompositor9_SetStreamMediaType_Proxy(
  2220. IVMRImageCompositor9 * This,
  2221. /* [in] */ DWORD dwStrmID,
  2222. /* [in] */ AM_MEDIA_TYPE *pmt,
  2223. /* [in] */ BOOL fTexture);
  2224. void __RPC_STUB IVMRImageCompositor9_SetStreamMediaType_Stub(
  2225. IRpcStubBuffer *This,
  2226. IRpcChannelBuffer *_pRpcChannelBuffer,
  2227. PRPC_MESSAGE _pRpcMessage,
  2228. DWORD *_pdwStubPhase);
  2229. HRESULT STDMETHODCALLTYPE IVMRImageCompositor9_CompositeImage_Proxy(
  2230. IVMRImageCompositor9 * This,
  2231. /* [in] */ IUnknown *pD3DDevice,
  2232. /* [in] */ IDirect3DSurface9 *pddsRenderTarget,
  2233. /* [in] */ AM_MEDIA_TYPE *pmtRenderTarget,
  2234. /* [in] */ REFERENCE_TIME rtStart,
  2235. /* [in] */ REFERENCE_TIME rtEnd,
  2236. /* [in] */ D3DCOLOR dwClrBkGnd,
  2237. /* [in] */ VMR9VideoStreamInfo *pVideoStreamInfo,
  2238. /* [in] */ UINT cStreams);
  2239. void __RPC_STUB IVMRImageCompositor9_CompositeImage_Stub(
  2240. IRpcStubBuffer *This,
  2241. IRpcChannelBuffer *_pRpcChannelBuffer,
  2242. PRPC_MESSAGE _pRpcMessage,
  2243. DWORD *_pdwStubPhase);
  2244. #endif /* __IVMRImageCompositor9_INTERFACE_DEFINED__ */
  2245. /* Additional Prototypes for ALL interfaces */
  2246. /* end of Additional Prototypes */
  2247. #ifdef __cplusplus
  2248. }
  2249. #endif
  2250. #endif