wmdxva.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445
  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for wmdxva.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  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 __wmdxva_h__
  27. #define __wmdxva_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IWMPlayerTimestampHook_FWD_DEFINED__
  33. #define __IWMPlayerTimestampHook_FWD_DEFINED__
  34. typedef interface IWMPlayerTimestampHook IWMPlayerTimestampHook;
  35. #endif /* __IWMPlayerTimestampHook_FWD_DEFINED__ */
  36. #ifndef __IWMCodecAMVideoAccelerator_FWD_DEFINED__
  37. #define __IWMCodecAMVideoAccelerator_FWD_DEFINED__
  38. typedef interface IWMCodecAMVideoAccelerator IWMCodecAMVideoAccelerator;
  39. #endif /* __IWMCodecAMVideoAccelerator_FWD_DEFINED__ */
  40. #ifndef __IWMCodecVideoAccelerator_FWD_DEFINED__
  41. #define __IWMCodecVideoAccelerator_FWD_DEFINED__
  42. typedef interface IWMCodecVideoAccelerator IWMCodecVideoAccelerator;
  43. #endif /* __IWMCodecVideoAccelerator_FWD_DEFINED__ */
  44. /* header files for imported files */
  45. #include "mediaobj.h"
  46. #include "videoacc.h"
  47. #ifdef __cplusplus
  48. extern "C"{
  49. #endif
  50. void * __RPC_USER MIDL_user_allocate(size_t);
  51. void __RPC_USER MIDL_user_free( void * );
  52. /* interface __MIDL_itf_wmdxva_0000 */
  53. /* [local] */
  54. //=========================================================================
  55. //
  56. // Microsoft Windows Media Technologies
  57. // Copyright (C) Microsoft Corporation. All Rights Reserved.
  58. //
  59. //=========================================================================
  60. EXTERN_GUID( IID_IWMPlayerTimestampHook, 0x28580dda, 0xd98e, 0x48d0, 0xb7, 0xae, 0x69, 0xe4, 0x73, 0xa0, 0x28, 0x25);
  61. EXTERN_GUID( IID_IWMCodecVideoAccelerator, 0x990641b0, 0x739f, 0x4e94, 0xa8, 0x08, 0x98, 0x88, 0xda, 0x8f, 0x75, 0xaf);
  62. EXTERN_GUID( IID_IWMCodecAMVideoAccelerator, 0xd98ee251, 0x34e0, 0x4a2d, 0x93, 0x12, 0x9b, 0x4c, 0x78, 0x8d, 0x9f, 0xa1);
  63. extern RPC_IF_HANDLE __MIDL_itf_wmdxva_0000_v0_0_c_ifspec;
  64. extern RPC_IF_HANDLE __MIDL_itf_wmdxva_0000_v0_0_s_ifspec;
  65. #ifndef __IWMPlayerTimestampHook_INTERFACE_DEFINED__
  66. #define __IWMPlayerTimestampHook_INTERFACE_DEFINED__
  67. /* interface IWMPlayerTimestampHook */
  68. /* [local][unique][helpstring][uuid][object] */
  69. EXTERN_C const IID IID_IWMPlayerTimestampHook;
  70. #if defined(__cplusplus) && !defined(CINTERFACE)
  71. MIDL_INTERFACE("28580dda-d98e-48d0-b7ae-69e473a02825")
  72. IWMPlayerTimestampHook : public IUnknown
  73. {
  74. public:
  75. virtual HRESULT STDMETHODCALLTYPE MapTimestamp(
  76. /* [in] */ REFERENCE_TIME rtIn,
  77. /* [out] */ REFERENCE_TIME *prtOut) = 0;
  78. };
  79. #else /* C style interface */
  80. typedef struct IWMPlayerTimestampHookVtbl
  81. {
  82. BEGIN_INTERFACE
  83. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  84. IWMPlayerTimestampHook * This,
  85. /* [in] */ REFIID riid,
  86. /* [iid_is][out] */ void **ppvObject);
  87. ULONG ( STDMETHODCALLTYPE *AddRef )(
  88. IWMPlayerTimestampHook * This);
  89. ULONG ( STDMETHODCALLTYPE *Release )(
  90. IWMPlayerTimestampHook * This);
  91. HRESULT ( STDMETHODCALLTYPE *MapTimestamp )(
  92. IWMPlayerTimestampHook * This,
  93. /* [in] */ REFERENCE_TIME rtIn,
  94. /* [out] */ REFERENCE_TIME *prtOut);
  95. END_INTERFACE
  96. } IWMPlayerTimestampHookVtbl;
  97. interface IWMPlayerTimestampHook
  98. {
  99. CONST_VTBL struct IWMPlayerTimestampHookVtbl *lpVtbl;
  100. };
  101. #ifdef COBJMACROS
  102. #define IWMPlayerTimestampHook_QueryInterface(This,riid,ppvObject) \
  103. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  104. #define IWMPlayerTimestampHook_AddRef(This) \
  105. (This)->lpVtbl -> AddRef(This)
  106. #define IWMPlayerTimestampHook_Release(This) \
  107. (This)->lpVtbl -> Release(This)
  108. #define IWMPlayerTimestampHook_MapTimestamp(This,rtIn,prtOut) \
  109. (This)->lpVtbl -> MapTimestamp(This,rtIn,prtOut)
  110. #endif /* COBJMACROS */
  111. #endif /* C style interface */
  112. HRESULT STDMETHODCALLTYPE IWMPlayerTimestampHook_MapTimestamp_Proxy(
  113. IWMPlayerTimestampHook * This,
  114. /* [in] */ REFERENCE_TIME rtIn,
  115. /* [out] */ REFERENCE_TIME *prtOut);
  116. void __RPC_STUB IWMPlayerTimestampHook_MapTimestamp_Stub(
  117. IRpcStubBuffer *This,
  118. IRpcChannelBuffer *_pRpcChannelBuffer,
  119. PRPC_MESSAGE _pRpcMessage,
  120. DWORD *_pdwStubPhase);
  121. #endif /* __IWMPlayerTimestampHook_INTERFACE_DEFINED__ */
  122. #ifndef __IWMCodecAMVideoAccelerator_INTERFACE_DEFINED__
  123. #define __IWMCodecAMVideoAccelerator_INTERFACE_DEFINED__
  124. /* interface IWMCodecAMVideoAccelerator */
  125. /* [local][unique][helpstring][uuid][object] */
  126. EXTERN_C const IID IID_IWMCodecAMVideoAccelerator;
  127. #if defined(__cplusplus) && !defined(CINTERFACE)
  128. MIDL_INTERFACE("d98ee251-34e0-4a2d-9312-9b4c788d9fa1")
  129. IWMCodecAMVideoAccelerator : public IUnknown
  130. {
  131. public:
  132. virtual HRESULT STDMETHODCALLTYPE SetAcceleratorInterface(
  133. /* [in] */ IAMVideoAccelerator *pIAMVA) = 0;
  134. virtual HRESULT STDMETHODCALLTYPE NegotiateConnection(
  135. /* [in] */ DMO_MEDIA_TYPE *pMediaType) = 0;
  136. virtual HRESULT STDMETHODCALLTYPE SetPlayerNotify(
  137. /* [in] */ IWMPlayerTimestampHook *pHook) = 0;
  138. };
  139. #else /* C style interface */
  140. typedef struct IWMCodecAMVideoAcceleratorVtbl
  141. {
  142. BEGIN_INTERFACE
  143. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  144. IWMCodecAMVideoAccelerator * This,
  145. /* [in] */ REFIID riid,
  146. /* [iid_is][out] */ void **ppvObject);
  147. ULONG ( STDMETHODCALLTYPE *AddRef )(
  148. IWMCodecAMVideoAccelerator * This);
  149. ULONG ( STDMETHODCALLTYPE *Release )(
  150. IWMCodecAMVideoAccelerator * This);
  151. HRESULT ( STDMETHODCALLTYPE *SetAcceleratorInterface )(
  152. IWMCodecAMVideoAccelerator * This,
  153. /* [in] */ IAMVideoAccelerator *pIAMVA);
  154. HRESULT ( STDMETHODCALLTYPE *NegotiateConnection )(
  155. IWMCodecAMVideoAccelerator * This,
  156. /* [in] */ DMO_MEDIA_TYPE *pMediaType);
  157. HRESULT ( STDMETHODCALLTYPE *SetPlayerNotify )(
  158. IWMCodecAMVideoAccelerator * This,
  159. /* [in] */ IWMPlayerTimestampHook *pHook);
  160. END_INTERFACE
  161. } IWMCodecAMVideoAcceleratorVtbl;
  162. interface IWMCodecAMVideoAccelerator
  163. {
  164. CONST_VTBL struct IWMCodecAMVideoAcceleratorVtbl *lpVtbl;
  165. };
  166. #ifdef COBJMACROS
  167. #define IWMCodecAMVideoAccelerator_QueryInterface(This,riid,ppvObject) \
  168. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  169. #define IWMCodecAMVideoAccelerator_AddRef(This) \
  170. (This)->lpVtbl -> AddRef(This)
  171. #define IWMCodecAMVideoAccelerator_Release(This) \
  172. (This)->lpVtbl -> Release(This)
  173. #define IWMCodecAMVideoAccelerator_SetAcceleratorInterface(This,pIAMVA) \
  174. (This)->lpVtbl -> SetAcceleratorInterface(This,pIAMVA)
  175. #define IWMCodecAMVideoAccelerator_NegotiateConnection(This,pMediaType) \
  176. (This)->lpVtbl -> NegotiateConnection(This,pMediaType)
  177. #define IWMCodecAMVideoAccelerator_SetPlayerNotify(This,pHook) \
  178. (This)->lpVtbl -> SetPlayerNotify(This,pHook)
  179. #endif /* COBJMACROS */
  180. #endif /* C style interface */
  181. HRESULT STDMETHODCALLTYPE IWMCodecAMVideoAccelerator_SetAcceleratorInterface_Proxy(
  182. IWMCodecAMVideoAccelerator * This,
  183. /* [in] */ IAMVideoAccelerator *pIAMVA);
  184. void __RPC_STUB IWMCodecAMVideoAccelerator_SetAcceleratorInterface_Stub(
  185. IRpcStubBuffer *This,
  186. IRpcChannelBuffer *_pRpcChannelBuffer,
  187. PRPC_MESSAGE _pRpcMessage,
  188. DWORD *_pdwStubPhase);
  189. HRESULT STDMETHODCALLTYPE IWMCodecAMVideoAccelerator_NegotiateConnection_Proxy(
  190. IWMCodecAMVideoAccelerator * This,
  191. /* [in] */ DMO_MEDIA_TYPE *pMediaType);
  192. void __RPC_STUB IWMCodecAMVideoAccelerator_NegotiateConnection_Stub(
  193. IRpcStubBuffer *This,
  194. IRpcChannelBuffer *_pRpcChannelBuffer,
  195. PRPC_MESSAGE _pRpcMessage,
  196. DWORD *_pdwStubPhase);
  197. HRESULT STDMETHODCALLTYPE IWMCodecAMVideoAccelerator_SetPlayerNotify_Proxy(
  198. IWMCodecAMVideoAccelerator * This,
  199. /* [in] */ IWMPlayerTimestampHook *pHook);
  200. void __RPC_STUB IWMCodecAMVideoAccelerator_SetPlayerNotify_Stub(
  201. IRpcStubBuffer *This,
  202. IRpcChannelBuffer *_pRpcChannelBuffer,
  203. PRPC_MESSAGE _pRpcMessage,
  204. DWORD *_pdwStubPhase);
  205. #endif /* __IWMCodecAMVideoAccelerator_INTERFACE_DEFINED__ */
  206. #ifndef __IWMCodecVideoAccelerator_INTERFACE_DEFINED__
  207. #define __IWMCodecVideoAccelerator_INTERFACE_DEFINED__
  208. /* interface IWMCodecVideoAccelerator */
  209. /* [local][unique][helpstring][uuid][object] */
  210. EXTERN_C const IID IID_IWMCodecVideoAccelerator;
  211. #if defined(__cplusplus) && !defined(CINTERFACE)
  212. MIDL_INTERFACE("990641b0-739f-4e94-a808-9888da8f75af")
  213. IWMCodecVideoAccelerator : public IUnknown
  214. {
  215. public:
  216. virtual HRESULT STDMETHODCALLTYPE NegotiateConnection(
  217. /* [in] */ IAMVideoAccelerator *pIAMVA,
  218. /* [in] */ DMO_MEDIA_TYPE *pMediaType) = 0;
  219. virtual HRESULT STDMETHODCALLTYPE SetPlayerNotify(
  220. /* [in] */ IWMPlayerTimestampHook *pHook) = 0;
  221. };
  222. #else /* C style interface */
  223. typedef struct IWMCodecVideoAcceleratorVtbl
  224. {
  225. BEGIN_INTERFACE
  226. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  227. IWMCodecVideoAccelerator * This,
  228. /* [in] */ REFIID riid,
  229. /* [iid_is][out] */ void **ppvObject);
  230. ULONG ( STDMETHODCALLTYPE *AddRef )(
  231. IWMCodecVideoAccelerator * This);
  232. ULONG ( STDMETHODCALLTYPE *Release )(
  233. IWMCodecVideoAccelerator * This);
  234. HRESULT ( STDMETHODCALLTYPE *NegotiateConnection )(
  235. IWMCodecVideoAccelerator * This,
  236. /* [in] */ IAMVideoAccelerator *pIAMVA,
  237. /* [in] */ DMO_MEDIA_TYPE *pMediaType);
  238. HRESULT ( STDMETHODCALLTYPE *SetPlayerNotify )(
  239. IWMCodecVideoAccelerator * This,
  240. /* [in] */ IWMPlayerTimestampHook *pHook);
  241. END_INTERFACE
  242. } IWMCodecVideoAcceleratorVtbl;
  243. interface IWMCodecVideoAccelerator
  244. {
  245. CONST_VTBL struct IWMCodecVideoAcceleratorVtbl *lpVtbl;
  246. };
  247. #ifdef COBJMACROS
  248. #define IWMCodecVideoAccelerator_QueryInterface(This,riid,ppvObject) \
  249. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  250. #define IWMCodecVideoAccelerator_AddRef(This) \
  251. (This)->lpVtbl -> AddRef(This)
  252. #define IWMCodecVideoAccelerator_Release(This) \
  253. (This)->lpVtbl -> Release(This)
  254. #define IWMCodecVideoAccelerator_NegotiateConnection(This,pIAMVA,pMediaType) \
  255. (This)->lpVtbl -> NegotiateConnection(This,pIAMVA,pMediaType)
  256. #define IWMCodecVideoAccelerator_SetPlayerNotify(This,pHook) \
  257. (This)->lpVtbl -> SetPlayerNotify(This,pHook)
  258. #endif /* COBJMACROS */
  259. #endif /* C style interface */
  260. HRESULT STDMETHODCALLTYPE IWMCodecVideoAccelerator_NegotiateConnection_Proxy(
  261. IWMCodecVideoAccelerator * This,
  262. /* [in] */ IAMVideoAccelerator *pIAMVA,
  263. /* [in] */ DMO_MEDIA_TYPE *pMediaType);
  264. void __RPC_STUB IWMCodecVideoAccelerator_NegotiateConnection_Stub(
  265. IRpcStubBuffer *This,
  266. IRpcChannelBuffer *_pRpcChannelBuffer,
  267. PRPC_MESSAGE _pRpcMessage,
  268. DWORD *_pdwStubPhase);
  269. HRESULT STDMETHODCALLTYPE IWMCodecVideoAccelerator_SetPlayerNotify_Proxy(
  270. IWMCodecVideoAccelerator * This,
  271. /* [in] */ IWMPlayerTimestampHook *pHook);
  272. void __RPC_STUB IWMCodecVideoAccelerator_SetPlayerNotify_Stub(
  273. IRpcStubBuffer *This,
  274. IRpcChannelBuffer *_pRpcChannelBuffer,
  275. PRPC_MESSAGE _pRpcMessage,
  276. DWORD *_pdwStubPhase);
  277. #endif /* __IWMCodecVideoAccelerator_INTERFACE_DEFINED__ */
  278. /* Additional Prototypes for ALL interfaces */
  279. /* end of Additional Prototypes */
  280. #ifdef __cplusplus
  281. }
  282. #endif
  283. #endif