dshowasf.h 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793
  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 dshowasf.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 __dshowasf_h__
  27. #define __dshowasf_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IAMWMBufferPass_FWD_DEFINED__
  33. #define __IAMWMBufferPass_FWD_DEFINED__
  34. typedef interface IAMWMBufferPass IAMWMBufferPass;
  35. #endif /* __IAMWMBufferPass_FWD_DEFINED__ */
  36. #ifndef __IAMWMBufferPassCallback_FWD_DEFINED__
  37. #define __IAMWMBufferPassCallback_FWD_DEFINED__
  38. typedef interface IAMWMBufferPassCallback IAMWMBufferPassCallback;
  39. #endif /* __IAMWMBufferPassCallback_FWD_DEFINED__ */
  40. #ifndef __IConfigAsfWriter_FWD_DEFINED__
  41. #define __IConfigAsfWriter_FWD_DEFINED__
  42. typedef interface IConfigAsfWriter IConfigAsfWriter;
  43. #endif /* __IConfigAsfWriter_FWD_DEFINED__ */
  44. #ifndef __IConfigAsfWriter2_FWD_DEFINED__
  45. #define __IConfigAsfWriter2_FWD_DEFINED__
  46. typedef interface IConfigAsfWriter2 IConfigAsfWriter2;
  47. #endif /* __IConfigAsfWriter2_FWD_DEFINED__ */
  48. /* header files for imported files */
  49. #include "unknwn.h"
  50. #include "objidl.h"
  51. #include "strmif.h"
  52. #include "wmsdkidl.h"
  53. #ifdef __cplusplus
  54. extern "C"{
  55. #endif
  56. void * __RPC_USER MIDL_user_allocate(size_t);
  57. void __RPC_USER MIDL_user_free( void * );
  58. /* interface __MIDL_itf_dshowasf_0000 */
  59. /* [local] */
  60. //=========================================================================
  61. //
  62. // Microsoft Windows Media Technologies
  63. // Copyright (C) Microsoft Corporation. All Rights Reserved.
  64. //
  65. //=========================================================================
  66. EXTERN_GUID( IID_IConfigAsfWriter2,0x7989ccaa, 0x53f0, 0x44f0, 0x88, 0x4a, 0xf3, 0xb0, 0x3f, 0x6a, 0xe0, 0x66 );
  67. EXTERN_GUID( IID_IConfigAsfWriter,0x45086030,0xF7E4,0x486a,0xB5,0x04,0x82,0x6B,0xB5,0x79,0x2A,0x3B );
  68. EXTERN_GUID( IID_IAMWMBufferPass,0x6dd816d7, 0xe740, 0x4123, 0x9e, 0x24, 0x24, 0x44, 0x41, 0x26, 0x44, 0xd8 );
  69. EXTERN_GUID( IID_IAMWMBufferPassCallback,0xb25b8372, 0xd2d2, 0x44b2, 0x86, 0x53, 0x1b, 0x8d, 0xae, 0x33, 0x24, 0x89 );
  70. #ifndef EC_PREPROCESS_COMPLETE
  71. #define EC_PREPROCESS_COMPLETE 0x56
  72. #endif
  73. extern RPC_IF_HANDLE __MIDL_itf_dshowasf_0000_v0_0_c_ifspec;
  74. extern RPC_IF_HANDLE __MIDL_itf_dshowasf_0000_v0_0_s_ifspec;
  75. #ifndef __IAMWMBufferPass_INTERFACE_DEFINED__
  76. #define __IAMWMBufferPass_INTERFACE_DEFINED__
  77. /* interface IAMWMBufferPass */
  78. /* [unique][uuid][object] */
  79. EXTERN_C const IID IID_IAMWMBufferPass;
  80. #if defined(__cplusplus) && !defined(CINTERFACE)
  81. MIDL_INTERFACE("6DD816D7-E740-4123-9E24-2444412644D8")
  82. IAMWMBufferPass : public IUnknown
  83. {
  84. public:
  85. virtual HRESULT STDMETHODCALLTYPE SetNotify(
  86. /* [in] */ IAMWMBufferPassCallback *pCallback) = 0;
  87. };
  88. #else /* C style interface */
  89. typedef struct IAMWMBufferPassVtbl
  90. {
  91. BEGIN_INTERFACE
  92. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  93. IAMWMBufferPass * This,
  94. /* [in] */ REFIID riid,
  95. /* [iid_is][out] */ void **ppvObject);
  96. ULONG ( STDMETHODCALLTYPE *AddRef )(
  97. IAMWMBufferPass * This);
  98. ULONG ( STDMETHODCALLTYPE *Release )(
  99. IAMWMBufferPass * This);
  100. HRESULT ( STDMETHODCALLTYPE *SetNotify )(
  101. IAMWMBufferPass * This,
  102. /* [in] */ IAMWMBufferPassCallback *pCallback);
  103. END_INTERFACE
  104. } IAMWMBufferPassVtbl;
  105. interface IAMWMBufferPass
  106. {
  107. CONST_VTBL struct IAMWMBufferPassVtbl *lpVtbl;
  108. };
  109. #ifdef COBJMACROS
  110. #define IAMWMBufferPass_QueryInterface(This,riid,ppvObject) \
  111. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  112. #define IAMWMBufferPass_AddRef(This) \
  113. (This)->lpVtbl -> AddRef(This)
  114. #define IAMWMBufferPass_Release(This) \
  115. (This)->lpVtbl -> Release(This)
  116. #define IAMWMBufferPass_SetNotify(This,pCallback) \
  117. (This)->lpVtbl -> SetNotify(This,pCallback)
  118. #endif /* COBJMACROS */
  119. #endif /* C style interface */
  120. HRESULT STDMETHODCALLTYPE IAMWMBufferPass_SetNotify_Proxy(
  121. IAMWMBufferPass * This,
  122. /* [in] */ IAMWMBufferPassCallback *pCallback);
  123. void __RPC_STUB IAMWMBufferPass_SetNotify_Stub(
  124. IRpcStubBuffer *This,
  125. IRpcChannelBuffer *_pRpcChannelBuffer,
  126. PRPC_MESSAGE _pRpcMessage,
  127. DWORD *_pdwStubPhase);
  128. #endif /* __IAMWMBufferPass_INTERFACE_DEFINED__ */
  129. #ifndef __IAMWMBufferPassCallback_INTERFACE_DEFINED__
  130. #define __IAMWMBufferPassCallback_INTERFACE_DEFINED__
  131. /* interface IAMWMBufferPassCallback */
  132. /* [unique][uuid][object] */
  133. EXTERN_C const IID IID_IAMWMBufferPassCallback;
  134. #if defined(__cplusplus) && !defined(CINTERFACE)
  135. MIDL_INTERFACE("B25B8372-D2D2-44b2-8653-1B8DAE332489")
  136. IAMWMBufferPassCallback : public IUnknown
  137. {
  138. public:
  139. virtual HRESULT STDMETHODCALLTYPE Notify(
  140. /* [in] */ INSSBuffer3 *pNSSBuffer3,
  141. /* [in] */ IPin *pPin,
  142. /* [in] */ REFERENCE_TIME *prtStart,
  143. /* [in] */ REFERENCE_TIME *prtEnd) = 0;
  144. };
  145. #else /* C style interface */
  146. typedef struct IAMWMBufferPassCallbackVtbl
  147. {
  148. BEGIN_INTERFACE
  149. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  150. IAMWMBufferPassCallback * This,
  151. /* [in] */ REFIID riid,
  152. /* [iid_is][out] */ void **ppvObject);
  153. ULONG ( STDMETHODCALLTYPE *AddRef )(
  154. IAMWMBufferPassCallback * This);
  155. ULONG ( STDMETHODCALLTYPE *Release )(
  156. IAMWMBufferPassCallback * This);
  157. HRESULT ( STDMETHODCALLTYPE *Notify )(
  158. IAMWMBufferPassCallback * This,
  159. /* [in] */ INSSBuffer3 *pNSSBuffer3,
  160. /* [in] */ IPin *pPin,
  161. /* [in] */ REFERENCE_TIME *prtStart,
  162. /* [in] */ REFERENCE_TIME *prtEnd);
  163. END_INTERFACE
  164. } IAMWMBufferPassCallbackVtbl;
  165. interface IAMWMBufferPassCallback
  166. {
  167. CONST_VTBL struct IAMWMBufferPassCallbackVtbl *lpVtbl;
  168. };
  169. #ifdef COBJMACROS
  170. #define IAMWMBufferPassCallback_QueryInterface(This,riid,ppvObject) \
  171. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  172. #define IAMWMBufferPassCallback_AddRef(This) \
  173. (This)->lpVtbl -> AddRef(This)
  174. #define IAMWMBufferPassCallback_Release(This) \
  175. (This)->lpVtbl -> Release(This)
  176. #define IAMWMBufferPassCallback_Notify(This,pNSSBuffer3,pPin,prtStart,prtEnd) \
  177. (This)->lpVtbl -> Notify(This,pNSSBuffer3,pPin,prtStart,prtEnd)
  178. #endif /* COBJMACROS */
  179. #endif /* C style interface */
  180. HRESULT STDMETHODCALLTYPE IAMWMBufferPassCallback_Notify_Proxy(
  181. IAMWMBufferPassCallback * This,
  182. /* [in] */ INSSBuffer3 *pNSSBuffer3,
  183. /* [in] */ IPin *pPin,
  184. /* [in] */ REFERENCE_TIME *prtStart,
  185. /* [in] */ REFERENCE_TIME *prtEnd);
  186. void __RPC_STUB IAMWMBufferPassCallback_Notify_Stub(
  187. IRpcStubBuffer *This,
  188. IRpcChannelBuffer *_pRpcChannelBuffer,
  189. PRPC_MESSAGE _pRpcMessage,
  190. DWORD *_pdwStubPhase);
  191. #endif /* __IAMWMBufferPassCallback_INTERFACE_DEFINED__ */
  192. /* interface __MIDL_itf_dshowasf_0495 */
  193. /* [local] */
  194. enum _AM_ASFWRITERCONFIG_PARAM
  195. { AM_CONFIGASFWRITER_PARAM_AUTOINDEX = 1,
  196. AM_CONFIGASFWRITER_PARAM_MULTIPASS = AM_CONFIGASFWRITER_PARAM_AUTOINDEX + 1,
  197. AM_CONFIGASFWRITER_PARAM_DONTCOMPRESS = AM_CONFIGASFWRITER_PARAM_MULTIPASS + 1
  198. } ;
  199. extern RPC_IF_HANDLE __MIDL_itf_dshowasf_0495_v0_0_c_ifspec;
  200. extern RPC_IF_HANDLE __MIDL_itf_dshowasf_0495_v0_0_s_ifspec;
  201. #ifndef __IConfigAsfWriter_INTERFACE_DEFINED__
  202. #define __IConfigAsfWriter_INTERFACE_DEFINED__
  203. /* interface IConfigAsfWriter */
  204. /* [unique][uuid][object] */
  205. EXTERN_C const IID IID_IConfigAsfWriter;
  206. #if defined(__cplusplus) && !defined(CINTERFACE)
  207. MIDL_INTERFACE("45086030-F7E4-486a-B504-826BB5792A3B")
  208. IConfigAsfWriter : public IUnknown
  209. {
  210. public:
  211. virtual HRESULT STDMETHODCALLTYPE ConfigureFilterUsingProfileId(
  212. /* [in] */ DWORD dwProfileId) = 0;
  213. virtual HRESULT STDMETHODCALLTYPE GetCurrentProfileId(
  214. /* [out] */ DWORD *pdwProfileId) = 0;
  215. virtual HRESULT STDMETHODCALLTYPE ConfigureFilterUsingProfileGuid(
  216. /* [in] */ REFGUID guidProfile) = 0;
  217. virtual HRESULT STDMETHODCALLTYPE GetCurrentProfileGuid(
  218. /* [out] */ GUID *pProfileGuid) = 0;
  219. virtual HRESULT STDMETHODCALLTYPE ConfigureFilterUsingProfile(
  220. /* [in] */ IWMProfile *pProfile) = 0;
  221. virtual HRESULT STDMETHODCALLTYPE GetCurrentProfile(
  222. /* [out] */ IWMProfile **ppProfile) = 0;
  223. virtual HRESULT STDMETHODCALLTYPE SetIndexMode(
  224. /* [in] */ BOOL bIndexFile) = 0;
  225. virtual HRESULT STDMETHODCALLTYPE GetIndexMode(
  226. /* [out] */ BOOL *pbIndexFile) = 0;
  227. };
  228. #else /* C style interface */
  229. typedef struct IConfigAsfWriterVtbl
  230. {
  231. BEGIN_INTERFACE
  232. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  233. IConfigAsfWriter * This,
  234. /* [in] */ REFIID riid,
  235. /* [iid_is][out] */ void **ppvObject);
  236. ULONG ( STDMETHODCALLTYPE *AddRef )(
  237. IConfigAsfWriter * This);
  238. ULONG ( STDMETHODCALLTYPE *Release )(
  239. IConfigAsfWriter * This);
  240. HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfileId )(
  241. IConfigAsfWriter * This,
  242. /* [in] */ DWORD dwProfileId);
  243. HRESULT ( STDMETHODCALLTYPE *GetCurrentProfileId )(
  244. IConfigAsfWriter * This,
  245. /* [out] */ DWORD *pdwProfileId);
  246. HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfileGuid )(
  247. IConfigAsfWriter * This,
  248. /* [in] */ REFGUID guidProfile);
  249. HRESULT ( STDMETHODCALLTYPE *GetCurrentProfileGuid )(
  250. IConfigAsfWriter * This,
  251. /* [out] */ GUID *pProfileGuid);
  252. HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfile )(
  253. IConfigAsfWriter * This,
  254. /* [in] */ IWMProfile *pProfile);
  255. HRESULT ( STDMETHODCALLTYPE *GetCurrentProfile )(
  256. IConfigAsfWriter * This,
  257. /* [out] */ IWMProfile **ppProfile);
  258. HRESULT ( STDMETHODCALLTYPE *SetIndexMode )(
  259. IConfigAsfWriter * This,
  260. /* [in] */ BOOL bIndexFile);
  261. HRESULT ( STDMETHODCALLTYPE *GetIndexMode )(
  262. IConfigAsfWriter * This,
  263. /* [out] */ BOOL *pbIndexFile);
  264. END_INTERFACE
  265. } IConfigAsfWriterVtbl;
  266. interface IConfigAsfWriter
  267. {
  268. CONST_VTBL struct IConfigAsfWriterVtbl *lpVtbl;
  269. };
  270. #ifdef COBJMACROS
  271. #define IConfigAsfWriter_QueryInterface(This,riid,ppvObject) \
  272. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  273. #define IConfigAsfWriter_AddRef(This) \
  274. (This)->lpVtbl -> AddRef(This)
  275. #define IConfigAsfWriter_Release(This) \
  276. (This)->lpVtbl -> Release(This)
  277. #define IConfigAsfWriter_ConfigureFilterUsingProfileId(This,dwProfileId) \
  278. (This)->lpVtbl -> ConfigureFilterUsingProfileId(This,dwProfileId)
  279. #define IConfigAsfWriter_GetCurrentProfileId(This,pdwProfileId) \
  280. (This)->lpVtbl -> GetCurrentProfileId(This,pdwProfileId)
  281. #define IConfigAsfWriter_ConfigureFilterUsingProfileGuid(This,guidProfile) \
  282. (This)->lpVtbl -> ConfigureFilterUsingProfileGuid(This,guidProfile)
  283. #define IConfigAsfWriter_GetCurrentProfileGuid(This,pProfileGuid) \
  284. (This)->lpVtbl -> GetCurrentProfileGuid(This,pProfileGuid)
  285. #define IConfigAsfWriter_ConfigureFilterUsingProfile(This,pProfile) \
  286. (This)->lpVtbl -> ConfigureFilterUsingProfile(This,pProfile)
  287. #define IConfigAsfWriter_GetCurrentProfile(This,ppProfile) \
  288. (This)->lpVtbl -> GetCurrentProfile(This,ppProfile)
  289. #define IConfigAsfWriter_SetIndexMode(This,bIndexFile) \
  290. (This)->lpVtbl -> SetIndexMode(This,bIndexFile)
  291. #define IConfigAsfWriter_GetIndexMode(This,pbIndexFile) \
  292. (This)->lpVtbl -> GetIndexMode(This,pbIndexFile)
  293. #endif /* COBJMACROS */
  294. #endif /* C style interface */
  295. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_ConfigureFilterUsingProfileId_Proxy(
  296. IConfigAsfWriter * This,
  297. /* [in] */ DWORD dwProfileId);
  298. void __RPC_STUB IConfigAsfWriter_ConfigureFilterUsingProfileId_Stub(
  299. IRpcStubBuffer *This,
  300. IRpcChannelBuffer *_pRpcChannelBuffer,
  301. PRPC_MESSAGE _pRpcMessage,
  302. DWORD *_pdwStubPhase);
  303. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_GetCurrentProfileId_Proxy(
  304. IConfigAsfWriter * This,
  305. /* [out] */ DWORD *pdwProfileId);
  306. void __RPC_STUB IConfigAsfWriter_GetCurrentProfileId_Stub(
  307. IRpcStubBuffer *This,
  308. IRpcChannelBuffer *_pRpcChannelBuffer,
  309. PRPC_MESSAGE _pRpcMessage,
  310. DWORD *_pdwStubPhase);
  311. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_ConfigureFilterUsingProfileGuid_Proxy(
  312. IConfigAsfWriter * This,
  313. /* [in] */ REFGUID guidProfile);
  314. void __RPC_STUB IConfigAsfWriter_ConfigureFilterUsingProfileGuid_Stub(
  315. IRpcStubBuffer *This,
  316. IRpcChannelBuffer *_pRpcChannelBuffer,
  317. PRPC_MESSAGE _pRpcMessage,
  318. DWORD *_pdwStubPhase);
  319. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_GetCurrentProfileGuid_Proxy(
  320. IConfigAsfWriter * This,
  321. /* [out] */ GUID *pProfileGuid);
  322. void __RPC_STUB IConfigAsfWriter_GetCurrentProfileGuid_Stub(
  323. IRpcStubBuffer *This,
  324. IRpcChannelBuffer *_pRpcChannelBuffer,
  325. PRPC_MESSAGE _pRpcMessage,
  326. DWORD *_pdwStubPhase);
  327. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_ConfigureFilterUsingProfile_Proxy(
  328. IConfigAsfWriter * This,
  329. /* [in] */ IWMProfile *pProfile);
  330. void __RPC_STUB IConfigAsfWriter_ConfigureFilterUsingProfile_Stub(
  331. IRpcStubBuffer *This,
  332. IRpcChannelBuffer *_pRpcChannelBuffer,
  333. PRPC_MESSAGE _pRpcMessage,
  334. DWORD *_pdwStubPhase);
  335. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_GetCurrentProfile_Proxy(
  336. IConfigAsfWriter * This,
  337. /* [out] */ IWMProfile **ppProfile);
  338. void __RPC_STUB IConfigAsfWriter_GetCurrentProfile_Stub(
  339. IRpcStubBuffer *This,
  340. IRpcChannelBuffer *_pRpcChannelBuffer,
  341. PRPC_MESSAGE _pRpcMessage,
  342. DWORD *_pdwStubPhase);
  343. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_SetIndexMode_Proxy(
  344. IConfigAsfWriter * This,
  345. /* [in] */ BOOL bIndexFile);
  346. void __RPC_STUB IConfigAsfWriter_SetIndexMode_Stub(
  347. IRpcStubBuffer *This,
  348. IRpcChannelBuffer *_pRpcChannelBuffer,
  349. PRPC_MESSAGE _pRpcMessage,
  350. DWORD *_pdwStubPhase);
  351. HRESULT STDMETHODCALLTYPE IConfigAsfWriter_GetIndexMode_Proxy(
  352. IConfigAsfWriter * This,
  353. /* [out] */ BOOL *pbIndexFile);
  354. void __RPC_STUB IConfigAsfWriter_GetIndexMode_Stub(
  355. IRpcStubBuffer *This,
  356. IRpcChannelBuffer *_pRpcChannelBuffer,
  357. PRPC_MESSAGE _pRpcMessage,
  358. DWORD *_pdwStubPhase);
  359. #endif /* __IConfigAsfWriter_INTERFACE_DEFINED__ */
  360. #ifndef __IConfigAsfWriter2_INTERFACE_DEFINED__
  361. #define __IConfigAsfWriter2_INTERFACE_DEFINED__
  362. /* interface IConfigAsfWriter2 */
  363. /* [unique][uuid][object] */
  364. EXTERN_C const IID IID_IConfigAsfWriter2;
  365. #if defined(__cplusplus) && !defined(CINTERFACE)
  366. MIDL_INTERFACE("7989CCAA-53F0-44f0-884A-F3B03F6AE066")
  367. IConfigAsfWriter2 : public IConfigAsfWriter
  368. {
  369. public:
  370. virtual HRESULT STDMETHODCALLTYPE StreamNumFromPin(
  371. /* [in] */ IPin *pPin,
  372. /* [out] */ WORD *pwStreamNum) = 0;
  373. virtual HRESULT STDMETHODCALLTYPE SetParam(
  374. /* [in] */ DWORD dwParam,
  375. /* [in] */ DWORD dwParam1,
  376. /* [in] */ DWORD dwParam2) = 0;
  377. virtual HRESULT STDMETHODCALLTYPE GetParam(
  378. /* [in] */ DWORD dwParam,
  379. /* [out] */ DWORD *pdwParam1,
  380. /* [out] */ DWORD *pdwParam2) = 0;
  381. virtual HRESULT STDMETHODCALLTYPE ResetMultiPassState( void) = 0;
  382. };
  383. #else /* C style interface */
  384. typedef struct IConfigAsfWriter2Vtbl
  385. {
  386. BEGIN_INTERFACE
  387. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  388. IConfigAsfWriter2 * This,
  389. /* [in] */ REFIID riid,
  390. /* [iid_is][out] */ void **ppvObject);
  391. ULONG ( STDMETHODCALLTYPE *AddRef )(
  392. IConfigAsfWriter2 * This);
  393. ULONG ( STDMETHODCALLTYPE *Release )(
  394. IConfigAsfWriter2 * This);
  395. HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfileId )(
  396. IConfigAsfWriter2 * This,
  397. /* [in] */ DWORD dwProfileId);
  398. HRESULT ( STDMETHODCALLTYPE *GetCurrentProfileId )(
  399. IConfigAsfWriter2 * This,
  400. /* [out] */ DWORD *pdwProfileId);
  401. HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfileGuid )(
  402. IConfigAsfWriter2 * This,
  403. /* [in] */ REFGUID guidProfile);
  404. HRESULT ( STDMETHODCALLTYPE *GetCurrentProfileGuid )(
  405. IConfigAsfWriter2 * This,
  406. /* [out] */ GUID *pProfileGuid);
  407. HRESULT ( STDMETHODCALLTYPE *ConfigureFilterUsingProfile )(
  408. IConfigAsfWriter2 * This,
  409. /* [in] */ IWMProfile *pProfile);
  410. HRESULT ( STDMETHODCALLTYPE *GetCurrentProfile )(
  411. IConfigAsfWriter2 * This,
  412. /* [out] */ IWMProfile **ppProfile);
  413. HRESULT ( STDMETHODCALLTYPE *SetIndexMode )(
  414. IConfigAsfWriter2 * This,
  415. /* [in] */ BOOL bIndexFile);
  416. HRESULT ( STDMETHODCALLTYPE *GetIndexMode )(
  417. IConfigAsfWriter2 * This,
  418. /* [out] */ BOOL *pbIndexFile);
  419. HRESULT ( STDMETHODCALLTYPE *StreamNumFromPin )(
  420. IConfigAsfWriter2 * This,
  421. /* [in] */ IPin *pPin,
  422. /* [out] */ WORD *pwStreamNum);
  423. HRESULT ( STDMETHODCALLTYPE *SetParam )(
  424. IConfigAsfWriter2 * This,
  425. /* [in] */ DWORD dwParam,
  426. /* [in] */ DWORD dwParam1,
  427. /* [in] */ DWORD dwParam2);
  428. HRESULT ( STDMETHODCALLTYPE *GetParam )(
  429. IConfigAsfWriter2 * This,
  430. /* [in] */ DWORD dwParam,
  431. /* [out] */ DWORD *pdwParam1,
  432. /* [out] */ DWORD *pdwParam2);
  433. HRESULT ( STDMETHODCALLTYPE *ResetMultiPassState )(
  434. IConfigAsfWriter2 * This);
  435. END_INTERFACE
  436. } IConfigAsfWriter2Vtbl;
  437. interface IConfigAsfWriter2
  438. {
  439. CONST_VTBL struct IConfigAsfWriter2Vtbl *lpVtbl;
  440. };
  441. #ifdef COBJMACROS
  442. #define IConfigAsfWriter2_QueryInterface(This,riid,ppvObject) \
  443. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  444. #define IConfigAsfWriter2_AddRef(This) \
  445. (This)->lpVtbl -> AddRef(This)
  446. #define IConfigAsfWriter2_Release(This) \
  447. (This)->lpVtbl -> Release(This)
  448. #define IConfigAsfWriter2_ConfigureFilterUsingProfileId(This,dwProfileId) \
  449. (This)->lpVtbl -> ConfigureFilterUsingProfileId(This,dwProfileId)
  450. #define IConfigAsfWriter2_GetCurrentProfileId(This,pdwProfileId) \
  451. (This)->lpVtbl -> GetCurrentProfileId(This,pdwProfileId)
  452. #define IConfigAsfWriter2_ConfigureFilterUsingProfileGuid(This,guidProfile) \
  453. (This)->lpVtbl -> ConfigureFilterUsingProfileGuid(This,guidProfile)
  454. #define IConfigAsfWriter2_GetCurrentProfileGuid(This,pProfileGuid) \
  455. (This)->lpVtbl -> GetCurrentProfileGuid(This,pProfileGuid)
  456. #define IConfigAsfWriter2_ConfigureFilterUsingProfile(This,pProfile) \
  457. (This)->lpVtbl -> ConfigureFilterUsingProfile(This,pProfile)
  458. #define IConfigAsfWriter2_GetCurrentProfile(This,ppProfile) \
  459. (This)->lpVtbl -> GetCurrentProfile(This,ppProfile)
  460. #define IConfigAsfWriter2_SetIndexMode(This,bIndexFile) \
  461. (This)->lpVtbl -> SetIndexMode(This,bIndexFile)
  462. #define IConfigAsfWriter2_GetIndexMode(This,pbIndexFile) \
  463. (This)->lpVtbl -> GetIndexMode(This,pbIndexFile)
  464. #define IConfigAsfWriter2_StreamNumFromPin(This,pPin,pwStreamNum) \
  465. (This)->lpVtbl -> StreamNumFromPin(This,pPin,pwStreamNum)
  466. #define IConfigAsfWriter2_SetParam(This,dwParam,dwParam1,dwParam2) \
  467. (This)->lpVtbl -> SetParam(This,dwParam,dwParam1,dwParam2)
  468. #define IConfigAsfWriter2_GetParam(This,dwParam,pdwParam1,pdwParam2) \
  469. (This)->lpVtbl -> GetParam(This,dwParam,pdwParam1,pdwParam2)
  470. #define IConfigAsfWriter2_ResetMultiPassState(This) \
  471. (This)->lpVtbl -> ResetMultiPassState(This)
  472. #endif /* COBJMACROS */
  473. #endif /* C style interface */
  474. HRESULT STDMETHODCALLTYPE IConfigAsfWriter2_StreamNumFromPin_Proxy(
  475. IConfigAsfWriter2 * This,
  476. /* [in] */ IPin *pPin,
  477. /* [out] */ WORD *pwStreamNum);
  478. void __RPC_STUB IConfigAsfWriter2_StreamNumFromPin_Stub(
  479. IRpcStubBuffer *This,
  480. IRpcChannelBuffer *_pRpcChannelBuffer,
  481. PRPC_MESSAGE _pRpcMessage,
  482. DWORD *_pdwStubPhase);
  483. HRESULT STDMETHODCALLTYPE IConfigAsfWriter2_SetParam_Proxy(
  484. IConfigAsfWriter2 * This,
  485. /* [in] */ DWORD dwParam,
  486. /* [in] */ DWORD dwParam1,
  487. /* [in] */ DWORD dwParam2);
  488. void __RPC_STUB IConfigAsfWriter2_SetParam_Stub(
  489. IRpcStubBuffer *This,
  490. IRpcChannelBuffer *_pRpcChannelBuffer,
  491. PRPC_MESSAGE _pRpcMessage,
  492. DWORD *_pdwStubPhase);
  493. HRESULT STDMETHODCALLTYPE IConfigAsfWriter2_GetParam_Proxy(
  494. IConfigAsfWriter2 * This,
  495. /* [in] */ DWORD dwParam,
  496. /* [out] */ DWORD *pdwParam1,
  497. /* [out] */ DWORD *pdwParam2);
  498. void __RPC_STUB IConfigAsfWriter2_GetParam_Stub(
  499. IRpcStubBuffer *This,
  500. IRpcChannelBuffer *_pRpcChannelBuffer,
  501. PRPC_MESSAGE _pRpcMessage,
  502. DWORD *_pdwStubPhase);
  503. HRESULT STDMETHODCALLTYPE IConfigAsfWriter2_ResetMultiPassState_Proxy(
  504. IConfigAsfWriter2 * This);
  505. void __RPC_STUB IConfigAsfWriter2_ResetMultiPassState_Stub(
  506. IRpcStubBuffer *This,
  507. IRpcChannelBuffer *_pRpcChannelBuffer,
  508. PRPC_MESSAGE _pRpcMessage,
  509. DWORD *_pdwStubPhase);
  510. #endif /* __IConfigAsfWriter2_INTERFACE_DEFINED__ */
  511. /* Additional Prototypes for ALL interfaces */
  512. /* end of Additional Prototypes */
  513. #ifdef __cplusplus
  514. }
  515. #endif
  516. #endif