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.

846 lines
24 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.0357 */
  4. /* Compiler settings for mmstream.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 __mmstream_h__
  27. #define __mmstream_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IMultiMediaStream_FWD_DEFINED__
  33. #define __IMultiMediaStream_FWD_DEFINED__
  34. typedef interface IMultiMediaStream IMultiMediaStream;
  35. #endif /* __IMultiMediaStream_FWD_DEFINED__ */
  36. #ifndef __IMediaStream_FWD_DEFINED__
  37. #define __IMediaStream_FWD_DEFINED__
  38. typedef interface IMediaStream IMediaStream;
  39. #endif /* __IMediaStream_FWD_DEFINED__ */
  40. #ifndef __IStreamSample_FWD_DEFINED__
  41. #define __IStreamSample_FWD_DEFINED__
  42. typedef interface IStreamSample IStreamSample;
  43. #endif /* __IStreamSample_FWD_DEFINED__ */
  44. /* header files for imported files */
  45. #include "unknwn.h"
  46. #ifdef __cplusplus
  47. extern "C"{
  48. #endif
  49. void * __RPC_USER MIDL_user_allocate(size_t);
  50. void __RPC_USER MIDL_user_free( void * );
  51. /* interface __MIDL_itf_mmstream_0000 */
  52. /* [local] */
  53. #define MS_ERROR_CODE(x) MAKE_HRESULT(1, FACILITY_ITF, (x) + 0x400)
  54. #define MS_SUCCESS_CODE(x) MAKE_HRESULT(0, FACILITY_ITF, x)
  55. #define MS_S_PENDING MS_SUCCESS_CODE(1)
  56. #define MS_S_NOUPDATE MS_SUCCESS_CODE(2)
  57. #define MS_S_ENDOFSTREAM MS_SUCCESS_CODE(3)
  58. #define MS_E_SAMPLEALLOC MS_ERROR_CODE(1)
  59. #define MS_E_PURPOSEID MS_ERROR_CODE(2)
  60. #define MS_E_NOSTREAM MS_ERROR_CODE(3)
  61. #define MS_E_NOSEEKING MS_ERROR_CODE(4)
  62. #define MS_E_INCOMPATIBLE MS_ERROR_CODE(5)
  63. #define MS_E_BUSY MS_ERROR_CODE(6)
  64. #define MS_E_NOTINIT MS_ERROR_CODE(7)
  65. #define MS_E_SOURCEALREADYDEFINED MS_ERROR_CODE(8)
  66. #define MS_E_INVALIDSTREAMTYPE MS_ERROR_CODE(9)
  67. #define MS_E_NOTRUNNING MS_ERROR_CODE(10)
  68. // {A35FF56A-9FDA-11d0-8FDF-00C04FD9189D}
  69. DEFINE_GUID(MSPID_PrimaryVideo,
  70. 0xa35ff56a, 0x9fda, 0x11d0, 0x8f, 0xdf, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);
  71. // {A35FF56B-9FDA-11d0-8FDF-00C04FD9189D}
  72. DEFINE_GUID(MSPID_PrimaryAudio,
  73. 0xa35ff56b, 0x9fda, 0x11d0, 0x8f, 0xdf, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0x9d);
  74. #if(_WIN32_WINNT < 0x0400)
  75. typedef void ( __stdcall *PAPCFUNC )(
  76. DWORD_PTR dwParam);
  77. #endif
  78. typedef LONGLONG STREAM_TIME;
  79. typedef GUID MSPID;
  80. typedef REFGUID REFMSPID;
  81. typedef /* [public][public][public] */
  82. enum __MIDL___MIDL_itf_mmstream_0000_0001
  83. { STREAMTYPE_READ = 0,
  84. STREAMTYPE_WRITE = 1,
  85. STREAMTYPE_TRANSFORM = 2
  86. } STREAM_TYPE;
  87. typedef /* [public][public][public] */
  88. enum __MIDL___MIDL_itf_mmstream_0000_0002
  89. { STREAMSTATE_STOP = 0,
  90. STREAMSTATE_RUN = 1
  91. } STREAM_STATE;
  92. typedef /* [public] */
  93. enum __MIDL___MIDL_itf_mmstream_0000_0003
  94. { COMPSTAT_NOUPDATEOK = 0x1,
  95. COMPSTAT_WAIT = 0x2,
  96. COMPSTAT_ABORT = 0x4
  97. } COMPLETION_STATUS_FLAGS;
  98. enum __MIDL___MIDL_itf_mmstream_0000_0004
  99. { MMSSF_HASCLOCK = 0x1,
  100. MMSSF_SUPPORTSEEK = 0x2,
  101. MMSSF_ASYNCHRONOUS = 0x4
  102. } ;
  103. enum __MIDL___MIDL_itf_mmstream_0000_0005
  104. { SSUPDATE_ASYNC = 0x1,
  105. SSUPDATE_CONTINUOUS = 0x2
  106. } ;
  107. extern RPC_IF_HANDLE __MIDL_itf_mmstream_0000_v0_0_c_ifspec;
  108. extern RPC_IF_HANDLE __MIDL_itf_mmstream_0000_v0_0_s_ifspec;
  109. #ifndef __IMultiMediaStream_INTERFACE_DEFINED__
  110. #define __IMultiMediaStream_INTERFACE_DEFINED__
  111. /* interface IMultiMediaStream */
  112. /* [unique][uuid][local][object] */
  113. EXTERN_C const IID IID_IMultiMediaStream;
  114. #if defined(__cplusplus) && !defined(CINTERFACE)
  115. MIDL_INTERFACE("B502D1BC-9A57-11d0-8FDE-00C04FD9189D")
  116. IMultiMediaStream : public IUnknown
  117. {
  118. public:
  119. virtual HRESULT STDMETHODCALLTYPE GetInformation(
  120. /* [out] */ DWORD *pdwFlags,
  121. /* [out] */ STREAM_TYPE *pStreamType) = 0;
  122. virtual HRESULT STDMETHODCALLTYPE GetMediaStream(
  123. /* [in] */ REFMSPID idPurpose,
  124. /* [out] */ IMediaStream **ppMediaStream) = 0;
  125. virtual HRESULT STDMETHODCALLTYPE EnumMediaStreams(
  126. /* [in] */ long Index,
  127. /* [out] */ IMediaStream **ppMediaStream) = 0;
  128. virtual HRESULT STDMETHODCALLTYPE GetState(
  129. /* [out] */ STREAM_STATE *pCurrentState) = 0;
  130. virtual HRESULT STDMETHODCALLTYPE SetState(
  131. /* [in] */ STREAM_STATE NewState) = 0;
  132. virtual HRESULT STDMETHODCALLTYPE GetTime(
  133. /* [out] */ STREAM_TIME *pCurrentTime) = 0;
  134. virtual HRESULT STDMETHODCALLTYPE GetDuration(
  135. /* [out] */ STREAM_TIME *pDuration) = 0;
  136. virtual HRESULT STDMETHODCALLTYPE Seek(
  137. /* [in] */ STREAM_TIME SeekTime) = 0;
  138. virtual HRESULT STDMETHODCALLTYPE GetEndOfStreamEventHandle(
  139. /* [out] */ HANDLE *phEOS) = 0;
  140. };
  141. #else /* C style interface */
  142. typedef struct IMultiMediaStreamVtbl
  143. {
  144. BEGIN_INTERFACE
  145. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  146. IMultiMediaStream * This,
  147. /* [in] */ REFIID riid,
  148. /* [iid_is][out] */ void **ppvObject);
  149. ULONG ( STDMETHODCALLTYPE *AddRef )(
  150. IMultiMediaStream * This);
  151. ULONG ( STDMETHODCALLTYPE *Release )(
  152. IMultiMediaStream * This);
  153. HRESULT ( STDMETHODCALLTYPE *GetInformation )(
  154. IMultiMediaStream * This,
  155. /* [out] */ DWORD *pdwFlags,
  156. /* [out] */ STREAM_TYPE *pStreamType);
  157. HRESULT ( STDMETHODCALLTYPE *GetMediaStream )(
  158. IMultiMediaStream * This,
  159. /* [in] */ REFMSPID idPurpose,
  160. /* [out] */ IMediaStream **ppMediaStream);
  161. HRESULT ( STDMETHODCALLTYPE *EnumMediaStreams )(
  162. IMultiMediaStream * This,
  163. /* [in] */ long Index,
  164. /* [out] */ IMediaStream **ppMediaStream);
  165. HRESULT ( STDMETHODCALLTYPE *GetState )(
  166. IMultiMediaStream * This,
  167. /* [out] */ STREAM_STATE *pCurrentState);
  168. HRESULT ( STDMETHODCALLTYPE *SetState )(
  169. IMultiMediaStream * This,
  170. /* [in] */ STREAM_STATE NewState);
  171. HRESULT ( STDMETHODCALLTYPE *GetTime )(
  172. IMultiMediaStream * This,
  173. /* [out] */ STREAM_TIME *pCurrentTime);
  174. HRESULT ( STDMETHODCALLTYPE *GetDuration )(
  175. IMultiMediaStream * This,
  176. /* [out] */ STREAM_TIME *pDuration);
  177. HRESULT ( STDMETHODCALLTYPE *Seek )(
  178. IMultiMediaStream * This,
  179. /* [in] */ STREAM_TIME SeekTime);
  180. HRESULT ( STDMETHODCALLTYPE *GetEndOfStreamEventHandle )(
  181. IMultiMediaStream * This,
  182. /* [out] */ HANDLE *phEOS);
  183. END_INTERFACE
  184. } IMultiMediaStreamVtbl;
  185. interface IMultiMediaStream
  186. {
  187. CONST_VTBL struct IMultiMediaStreamVtbl *lpVtbl;
  188. };
  189. #ifdef COBJMACROS
  190. #define IMultiMediaStream_QueryInterface(This,riid,ppvObject) \
  191. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  192. #define IMultiMediaStream_AddRef(This) \
  193. (This)->lpVtbl -> AddRef(This)
  194. #define IMultiMediaStream_Release(This) \
  195. (This)->lpVtbl -> Release(This)
  196. #define IMultiMediaStream_GetInformation(This,pdwFlags,pStreamType) \
  197. (This)->lpVtbl -> GetInformation(This,pdwFlags,pStreamType)
  198. #define IMultiMediaStream_GetMediaStream(This,idPurpose,ppMediaStream) \
  199. (This)->lpVtbl -> GetMediaStream(This,idPurpose,ppMediaStream)
  200. #define IMultiMediaStream_EnumMediaStreams(This,Index,ppMediaStream) \
  201. (This)->lpVtbl -> EnumMediaStreams(This,Index,ppMediaStream)
  202. #define IMultiMediaStream_GetState(This,pCurrentState) \
  203. (This)->lpVtbl -> GetState(This,pCurrentState)
  204. #define IMultiMediaStream_SetState(This,NewState) \
  205. (This)->lpVtbl -> SetState(This,NewState)
  206. #define IMultiMediaStream_GetTime(This,pCurrentTime) \
  207. (This)->lpVtbl -> GetTime(This,pCurrentTime)
  208. #define IMultiMediaStream_GetDuration(This,pDuration) \
  209. (This)->lpVtbl -> GetDuration(This,pDuration)
  210. #define IMultiMediaStream_Seek(This,SeekTime) \
  211. (This)->lpVtbl -> Seek(This,SeekTime)
  212. #define IMultiMediaStream_GetEndOfStreamEventHandle(This,phEOS) \
  213. (This)->lpVtbl -> GetEndOfStreamEventHandle(This,phEOS)
  214. #endif /* COBJMACROS */
  215. #endif /* C style interface */
  216. HRESULT STDMETHODCALLTYPE IMultiMediaStream_GetInformation_Proxy(
  217. IMultiMediaStream * This,
  218. /* [out] */ DWORD *pdwFlags,
  219. /* [out] */ STREAM_TYPE *pStreamType);
  220. void __RPC_STUB IMultiMediaStream_GetInformation_Stub(
  221. IRpcStubBuffer *This,
  222. IRpcChannelBuffer *_pRpcChannelBuffer,
  223. PRPC_MESSAGE _pRpcMessage,
  224. DWORD *_pdwStubPhase);
  225. HRESULT STDMETHODCALLTYPE IMultiMediaStream_GetMediaStream_Proxy(
  226. IMultiMediaStream * This,
  227. /* [in] */ REFMSPID idPurpose,
  228. /* [out] */ IMediaStream **ppMediaStream);
  229. void __RPC_STUB IMultiMediaStream_GetMediaStream_Stub(
  230. IRpcStubBuffer *This,
  231. IRpcChannelBuffer *_pRpcChannelBuffer,
  232. PRPC_MESSAGE _pRpcMessage,
  233. DWORD *_pdwStubPhase);
  234. HRESULT STDMETHODCALLTYPE IMultiMediaStream_EnumMediaStreams_Proxy(
  235. IMultiMediaStream * This,
  236. /* [in] */ long Index,
  237. /* [out] */ IMediaStream **ppMediaStream);
  238. void __RPC_STUB IMultiMediaStream_EnumMediaStreams_Stub(
  239. IRpcStubBuffer *This,
  240. IRpcChannelBuffer *_pRpcChannelBuffer,
  241. PRPC_MESSAGE _pRpcMessage,
  242. DWORD *_pdwStubPhase);
  243. HRESULT STDMETHODCALLTYPE IMultiMediaStream_GetState_Proxy(
  244. IMultiMediaStream * This,
  245. /* [out] */ STREAM_STATE *pCurrentState);
  246. void __RPC_STUB IMultiMediaStream_GetState_Stub(
  247. IRpcStubBuffer *This,
  248. IRpcChannelBuffer *_pRpcChannelBuffer,
  249. PRPC_MESSAGE _pRpcMessage,
  250. DWORD *_pdwStubPhase);
  251. HRESULT STDMETHODCALLTYPE IMultiMediaStream_SetState_Proxy(
  252. IMultiMediaStream * This,
  253. /* [in] */ STREAM_STATE NewState);
  254. void __RPC_STUB IMultiMediaStream_SetState_Stub(
  255. IRpcStubBuffer *This,
  256. IRpcChannelBuffer *_pRpcChannelBuffer,
  257. PRPC_MESSAGE _pRpcMessage,
  258. DWORD *_pdwStubPhase);
  259. HRESULT STDMETHODCALLTYPE IMultiMediaStream_GetTime_Proxy(
  260. IMultiMediaStream * This,
  261. /* [out] */ STREAM_TIME *pCurrentTime);
  262. void __RPC_STUB IMultiMediaStream_GetTime_Stub(
  263. IRpcStubBuffer *This,
  264. IRpcChannelBuffer *_pRpcChannelBuffer,
  265. PRPC_MESSAGE _pRpcMessage,
  266. DWORD *_pdwStubPhase);
  267. HRESULT STDMETHODCALLTYPE IMultiMediaStream_GetDuration_Proxy(
  268. IMultiMediaStream * This,
  269. /* [out] */ STREAM_TIME *pDuration);
  270. void __RPC_STUB IMultiMediaStream_GetDuration_Stub(
  271. IRpcStubBuffer *This,
  272. IRpcChannelBuffer *_pRpcChannelBuffer,
  273. PRPC_MESSAGE _pRpcMessage,
  274. DWORD *_pdwStubPhase);
  275. HRESULT STDMETHODCALLTYPE IMultiMediaStream_Seek_Proxy(
  276. IMultiMediaStream * This,
  277. /* [in] */ STREAM_TIME SeekTime);
  278. void __RPC_STUB IMultiMediaStream_Seek_Stub(
  279. IRpcStubBuffer *This,
  280. IRpcChannelBuffer *_pRpcChannelBuffer,
  281. PRPC_MESSAGE _pRpcMessage,
  282. DWORD *_pdwStubPhase);
  283. HRESULT STDMETHODCALLTYPE IMultiMediaStream_GetEndOfStreamEventHandle_Proxy(
  284. IMultiMediaStream * This,
  285. /* [out] */ HANDLE *phEOS);
  286. void __RPC_STUB IMultiMediaStream_GetEndOfStreamEventHandle_Stub(
  287. IRpcStubBuffer *This,
  288. IRpcChannelBuffer *_pRpcChannelBuffer,
  289. PRPC_MESSAGE _pRpcMessage,
  290. DWORD *_pdwStubPhase);
  291. #endif /* __IMultiMediaStream_INTERFACE_DEFINED__ */
  292. #ifndef __IMediaStream_INTERFACE_DEFINED__
  293. #define __IMediaStream_INTERFACE_DEFINED__
  294. /* interface IMediaStream */
  295. /* [unique][uuid][object] */
  296. EXTERN_C const IID IID_IMediaStream;
  297. #if defined(__cplusplus) && !defined(CINTERFACE)
  298. MIDL_INTERFACE("B502D1BD-9A57-11d0-8FDE-00C04FD9189D")
  299. IMediaStream : public IUnknown
  300. {
  301. public:
  302. virtual HRESULT STDMETHODCALLTYPE GetMultiMediaStream(
  303. /* [out] */ IMultiMediaStream **ppMultiMediaStream) = 0;
  304. virtual HRESULT STDMETHODCALLTYPE GetInformation(
  305. /* [out] */ MSPID *pPurposeId,
  306. /* [out] */ STREAM_TYPE *pType) = 0;
  307. virtual HRESULT STDMETHODCALLTYPE SetSameFormat(
  308. /* [in] */ IMediaStream *pStreamThatHasDesiredFormat,
  309. /* [in] */ DWORD dwFlags) = 0;
  310. virtual HRESULT STDMETHODCALLTYPE AllocateSample(
  311. /* [in] */ DWORD dwFlags,
  312. /* [out] */ IStreamSample **ppSample) = 0;
  313. virtual HRESULT STDMETHODCALLTYPE CreateSharedSample(
  314. /* [in] */ IStreamSample *pExistingSample,
  315. /* [in] */ DWORD dwFlags,
  316. /* [out] */ IStreamSample **ppNewSample) = 0;
  317. virtual HRESULT STDMETHODCALLTYPE SendEndOfStream(
  318. DWORD dwFlags) = 0;
  319. };
  320. #else /* C style interface */
  321. typedef struct IMediaStreamVtbl
  322. {
  323. BEGIN_INTERFACE
  324. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  325. IMediaStream * This,
  326. /* [in] */ REFIID riid,
  327. /* [iid_is][out] */ void **ppvObject);
  328. ULONG ( STDMETHODCALLTYPE *AddRef )(
  329. IMediaStream * This);
  330. ULONG ( STDMETHODCALLTYPE *Release )(
  331. IMediaStream * This);
  332. HRESULT ( STDMETHODCALLTYPE *GetMultiMediaStream )(
  333. IMediaStream * This,
  334. /* [out] */ IMultiMediaStream **ppMultiMediaStream);
  335. HRESULT ( STDMETHODCALLTYPE *GetInformation )(
  336. IMediaStream * This,
  337. /* [out] */ MSPID *pPurposeId,
  338. /* [out] */ STREAM_TYPE *pType);
  339. HRESULT ( STDMETHODCALLTYPE *SetSameFormat )(
  340. IMediaStream * This,
  341. /* [in] */ IMediaStream *pStreamThatHasDesiredFormat,
  342. /* [in] */ DWORD dwFlags);
  343. HRESULT ( STDMETHODCALLTYPE *AllocateSample )(
  344. IMediaStream * This,
  345. /* [in] */ DWORD dwFlags,
  346. /* [out] */ IStreamSample **ppSample);
  347. HRESULT ( STDMETHODCALLTYPE *CreateSharedSample )(
  348. IMediaStream * This,
  349. /* [in] */ IStreamSample *pExistingSample,
  350. /* [in] */ DWORD dwFlags,
  351. /* [out] */ IStreamSample **ppNewSample);
  352. HRESULT ( STDMETHODCALLTYPE *SendEndOfStream )(
  353. IMediaStream * This,
  354. DWORD dwFlags);
  355. END_INTERFACE
  356. } IMediaStreamVtbl;
  357. interface IMediaStream
  358. {
  359. CONST_VTBL struct IMediaStreamVtbl *lpVtbl;
  360. };
  361. #ifdef COBJMACROS
  362. #define IMediaStream_QueryInterface(This,riid,ppvObject) \
  363. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  364. #define IMediaStream_AddRef(This) \
  365. (This)->lpVtbl -> AddRef(This)
  366. #define IMediaStream_Release(This) \
  367. (This)->lpVtbl -> Release(This)
  368. #define IMediaStream_GetMultiMediaStream(This,ppMultiMediaStream) \
  369. (This)->lpVtbl -> GetMultiMediaStream(This,ppMultiMediaStream)
  370. #define IMediaStream_GetInformation(This,pPurposeId,pType) \
  371. (This)->lpVtbl -> GetInformation(This,pPurposeId,pType)
  372. #define IMediaStream_SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags) \
  373. (This)->lpVtbl -> SetSameFormat(This,pStreamThatHasDesiredFormat,dwFlags)
  374. #define IMediaStream_AllocateSample(This,dwFlags,ppSample) \
  375. (This)->lpVtbl -> AllocateSample(This,dwFlags,ppSample)
  376. #define IMediaStream_CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample) \
  377. (This)->lpVtbl -> CreateSharedSample(This,pExistingSample,dwFlags,ppNewSample)
  378. #define IMediaStream_SendEndOfStream(This,dwFlags) \
  379. (This)->lpVtbl -> SendEndOfStream(This,dwFlags)
  380. #endif /* COBJMACROS */
  381. #endif /* C style interface */
  382. HRESULT STDMETHODCALLTYPE IMediaStream_GetMultiMediaStream_Proxy(
  383. IMediaStream * This,
  384. /* [out] */ IMultiMediaStream **ppMultiMediaStream);
  385. void __RPC_STUB IMediaStream_GetMultiMediaStream_Stub(
  386. IRpcStubBuffer *This,
  387. IRpcChannelBuffer *_pRpcChannelBuffer,
  388. PRPC_MESSAGE _pRpcMessage,
  389. DWORD *_pdwStubPhase);
  390. HRESULT STDMETHODCALLTYPE IMediaStream_GetInformation_Proxy(
  391. IMediaStream * This,
  392. /* [out] */ MSPID *pPurposeId,
  393. /* [out] */ STREAM_TYPE *pType);
  394. void __RPC_STUB IMediaStream_GetInformation_Stub(
  395. IRpcStubBuffer *This,
  396. IRpcChannelBuffer *_pRpcChannelBuffer,
  397. PRPC_MESSAGE _pRpcMessage,
  398. DWORD *_pdwStubPhase);
  399. HRESULT STDMETHODCALLTYPE IMediaStream_SetSameFormat_Proxy(
  400. IMediaStream * This,
  401. /* [in] */ IMediaStream *pStreamThatHasDesiredFormat,
  402. /* [in] */ DWORD dwFlags);
  403. void __RPC_STUB IMediaStream_SetSameFormat_Stub(
  404. IRpcStubBuffer *This,
  405. IRpcChannelBuffer *_pRpcChannelBuffer,
  406. PRPC_MESSAGE _pRpcMessage,
  407. DWORD *_pdwStubPhase);
  408. HRESULT STDMETHODCALLTYPE IMediaStream_AllocateSample_Proxy(
  409. IMediaStream * This,
  410. /* [in] */ DWORD dwFlags,
  411. /* [out] */ IStreamSample **ppSample);
  412. void __RPC_STUB IMediaStream_AllocateSample_Stub(
  413. IRpcStubBuffer *This,
  414. IRpcChannelBuffer *_pRpcChannelBuffer,
  415. PRPC_MESSAGE _pRpcMessage,
  416. DWORD *_pdwStubPhase);
  417. HRESULT STDMETHODCALLTYPE IMediaStream_CreateSharedSample_Proxy(
  418. IMediaStream * This,
  419. /* [in] */ IStreamSample *pExistingSample,
  420. /* [in] */ DWORD dwFlags,
  421. /* [out] */ IStreamSample **ppNewSample);
  422. void __RPC_STUB IMediaStream_CreateSharedSample_Stub(
  423. IRpcStubBuffer *This,
  424. IRpcChannelBuffer *_pRpcChannelBuffer,
  425. PRPC_MESSAGE _pRpcMessage,
  426. DWORD *_pdwStubPhase);
  427. HRESULT STDMETHODCALLTYPE IMediaStream_SendEndOfStream_Proxy(
  428. IMediaStream * This,
  429. DWORD dwFlags);
  430. void __RPC_STUB IMediaStream_SendEndOfStream_Stub(
  431. IRpcStubBuffer *This,
  432. IRpcChannelBuffer *_pRpcChannelBuffer,
  433. PRPC_MESSAGE _pRpcMessage,
  434. DWORD *_pdwStubPhase);
  435. #endif /* __IMediaStream_INTERFACE_DEFINED__ */
  436. #ifndef __IStreamSample_INTERFACE_DEFINED__
  437. #define __IStreamSample_INTERFACE_DEFINED__
  438. /* interface IStreamSample */
  439. /* [unique][uuid][local][object] */
  440. EXTERN_C const IID IID_IStreamSample;
  441. #if defined(__cplusplus) && !defined(CINTERFACE)
  442. MIDL_INTERFACE("B502D1BE-9A57-11d0-8FDE-00C04FD9189D")
  443. IStreamSample : public IUnknown
  444. {
  445. public:
  446. virtual HRESULT STDMETHODCALLTYPE GetMediaStream(
  447. /* [in] */ IMediaStream **ppMediaStream) = 0;
  448. virtual HRESULT STDMETHODCALLTYPE GetSampleTimes(
  449. /* [out] */ STREAM_TIME *pStartTime,
  450. /* [out] */ STREAM_TIME *pEndTime,
  451. /* [out] */ STREAM_TIME *pCurrentTime) = 0;
  452. virtual HRESULT STDMETHODCALLTYPE SetSampleTimes(
  453. /* [in] */ const STREAM_TIME *pStartTime,
  454. /* [in] */ const STREAM_TIME *pEndTime) = 0;
  455. virtual HRESULT STDMETHODCALLTYPE Update(
  456. /* [in] */ DWORD dwFlags,
  457. /* [in] */ HANDLE hEvent,
  458. /* [in] */ PAPCFUNC pfnAPC,
  459. /* [in] */ DWORD_PTR dwAPCData) = 0;
  460. virtual HRESULT STDMETHODCALLTYPE CompletionStatus(
  461. /* [in] */ DWORD dwFlags,
  462. /* [in] */ DWORD dwMilliseconds) = 0;
  463. };
  464. #else /* C style interface */
  465. typedef struct IStreamSampleVtbl
  466. {
  467. BEGIN_INTERFACE
  468. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  469. IStreamSample * This,
  470. /* [in] */ REFIID riid,
  471. /* [iid_is][out] */ void **ppvObject);
  472. ULONG ( STDMETHODCALLTYPE *AddRef )(
  473. IStreamSample * This);
  474. ULONG ( STDMETHODCALLTYPE *Release )(
  475. IStreamSample * This);
  476. HRESULT ( STDMETHODCALLTYPE *GetMediaStream )(
  477. IStreamSample * This,
  478. /* [in] */ IMediaStream **ppMediaStream);
  479. HRESULT ( STDMETHODCALLTYPE *GetSampleTimes )(
  480. IStreamSample * This,
  481. /* [out] */ STREAM_TIME *pStartTime,
  482. /* [out] */ STREAM_TIME *pEndTime,
  483. /* [out] */ STREAM_TIME *pCurrentTime);
  484. HRESULT ( STDMETHODCALLTYPE *SetSampleTimes )(
  485. IStreamSample * This,
  486. /* [in] */ const STREAM_TIME *pStartTime,
  487. /* [in] */ const STREAM_TIME *pEndTime);
  488. HRESULT ( STDMETHODCALLTYPE *Update )(
  489. IStreamSample * This,
  490. /* [in] */ DWORD dwFlags,
  491. /* [in] */ HANDLE hEvent,
  492. /* [in] */ PAPCFUNC pfnAPC,
  493. /* [in] */ DWORD_PTR dwAPCData);
  494. HRESULT ( STDMETHODCALLTYPE *CompletionStatus )(
  495. IStreamSample * This,
  496. /* [in] */ DWORD dwFlags,
  497. /* [in] */ DWORD dwMilliseconds);
  498. END_INTERFACE
  499. } IStreamSampleVtbl;
  500. interface IStreamSample
  501. {
  502. CONST_VTBL struct IStreamSampleVtbl *lpVtbl;
  503. };
  504. #ifdef COBJMACROS
  505. #define IStreamSample_QueryInterface(This,riid,ppvObject) \
  506. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  507. #define IStreamSample_AddRef(This) \
  508. (This)->lpVtbl -> AddRef(This)
  509. #define IStreamSample_Release(This) \
  510. (This)->lpVtbl -> Release(This)
  511. #define IStreamSample_GetMediaStream(This,ppMediaStream) \
  512. (This)->lpVtbl -> GetMediaStream(This,ppMediaStream)
  513. #define IStreamSample_GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime) \
  514. (This)->lpVtbl -> GetSampleTimes(This,pStartTime,pEndTime,pCurrentTime)
  515. #define IStreamSample_SetSampleTimes(This,pStartTime,pEndTime) \
  516. (This)->lpVtbl -> SetSampleTimes(This,pStartTime,pEndTime)
  517. #define IStreamSample_Update(This,dwFlags,hEvent,pfnAPC,dwAPCData) \
  518. (This)->lpVtbl -> Update(This,dwFlags,hEvent,pfnAPC,dwAPCData)
  519. #define IStreamSample_CompletionStatus(This,dwFlags,dwMilliseconds) \
  520. (This)->lpVtbl -> CompletionStatus(This,dwFlags,dwMilliseconds)
  521. #endif /* COBJMACROS */
  522. #endif /* C style interface */
  523. HRESULT STDMETHODCALLTYPE IStreamSample_GetMediaStream_Proxy(
  524. IStreamSample * This,
  525. /* [in] */ IMediaStream **ppMediaStream);
  526. void __RPC_STUB IStreamSample_GetMediaStream_Stub(
  527. IRpcStubBuffer *This,
  528. IRpcChannelBuffer *_pRpcChannelBuffer,
  529. PRPC_MESSAGE _pRpcMessage,
  530. DWORD *_pdwStubPhase);
  531. HRESULT STDMETHODCALLTYPE IStreamSample_GetSampleTimes_Proxy(
  532. IStreamSample * This,
  533. /* [out] */ STREAM_TIME *pStartTime,
  534. /* [out] */ STREAM_TIME *pEndTime,
  535. /* [out] */ STREAM_TIME *pCurrentTime);
  536. void __RPC_STUB IStreamSample_GetSampleTimes_Stub(
  537. IRpcStubBuffer *This,
  538. IRpcChannelBuffer *_pRpcChannelBuffer,
  539. PRPC_MESSAGE _pRpcMessage,
  540. DWORD *_pdwStubPhase);
  541. HRESULT STDMETHODCALLTYPE IStreamSample_SetSampleTimes_Proxy(
  542. IStreamSample * This,
  543. /* [in] */ const STREAM_TIME *pStartTime,
  544. /* [in] */ const STREAM_TIME *pEndTime);
  545. void __RPC_STUB IStreamSample_SetSampleTimes_Stub(
  546. IRpcStubBuffer *This,
  547. IRpcChannelBuffer *_pRpcChannelBuffer,
  548. PRPC_MESSAGE _pRpcMessage,
  549. DWORD *_pdwStubPhase);
  550. HRESULT STDMETHODCALLTYPE IStreamSample_Update_Proxy(
  551. IStreamSample * This,
  552. /* [in] */ DWORD dwFlags,
  553. /* [in] */ HANDLE hEvent,
  554. /* [in] */ PAPCFUNC pfnAPC,
  555. /* [in] */ DWORD_PTR dwAPCData);
  556. void __RPC_STUB IStreamSample_Update_Stub(
  557. IRpcStubBuffer *This,
  558. IRpcChannelBuffer *_pRpcChannelBuffer,
  559. PRPC_MESSAGE _pRpcMessage,
  560. DWORD *_pdwStubPhase);
  561. HRESULT STDMETHODCALLTYPE IStreamSample_CompletionStatus_Proxy(
  562. IStreamSample * This,
  563. /* [in] */ DWORD dwFlags,
  564. /* [in] */ DWORD dwMilliseconds);
  565. void __RPC_STUB IStreamSample_CompletionStatus_Stub(
  566. IRpcStubBuffer *This,
  567. IRpcChannelBuffer *_pRpcChannelBuffer,
  568. PRPC_MESSAGE _pRpcMessage,
  569. DWORD *_pdwStubPhase);
  570. #endif /* __IStreamSample_INTERFACE_DEFINED__ */
  571. /* Additional Prototypes for ALL interfaces */
  572. /* end of Additional Prototypes */
  573. #ifdef __cplusplus
  574. }
  575. #endif
  576. #endif