Leaked source code of windows server 2003
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.

1348 lines
42 KiB

  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 wiamindr.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 __wiamindr_h__
  27. #define __wiamindr_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IWiaMiniDrv_FWD_DEFINED__
  33. #define __IWiaMiniDrv_FWD_DEFINED__
  34. typedef interface IWiaMiniDrv IWiaMiniDrv;
  35. #endif /* __IWiaMiniDrv_FWD_DEFINED__ */
  36. #ifndef __IWiaMiniDrvCallBack_FWD_DEFINED__
  37. #define __IWiaMiniDrvCallBack_FWD_DEFINED__
  38. typedef interface IWiaMiniDrvCallBack IWiaMiniDrvCallBack;
  39. #endif /* __IWiaMiniDrvCallBack_FWD_DEFINED__ */
  40. #ifndef __IWiaDrvItem_FWD_DEFINED__
  41. #define __IWiaDrvItem_FWD_DEFINED__
  42. typedef interface IWiaDrvItem IWiaDrvItem;
  43. #endif /* __IWiaDrvItem_FWD_DEFINED__ */
  44. /* header files for imported files */
  45. #include "unknwn.h"
  46. #include "oaidl.h"
  47. #include "propidl.h"
  48. #include "wia.h"
  49. #ifdef __cplusplus
  50. extern "C"{
  51. #endif
  52. void * __RPC_USER MIDL_user_allocate(size_t);
  53. void __RPC_USER MIDL_user_free( void * );
  54. /* interface __MIDL_itf_wiamindr_0000 */
  55. /* [local] */
  56. typedef struct _MINIDRV_TRANSFER_CONTEXT
  57. {
  58. LONG lSize;
  59. LONG lWidthInPixels;
  60. LONG lLines;
  61. LONG lDepth;
  62. LONG lXRes;
  63. LONG lYRes;
  64. LONG lCompression;
  65. GUID guidFormatID;
  66. LONG tymed;
  67. LONG_PTR hFile;
  68. LONG cbOffset;
  69. LONG lBufferSize;
  70. LONG lActiveBuffer;
  71. LONG lNumBuffers;
  72. BYTE *pBaseBuffer;
  73. BYTE *pTransferBuffer;
  74. BOOL bTransferDataCB;
  75. BOOL bClassDrvAllocBuf;
  76. LONG_PTR lClientAddress;
  77. IWiaMiniDrvCallBack *pIWiaMiniDrvCallBack;
  78. LONG lImageSize;
  79. LONG lHeaderSize;
  80. LONG lItemSize;
  81. LONG cbWidthInBytes;
  82. LONG lPage;
  83. LONG lCurIfdOffset;
  84. LONG lPrevIfdOffset;
  85. } MINIDRV_TRANSFER_CONTEXT;
  86. typedef struct _MINIDRV_TRANSFER_CONTEXT *PMINIDRV_TRANSFER_CONTEXT;
  87. typedef struct _WIA_DEV_CAP_DRV
  88. {
  89. GUID *guid;
  90. ULONG ulFlags;
  91. LPOLESTR wszName;
  92. LPOLESTR wszDescription;
  93. LPOLESTR wszIcon;
  94. } WIA_DEV_CAP_DRV;
  95. typedef struct _WIA_DEV_CAP_DRV *PWIA_DEV_CAP_DRV;
  96. extern RPC_IF_HANDLE __MIDL_itf_wiamindr_0000_v0_0_c_ifspec;
  97. extern RPC_IF_HANDLE __MIDL_itf_wiamindr_0000_v0_0_s_ifspec;
  98. #ifndef __IWiaMiniDrv_INTERFACE_DEFINED__
  99. #define __IWiaMiniDrv_INTERFACE_DEFINED__
  100. /* interface IWiaMiniDrv */
  101. /* [unique][helpstring][uuid][object] */
  102. EXTERN_C const IID IID_IWiaMiniDrv;
  103. #if defined(__cplusplus) && !defined(CINTERFACE)
  104. MIDL_INTERFACE("d8cdee14-3c6c-11d2-9a35-00c04fa36145")
  105. IWiaMiniDrv : public IUnknown
  106. {
  107. public:
  108. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvInitializeWia(
  109. /* [in] */ BYTE *__MIDL_0014,
  110. /* [in] */ LONG __MIDL_0015,
  111. /* [in] */ BSTR __MIDL_0016,
  112. /* [in] */ BSTR __MIDL_0017,
  113. /* [in] */ IUnknown *__MIDL_0018,
  114. /* [in] */ IUnknown *__MIDL_0019,
  115. /* [out] */ IWiaDrvItem **__MIDL_0020,
  116. /* [out] */ IUnknown **__MIDL_0021,
  117. /* [out] */ LONG *__MIDL_0022) = 0;
  118. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvAcquireItemData(
  119. /* [in] */ BYTE *__MIDL_0023,
  120. /* [in] */ LONG __MIDL_0024,
  121. /* [out][in] */ PMINIDRV_TRANSFER_CONTEXT __MIDL_0025,
  122. /* [out] */ LONG *__MIDL_0026) = 0;
  123. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvInitItemProperties(
  124. /* [in] */ BYTE *__MIDL_0027,
  125. /* [in] */ LONG __MIDL_0028,
  126. /* [out] */ LONG *__MIDL_0029) = 0;
  127. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvValidateItemProperties(
  128. /* [in] */ BYTE *__MIDL_0030,
  129. /* [in] */ LONG __MIDL_0031,
  130. /* [in] */ ULONG __MIDL_0032,
  131. /* [in] */ const PROPSPEC *__MIDL_0033,
  132. /* [out] */ LONG *__MIDL_0034) = 0;
  133. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvWriteItemProperties(
  134. /* [in] */ BYTE *__MIDL_0035,
  135. /* [in] */ LONG __MIDL_0036,
  136. /* [in] */ PMINIDRV_TRANSFER_CONTEXT __MIDL_0037,
  137. /* [out] */ LONG *__MIDL_0038) = 0;
  138. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvReadItemProperties(
  139. /* [in] */ BYTE *__MIDL_0039,
  140. /* [in] */ LONG __MIDL_0040,
  141. /* [in] */ ULONG __MIDL_0041,
  142. /* [in] */ const PROPSPEC *__MIDL_0042,
  143. /* [out] */ LONG *__MIDL_0043) = 0;
  144. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvLockWiaDevice(
  145. /* [in] */ BYTE *__MIDL_0044,
  146. /* [in] */ LONG __MIDL_0045,
  147. /* [out] */ LONG *__MIDL_0046) = 0;
  148. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvUnLockWiaDevice(
  149. /* [in] */ BYTE *__MIDL_0047,
  150. /* [in] */ LONG __MIDL_0048,
  151. /* [out] */ LONG *__MIDL_0049) = 0;
  152. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvAnalyzeItem(
  153. /* [in] */ BYTE *__MIDL_0050,
  154. /* [in] */ LONG __MIDL_0051,
  155. /* [in] */ LONG *__MIDL_0052) = 0;
  156. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvGetDeviceErrorStr(
  157. /* [in] */ LONG __MIDL_0053,
  158. /* [in] */ LONG __MIDL_0054,
  159. /* [out] */ LPOLESTR *__MIDL_0055,
  160. /* [out] */ LONG *__MIDL_0056) = 0;
  161. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvDeviceCommand(
  162. /* [in] */ BYTE *__MIDL_0057,
  163. /* [in] */ LONG __MIDL_0058,
  164. /* [in] */ const GUID *__MIDL_0059,
  165. /* [out] */ IWiaDrvItem **__MIDL_0060,
  166. /* [out] */ LONG *__MIDL_0061) = 0;
  167. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvGetCapabilities(
  168. /* [in] */ BYTE *__MIDL_0062,
  169. /* [in] */ LONG __MIDL_0063,
  170. /* [out] */ LONG *__MIDL_0064,
  171. /* [out] */ WIA_DEV_CAP_DRV **__MIDL_0065,
  172. /* [out] */ LONG *__MIDL_0066) = 0;
  173. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvDeleteItem(
  174. /* [in] */ BYTE *__MIDL_0067,
  175. /* [in] */ LONG __MIDL_0068,
  176. /* [out] */ LONG *__MIDL_0069) = 0;
  177. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvFreeDrvItemContext(
  178. /* [in] */ LONG __MIDL_0070,
  179. /* [in] */ BYTE *__MIDL_0071,
  180. /* [out] */ LONG *__MIDL_0072) = 0;
  181. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvGetWiaFormatInfo(
  182. /* [in] */ BYTE *__MIDL_0073,
  183. /* [in] */ LONG __MIDL_0074,
  184. /* [out] */ LONG *__MIDL_0075,
  185. /* [out] */ WIA_FORMAT_INFO **__MIDL_0076,
  186. /* [out] */ LONG *__MIDL_0077) = 0;
  187. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvNotifyPnpEvent(
  188. /* [in] */ const GUID *pEventGUID,
  189. /* [in] */ BSTR bstrDeviceID,
  190. /* [in] */ ULONG ulReserved) = 0;
  191. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE drvUnInitializeWia(
  192. /* [in] */ BYTE *__MIDL_0078) = 0;
  193. };
  194. #else /* C style interface */
  195. typedef struct IWiaMiniDrvVtbl
  196. {
  197. BEGIN_INTERFACE
  198. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  199. IWiaMiniDrv * This,
  200. /* [in] */ REFIID riid,
  201. /* [iid_is][out] */ void **ppvObject);
  202. ULONG ( STDMETHODCALLTYPE *AddRef )(
  203. IWiaMiniDrv * This);
  204. ULONG ( STDMETHODCALLTYPE *Release )(
  205. IWiaMiniDrv * This);
  206. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvInitializeWia )(
  207. IWiaMiniDrv * This,
  208. /* [in] */ BYTE *__MIDL_0014,
  209. /* [in] */ LONG __MIDL_0015,
  210. /* [in] */ BSTR __MIDL_0016,
  211. /* [in] */ BSTR __MIDL_0017,
  212. /* [in] */ IUnknown *__MIDL_0018,
  213. /* [in] */ IUnknown *__MIDL_0019,
  214. /* [out] */ IWiaDrvItem **__MIDL_0020,
  215. /* [out] */ IUnknown **__MIDL_0021,
  216. /* [out] */ LONG *__MIDL_0022);
  217. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvAcquireItemData )(
  218. IWiaMiniDrv * This,
  219. /* [in] */ BYTE *__MIDL_0023,
  220. /* [in] */ LONG __MIDL_0024,
  221. /* [out][in] */ PMINIDRV_TRANSFER_CONTEXT __MIDL_0025,
  222. /* [out] */ LONG *__MIDL_0026);
  223. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvInitItemProperties )(
  224. IWiaMiniDrv * This,
  225. /* [in] */ BYTE *__MIDL_0027,
  226. /* [in] */ LONG __MIDL_0028,
  227. /* [out] */ LONG *__MIDL_0029);
  228. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvValidateItemProperties )(
  229. IWiaMiniDrv * This,
  230. /* [in] */ BYTE *__MIDL_0030,
  231. /* [in] */ LONG __MIDL_0031,
  232. /* [in] */ ULONG __MIDL_0032,
  233. /* [in] */ const PROPSPEC *__MIDL_0033,
  234. /* [out] */ LONG *__MIDL_0034);
  235. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvWriteItemProperties )(
  236. IWiaMiniDrv * This,
  237. /* [in] */ BYTE *__MIDL_0035,
  238. /* [in] */ LONG __MIDL_0036,
  239. /* [in] */ PMINIDRV_TRANSFER_CONTEXT __MIDL_0037,
  240. /* [out] */ LONG *__MIDL_0038);
  241. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvReadItemProperties )(
  242. IWiaMiniDrv * This,
  243. /* [in] */ BYTE *__MIDL_0039,
  244. /* [in] */ LONG __MIDL_0040,
  245. /* [in] */ ULONG __MIDL_0041,
  246. /* [in] */ const PROPSPEC *__MIDL_0042,
  247. /* [out] */ LONG *__MIDL_0043);
  248. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvLockWiaDevice )(
  249. IWiaMiniDrv * This,
  250. /* [in] */ BYTE *__MIDL_0044,
  251. /* [in] */ LONG __MIDL_0045,
  252. /* [out] */ LONG *__MIDL_0046);
  253. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvUnLockWiaDevice )(
  254. IWiaMiniDrv * This,
  255. /* [in] */ BYTE *__MIDL_0047,
  256. /* [in] */ LONG __MIDL_0048,
  257. /* [out] */ LONG *__MIDL_0049);
  258. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvAnalyzeItem )(
  259. IWiaMiniDrv * This,
  260. /* [in] */ BYTE *__MIDL_0050,
  261. /* [in] */ LONG __MIDL_0051,
  262. /* [in] */ LONG *__MIDL_0052);
  263. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvGetDeviceErrorStr )(
  264. IWiaMiniDrv * This,
  265. /* [in] */ LONG __MIDL_0053,
  266. /* [in] */ LONG __MIDL_0054,
  267. /* [out] */ LPOLESTR *__MIDL_0055,
  268. /* [out] */ LONG *__MIDL_0056);
  269. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvDeviceCommand )(
  270. IWiaMiniDrv * This,
  271. /* [in] */ BYTE *__MIDL_0057,
  272. /* [in] */ LONG __MIDL_0058,
  273. /* [in] */ const GUID *__MIDL_0059,
  274. /* [out] */ IWiaDrvItem **__MIDL_0060,
  275. /* [out] */ LONG *__MIDL_0061);
  276. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvGetCapabilities )(
  277. IWiaMiniDrv * This,
  278. /* [in] */ BYTE *__MIDL_0062,
  279. /* [in] */ LONG __MIDL_0063,
  280. /* [out] */ LONG *__MIDL_0064,
  281. /* [out] */ WIA_DEV_CAP_DRV **__MIDL_0065,
  282. /* [out] */ LONG *__MIDL_0066);
  283. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvDeleteItem )(
  284. IWiaMiniDrv * This,
  285. /* [in] */ BYTE *__MIDL_0067,
  286. /* [in] */ LONG __MIDL_0068,
  287. /* [out] */ LONG *__MIDL_0069);
  288. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvFreeDrvItemContext )(
  289. IWiaMiniDrv * This,
  290. /* [in] */ LONG __MIDL_0070,
  291. /* [in] */ BYTE *__MIDL_0071,
  292. /* [out] */ LONG *__MIDL_0072);
  293. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvGetWiaFormatInfo )(
  294. IWiaMiniDrv * This,
  295. /* [in] */ BYTE *__MIDL_0073,
  296. /* [in] */ LONG __MIDL_0074,
  297. /* [out] */ LONG *__MIDL_0075,
  298. /* [out] */ WIA_FORMAT_INFO **__MIDL_0076,
  299. /* [out] */ LONG *__MIDL_0077);
  300. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvNotifyPnpEvent )(
  301. IWiaMiniDrv * This,
  302. /* [in] */ const GUID *pEventGUID,
  303. /* [in] */ BSTR bstrDeviceID,
  304. /* [in] */ ULONG ulReserved);
  305. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *drvUnInitializeWia )(
  306. IWiaMiniDrv * This,
  307. /* [in] */ BYTE *__MIDL_0078);
  308. END_INTERFACE
  309. } IWiaMiniDrvVtbl;
  310. interface IWiaMiniDrv
  311. {
  312. CONST_VTBL struct IWiaMiniDrvVtbl *lpVtbl;
  313. };
  314. #ifdef COBJMACROS
  315. #define IWiaMiniDrv_QueryInterface(This,riid,ppvObject) \
  316. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  317. #define IWiaMiniDrv_AddRef(This) \
  318. (This)->lpVtbl -> AddRef(This)
  319. #define IWiaMiniDrv_Release(This) \
  320. (This)->lpVtbl -> Release(This)
  321. #define IWiaMiniDrv_drvInitializeWia(This,__MIDL_0014,__MIDL_0015,__MIDL_0016,__MIDL_0017,__MIDL_0018,__MIDL_0019,__MIDL_0020,__MIDL_0021,__MIDL_0022) \
  322. (This)->lpVtbl -> drvInitializeWia(This,__MIDL_0014,__MIDL_0015,__MIDL_0016,__MIDL_0017,__MIDL_0018,__MIDL_0019,__MIDL_0020,__MIDL_0021,__MIDL_0022)
  323. #define IWiaMiniDrv_drvAcquireItemData(This,__MIDL_0023,__MIDL_0024,__MIDL_0025,__MIDL_0026) \
  324. (This)->lpVtbl -> drvAcquireItemData(This,__MIDL_0023,__MIDL_0024,__MIDL_0025,__MIDL_0026)
  325. #define IWiaMiniDrv_drvInitItemProperties(This,__MIDL_0027,__MIDL_0028,__MIDL_0029) \
  326. (This)->lpVtbl -> drvInitItemProperties(This,__MIDL_0027,__MIDL_0028,__MIDL_0029)
  327. #define IWiaMiniDrv_drvValidateItemProperties(This,__MIDL_0030,__MIDL_0031,__MIDL_0032,__MIDL_0033,__MIDL_0034) \
  328. (This)->lpVtbl -> drvValidateItemProperties(This,__MIDL_0030,__MIDL_0031,__MIDL_0032,__MIDL_0033,__MIDL_0034)
  329. #define IWiaMiniDrv_drvWriteItemProperties(This,__MIDL_0035,__MIDL_0036,__MIDL_0037,__MIDL_0038) \
  330. (This)->lpVtbl -> drvWriteItemProperties(This,__MIDL_0035,__MIDL_0036,__MIDL_0037,__MIDL_0038)
  331. #define IWiaMiniDrv_drvReadItemProperties(This,__MIDL_0039,__MIDL_0040,__MIDL_0041,__MIDL_0042,__MIDL_0043) \
  332. (This)->lpVtbl -> drvReadItemProperties(This,__MIDL_0039,__MIDL_0040,__MIDL_0041,__MIDL_0042,__MIDL_0043)
  333. #define IWiaMiniDrv_drvLockWiaDevice(This,__MIDL_0044,__MIDL_0045,__MIDL_0046) \
  334. (This)->lpVtbl -> drvLockWiaDevice(This,__MIDL_0044,__MIDL_0045,__MIDL_0046)
  335. #define IWiaMiniDrv_drvUnLockWiaDevice(This,__MIDL_0047,__MIDL_0048,__MIDL_0049) \
  336. (This)->lpVtbl -> drvUnLockWiaDevice(This,__MIDL_0047,__MIDL_0048,__MIDL_0049)
  337. #define IWiaMiniDrv_drvAnalyzeItem(This,__MIDL_0050,__MIDL_0051,__MIDL_0052) \
  338. (This)->lpVtbl -> drvAnalyzeItem(This,__MIDL_0050,__MIDL_0051,__MIDL_0052)
  339. #define IWiaMiniDrv_drvGetDeviceErrorStr(This,__MIDL_0053,__MIDL_0054,__MIDL_0055,__MIDL_0056) \
  340. (This)->lpVtbl -> drvGetDeviceErrorStr(This,__MIDL_0053,__MIDL_0054,__MIDL_0055,__MIDL_0056)
  341. #define IWiaMiniDrv_drvDeviceCommand(This,__MIDL_0057,__MIDL_0058,__MIDL_0059,__MIDL_0060,__MIDL_0061) \
  342. (This)->lpVtbl -> drvDeviceCommand(This,__MIDL_0057,__MIDL_0058,__MIDL_0059,__MIDL_0060,__MIDL_0061)
  343. #define IWiaMiniDrv_drvGetCapabilities(This,__MIDL_0062,__MIDL_0063,__MIDL_0064,__MIDL_0065,__MIDL_0066) \
  344. (This)->lpVtbl -> drvGetCapabilities(This,__MIDL_0062,__MIDL_0063,__MIDL_0064,__MIDL_0065,__MIDL_0066)
  345. #define IWiaMiniDrv_drvDeleteItem(This,__MIDL_0067,__MIDL_0068,__MIDL_0069) \
  346. (This)->lpVtbl -> drvDeleteItem(This,__MIDL_0067,__MIDL_0068,__MIDL_0069)
  347. #define IWiaMiniDrv_drvFreeDrvItemContext(This,__MIDL_0070,__MIDL_0071,__MIDL_0072) \
  348. (This)->lpVtbl -> drvFreeDrvItemContext(This,__MIDL_0070,__MIDL_0071,__MIDL_0072)
  349. #define IWiaMiniDrv_drvGetWiaFormatInfo(This,__MIDL_0073,__MIDL_0074,__MIDL_0075,__MIDL_0076,__MIDL_0077) \
  350. (This)->lpVtbl -> drvGetWiaFormatInfo(This,__MIDL_0073,__MIDL_0074,__MIDL_0075,__MIDL_0076,__MIDL_0077)
  351. #define IWiaMiniDrv_drvNotifyPnpEvent(This,pEventGUID,bstrDeviceID,ulReserved) \
  352. (This)->lpVtbl -> drvNotifyPnpEvent(This,pEventGUID,bstrDeviceID,ulReserved)
  353. #define IWiaMiniDrv_drvUnInitializeWia(This,__MIDL_0078) \
  354. (This)->lpVtbl -> drvUnInitializeWia(This,__MIDL_0078)
  355. #endif /* COBJMACROS */
  356. #endif /* C style interface */
  357. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvInitializeWia_Proxy(
  358. IWiaMiniDrv * This,
  359. /* [in] */ BYTE *__MIDL_0014,
  360. /* [in] */ LONG __MIDL_0015,
  361. /* [in] */ BSTR __MIDL_0016,
  362. /* [in] */ BSTR __MIDL_0017,
  363. /* [in] */ IUnknown *__MIDL_0018,
  364. /* [in] */ IUnknown *__MIDL_0019,
  365. /* [out] */ IWiaDrvItem **__MIDL_0020,
  366. /* [out] */ IUnknown **__MIDL_0021,
  367. /* [out] */ LONG *__MIDL_0022);
  368. void __RPC_STUB IWiaMiniDrv_drvInitializeWia_Stub(
  369. IRpcStubBuffer *This,
  370. IRpcChannelBuffer *_pRpcChannelBuffer,
  371. PRPC_MESSAGE _pRpcMessage,
  372. DWORD *_pdwStubPhase);
  373. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvAcquireItemData_Proxy(
  374. IWiaMiniDrv * This,
  375. /* [in] */ BYTE *__MIDL_0023,
  376. /* [in] */ LONG __MIDL_0024,
  377. /* [out][in] */ PMINIDRV_TRANSFER_CONTEXT __MIDL_0025,
  378. /* [out] */ LONG *__MIDL_0026);
  379. void __RPC_STUB IWiaMiniDrv_drvAcquireItemData_Stub(
  380. IRpcStubBuffer *This,
  381. IRpcChannelBuffer *_pRpcChannelBuffer,
  382. PRPC_MESSAGE _pRpcMessage,
  383. DWORD *_pdwStubPhase);
  384. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvInitItemProperties_Proxy(
  385. IWiaMiniDrv * This,
  386. /* [in] */ BYTE *__MIDL_0027,
  387. /* [in] */ LONG __MIDL_0028,
  388. /* [out] */ LONG *__MIDL_0029);
  389. void __RPC_STUB IWiaMiniDrv_drvInitItemProperties_Stub(
  390. IRpcStubBuffer *This,
  391. IRpcChannelBuffer *_pRpcChannelBuffer,
  392. PRPC_MESSAGE _pRpcMessage,
  393. DWORD *_pdwStubPhase);
  394. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvValidateItemProperties_Proxy(
  395. IWiaMiniDrv * This,
  396. /* [in] */ BYTE *__MIDL_0030,
  397. /* [in] */ LONG __MIDL_0031,
  398. /* [in] */ ULONG __MIDL_0032,
  399. /* [in] */ const PROPSPEC *__MIDL_0033,
  400. /* [out] */ LONG *__MIDL_0034);
  401. void __RPC_STUB IWiaMiniDrv_drvValidateItemProperties_Stub(
  402. IRpcStubBuffer *This,
  403. IRpcChannelBuffer *_pRpcChannelBuffer,
  404. PRPC_MESSAGE _pRpcMessage,
  405. DWORD *_pdwStubPhase);
  406. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvWriteItemProperties_Proxy(
  407. IWiaMiniDrv * This,
  408. /* [in] */ BYTE *__MIDL_0035,
  409. /* [in] */ LONG __MIDL_0036,
  410. /* [in] */ PMINIDRV_TRANSFER_CONTEXT __MIDL_0037,
  411. /* [out] */ LONG *__MIDL_0038);
  412. void __RPC_STUB IWiaMiniDrv_drvWriteItemProperties_Stub(
  413. IRpcStubBuffer *This,
  414. IRpcChannelBuffer *_pRpcChannelBuffer,
  415. PRPC_MESSAGE _pRpcMessage,
  416. DWORD *_pdwStubPhase);
  417. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvReadItemProperties_Proxy(
  418. IWiaMiniDrv * This,
  419. /* [in] */ BYTE *__MIDL_0039,
  420. /* [in] */ LONG __MIDL_0040,
  421. /* [in] */ ULONG __MIDL_0041,
  422. /* [in] */ const PROPSPEC *__MIDL_0042,
  423. /* [out] */ LONG *__MIDL_0043);
  424. void __RPC_STUB IWiaMiniDrv_drvReadItemProperties_Stub(
  425. IRpcStubBuffer *This,
  426. IRpcChannelBuffer *_pRpcChannelBuffer,
  427. PRPC_MESSAGE _pRpcMessage,
  428. DWORD *_pdwStubPhase);
  429. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvLockWiaDevice_Proxy(
  430. IWiaMiniDrv * This,
  431. /* [in] */ BYTE *__MIDL_0044,
  432. /* [in] */ LONG __MIDL_0045,
  433. /* [out] */ LONG *__MIDL_0046);
  434. void __RPC_STUB IWiaMiniDrv_drvLockWiaDevice_Stub(
  435. IRpcStubBuffer *This,
  436. IRpcChannelBuffer *_pRpcChannelBuffer,
  437. PRPC_MESSAGE _pRpcMessage,
  438. DWORD *_pdwStubPhase);
  439. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvUnLockWiaDevice_Proxy(
  440. IWiaMiniDrv * This,
  441. /* [in] */ BYTE *__MIDL_0047,
  442. /* [in] */ LONG __MIDL_0048,
  443. /* [out] */ LONG *__MIDL_0049);
  444. void __RPC_STUB IWiaMiniDrv_drvUnLockWiaDevice_Stub(
  445. IRpcStubBuffer *This,
  446. IRpcChannelBuffer *_pRpcChannelBuffer,
  447. PRPC_MESSAGE _pRpcMessage,
  448. DWORD *_pdwStubPhase);
  449. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvAnalyzeItem_Proxy(
  450. IWiaMiniDrv * This,
  451. /* [in] */ BYTE *__MIDL_0050,
  452. /* [in] */ LONG __MIDL_0051,
  453. /* [in] */ LONG *__MIDL_0052);
  454. void __RPC_STUB IWiaMiniDrv_drvAnalyzeItem_Stub(
  455. IRpcStubBuffer *This,
  456. IRpcChannelBuffer *_pRpcChannelBuffer,
  457. PRPC_MESSAGE _pRpcMessage,
  458. DWORD *_pdwStubPhase);
  459. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvGetDeviceErrorStr_Proxy(
  460. IWiaMiniDrv * This,
  461. /* [in] */ LONG __MIDL_0053,
  462. /* [in] */ LONG __MIDL_0054,
  463. /* [out] */ LPOLESTR *__MIDL_0055,
  464. /* [out] */ LONG *__MIDL_0056);
  465. void __RPC_STUB IWiaMiniDrv_drvGetDeviceErrorStr_Stub(
  466. IRpcStubBuffer *This,
  467. IRpcChannelBuffer *_pRpcChannelBuffer,
  468. PRPC_MESSAGE _pRpcMessage,
  469. DWORD *_pdwStubPhase);
  470. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvDeviceCommand_Proxy(
  471. IWiaMiniDrv * This,
  472. /* [in] */ BYTE *__MIDL_0057,
  473. /* [in] */ LONG __MIDL_0058,
  474. /* [in] */ const GUID *__MIDL_0059,
  475. /* [out] */ IWiaDrvItem **__MIDL_0060,
  476. /* [out] */ LONG *__MIDL_0061);
  477. void __RPC_STUB IWiaMiniDrv_drvDeviceCommand_Stub(
  478. IRpcStubBuffer *This,
  479. IRpcChannelBuffer *_pRpcChannelBuffer,
  480. PRPC_MESSAGE _pRpcMessage,
  481. DWORD *_pdwStubPhase);
  482. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvGetCapabilities_Proxy(
  483. IWiaMiniDrv * This,
  484. /* [in] */ BYTE *__MIDL_0062,
  485. /* [in] */ LONG __MIDL_0063,
  486. /* [out] */ LONG *__MIDL_0064,
  487. /* [out] */ WIA_DEV_CAP_DRV **__MIDL_0065,
  488. /* [out] */ LONG *__MIDL_0066);
  489. void __RPC_STUB IWiaMiniDrv_drvGetCapabilities_Stub(
  490. IRpcStubBuffer *This,
  491. IRpcChannelBuffer *_pRpcChannelBuffer,
  492. PRPC_MESSAGE _pRpcMessage,
  493. DWORD *_pdwStubPhase);
  494. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvDeleteItem_Proxy(
  495. IWiaMiniDrv * This,
  496. /* [in] */ BYTE *__MIDL_0067,
  497. /* [in] */ LONG __MIDL_0068,
  498. /* [out] */ LONG *__MIDL_0069);
  499. void __RPC_STUB IWiaMiniDrv_drvDeleteItem_Stub(
  500. IRpcStubBuffer *This,
  501. IRpcChannelBuffer *_pRpcChannelBuffer,
  502. PRPC_MESSAGE _pRpcMessage,
  503. DWORD *_pdwStubPhase);
  504. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvFreeDrvItemContext_Proxy(
  505. IWiaMiniDrv * This,
  506. /* [in] */ LONG __MIDL_0070,
  507. /* [in] */ BYTE *__MIDL_0071,
  508. /* [out] */ LONG *__MIDL_0072);
  509. void __RPC_STUB IWiaMiniDrv_drvFreeDrvItemContext_Stub(
  510. IRpcStubBuffer *This,
  511. IRpcChannelBuffer *_pRpcChannelBuffer,
  512. PRPC_MESSAGE _pRpcMessage,
  513. DWORD *_pdwStubPhase);
  514. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvGetWiaFormatInfo_Proxy(
  515. IWiaMiniDrv * This,
  516. /* [in] */ BYTE *__MIDL_0073,
  517. /* [in] */ LONG __MIDL_0074,
  518. /* [out] */ LONG *__MIDL_0075,
  519. /* [out] */ WIA_FORMAT_INFO **__MIDL_0076,
  520. /* [out] */ LONG *__MIDL_0077);
  521. void __RPC_STUB IWiaMiniDrv_drvGetWiaFormatInfo_Stub(
  522. IRpcStubBuffer *This,
  523. IRpcChannelBuffer *_pRpcChannelBuffer,
  524. PRPC_MESSAGE _pRpcMessage,
  525. DWORD *_pdwStubPhase);
  526. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvNotifyPnpEvent_Proxy(
  527. IWiaMiniDrv * This,
  528. /* [in] */ const GUID *pEventGUID,
  529. /* [in] */ BSTR bstrDeviceID,
  530. /* [in] */ ULONG ulReserved);
  531. void __RPC_STUB IWiaMiniDrv_drvNotifyPnpEvent_Stub(
  532. IRpcStubBuffer *This,
  533. IRpcChannelBuffer *_pRpcChannelBuffer,
  534. PRPC_MESSAGE _pRpcMessage,
  535. DWORD *_pdwStubPhase);
  536. /* [helpstring] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrv_drvUnInitializeWia_Proxy(
  537. IWiaMiniDrv * This,
  538. /* [in] */ BYTE *__MIDL_0078);
  539. void __RPC_STUB IWiaMiniDrv_drvUnInitializeWia_Stub(
  540. IRpcStubBuffer *This,
  541. IRpcChannelBuffer *_pRpcChannelBuffer,
  542. PRPC_MESSAGE _pRpcMessage,
  543. DWORD *_pdwStubPhase);
  544. #endif /* __IWiaMiniDrv_INTERFACE_DEFINED__ */
  545. #ifndef __IWiaMiniDrvCallBack_INTERFACE_DEFINED__
  546. #define __IWiaMiniDrvCallBack_INTERFACE_DEFINED__
  547. /* interface IWiaMiniDrvCallBack */
  548. /* [unique][helpstring][uuid][object] */
  549. EXTERN_C const IID IID_IWiaMiniDrvCallBack;
  550. #if defined(__cplusplus) && !defined(CINTERFACE)
  551. MIDL_INTERFACE("33a57d5a-3de8-11d2-9a36-00c04fa36145")
  552. IWiaMiniDrvCallBack : public IUnknown
  553. {
  554. public:
  555. virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE MiniDrvCallback(
  556. /* [in] */ LONG lReason,
  557. /* [in] */ LONG lStatus,
  558. /* [in] */ LONG lPercentComplete,
  559. /* [in] */ LONG lOffset,
  560. /* [in] */ LONG lLength,
  561. /* [in] */ PMINIDRV_TRANSFER_CONTEXT pTranCtx,
  562. /* [in] */ LONG lReserved) = 0;
  563. };
  564. #else /* C style interface */
  565. typedef struct IWiaMiniDrvCallBackVtbl
  566. {
  567. BEGIN_INTERFACE
  568. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  569. IWiaMiniDrvCallBack * This,
  570. /* [in] */ REFIID riid,
  571. /* [iid_is][out] */ void **ppvObject);
  572. ULONG ( STDMETHODCALLTYPE *AddRef )(
  573. IWiaMiniDrvCallBack * This);
  574. ULONG ( STDMETHODCALLTYPE *Release )(
  575. IWiaMiniDrvCallBack * This);
  576. /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *MiniDrvCallback )(
  577. IWiaMiniDrvCallBack * This,
  578. /* [in] */ LONG lReason,
  579. /* [in] */ LONG lStatus,
  580. /* [in] */ LONG lPercentComplete,
  581. /* [in] */ LONG lOffset,
  582. /* [in] */ LONG lLength,
  583. /* [in] */ PMINIDRV_TRANSFER_CONTEXT pTranCtx,
  584. /* [in] */ LONG lReserved);
  585. END_INTERFACE
  586. } IWiaMiniDrvCallBackVtbl;
  587. interface IWiaMiniDrvCallBack
  588. {
  589. CONST_VTBL struct IWiaMiniDrvCallBackVtbl *lpVtbl;
  590. };
  591. #ifdef COBJMACROS
  592. #define IWiaMiniDrvCallBack_QueryInterface(This,riid,ppvObject) \
  593. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  594. #define IWiaMiniDrvCallBack_AddRef(This) \
  595. (This)->lpVtbl -> AddRef(This)
  596. #define IWiaMiniDrvCallBack_Release(This) \
  597. (This)->lpVtbl -> Release(This)
  598. #define IWiaMiniDrvCallBack_MiniDrvCallback(This,lReason,lStatus,lPercentComplete,lOffset,lLength,pTranCtx,lReserved) \
  599. (This)->lpVtbl -> MiniDrvCallback(This,lReason,lStatus,lPercentComplete,lOffset,lLength,pTranCtx,lReserved)
  600. #endif /* COBJMACROS */
  601. #endif /* C style interface */
  602. /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IWiaMiniDrvCallBack_MiniDrvCallback_Proxy(
  603. IWiaMiniDrvCallBack * This,
  604. /* [in] */ LONG lReason,
  605. /* [in] */ LONG lStatus,
  606. /* [in] */ LONG lPercentComplete,
  607. /* [in] */ LONG lOffset,
  608. /* [in] */ LONG lLength,
  609. /* [in] */ PMINIDRV_TRANSFER_CONTEXT pTranCtx,
  610. /* [in] */ LONG lReserved);
  611. void __RPC_STUB IWiaMiniDrvCallBack_MiniDrvCallback_Stub(
  612. IRpcStubBuffer *This,
  613. IRpcChannelBuffer *_pRpcChannelBuffer,
  614. PRPC_MESSAGE _pRpcMessage,
  615. DWORD *_pdwStubPhase);
  616. #endif /* __IWiaMiniDrvCallBack_INTERFACE_DEFINED__ */
  617. #ifndef __IWiaDrvItem_INTERFACE_DEFINED__
  618. #define __IWiaDrvItem_INTERFACE_DEFINED__
  619. /* interface IWiaDrvItem */
  620. /* [unique][helpstring][uuid][object] */
  621. EXTERN_C const IID IID_IWiaDrvItem;
  622. #if defined(__cplusplus) && !defined(CINTERFACE)
  623. MIDL_INTERFACE("1f02b5c5-b00c-11d2-a094-00c04f72dc3c")
  624. IWiaDrvItem : public IUnknown
  625. {
  626. public:
  627. virtual HRESULT STDMETHODCALLTYPE GetItemFlags(
  628. /* [out] */ LONG *__MIDL_0079) = 0;
  629. virtual HRESULT STDMETHODCALLTYPE GetDeviceSpecContext(
  630. /* [out] */ BYTE **__MIDL_0080) = 0;
  631. virtual HRESULT STDMETHODCALLTYPE GetFullItemName(
  632. /* [out] */ BSTR *__MIDL_0081) = 0;
  633. virtual HRESULT STDMETHODCALLTYPE GetItemName(
  634. /* [out] */ BSTR *__MIDL_0082) = 0;
  635. virtual HRESULT STDMETHODCALLTYPE AddItemToFolder(
  636. /* [in] */ IWiaDrvItem *__MIDL_0083) = 0;
  637. virtual HRESULT STDMETHODCALLTYPE UnlinkItemTree(
  638. /* [in] */ LONG __MIDL_0084) = 0;
  639. virtual HRESULT STDMETHODCALLTYPE RemoveItemFromFolder(
  640. /* [in] */ LONG __MIDL_0085) = 0;
  641. virtual HRESULT STDMETHODCALLTYPE FindItemByName(
  642. /* [in] */ LONG __MIDL_0086,
  643. /* [in] */ BSTR __MIDL_0087,
  644. /* [out] */ IWiaDrvItem **__MIDL_0088) = 0;
  645. virtual HRESULT STDMETHODCALLTYPE FindChildItemByName(
  646. /* [in] */ BSTR __MIDL_0089,
  647. /* [out] */ IWiaDrvItem **__MIDL_0090) = 0;
  648. virtual HRESULT STDMETHODCALLTYPE GetParentItem(
  649. /* [out] */ IWiaDrvItem **__MIDL_0091) = 0;
  650. virtual HRESULT STDMETHODCALLTYPE GetFirstChildItem(
  651. /* [out] */ IWiaDrvItem **__MIDL_0092) = 0;
  652. virtual HRESULT STDMETHODCALLTYPE GetNextSiblingItem(
  653. /* [out] */ IWiaDrvItem **__MIDL_0093) = 0;
  654. virtual HRESULT STDMETHODCALLTYPE DumpItemData(
  655. /* [out] */ BSTR *__MIDL_0094) = 0;
  656. };
  657. #else /* C style interface */
  658. typedef struct IWiaDrvItemVtbl
  659. {
  660. BEGIN_INTERFACE
  661. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  662. IWiaDrvItem * This,
  663. /* [in] */ REFIID riid,
  664. /* [iid_is][out] */ void **ppvObject);
  665. ULONG ( STDMETHODCALLTYPE *AddRef )(
  666. IWiaDrvItem * This);
  667. ULONG ( STDMETHODCALLTYPE *Release )(
  668. IWiaDrvItem * This);
  669. HRESULT ( STDMETHODCALLTYPE *GetItemFlags )(
  670. IWiaDrvItem * This,
  671. /* [out] */ LONG *__MIDL_0079);
  672. HRESULT ( STDMETHODCALLTYPE *GetDeviceSpecContext )(
  673. IWiaDrvItem * This,
  674. /* [out] */ BYTE **__MIDL_0080);
  675. HRESULT ( STDMETHODCALLTYPE *GetFullItemName )(
  676. IWiaDrvItem * This,
  677. /* [out] */ BSTR *__MIDL_0081);
  678. HRESULT ( STDMETHODCALLTYPE *GetItemName )(
  679. IWiaDrvItem * This,
  680. /* [out] */ BSTR *__MIDL_0082);
  681. HRESULT ( STDMETHODCALLTYPE *AddItemToFolder )(
  682. IWiaDrvItem * This,
  683. /* [in] */ IWiaDrvItem *__MIDL_0083);
  684. HRESULT ( STDMETHODCALLTYPE *UnlinkItemTree )(
  685. IWiaDrvItem * This,
  686. /* [in] */ LONG __MIDL_0084);
  687. HRESULT ( STDMETHODCALLTYPE *RemoveItemFromFolder )(
  688. IWiaDrvItem * This,
  689. /* [in] */ LONG __MIDL_0085);
  690. HRESULT ( STDMETHODCALLTYPE *FindItemByName )(
  691. IWiaDrvItem * This,
  692. /* [in] */ LONG __MIDL_0086,
  693. /* [in] */ BSTR __MIDL_0087,
  694. /* [out] */ IWiaDrvItem **__MIDL_0088);
  695. HRESULT ( STDMETHODCALLTYPE *FindChildItemByName )(
  696. IWiaDrvItem * This,
  697. /* [in] */ BSTR __MIDL_0089,
  698. /* [out] */ IWiaDrvItem **__MIDL_0090);
  699. HRESULT ( STDMETHODCALLTYPE *GetParentItem )(
  700. IWiaDrvItem * This,
  701. /* [out] */ IWiaDrvItem **__MIDL_0091);
  702. HRESULT ( STDMETHODCALLTYPE *GetFirstChildItem )(
  703. IWiaDrvItem * This,
  704. /* [out] */ IWiaDrvItem **__MIDL_0092);
  705. HRESULT ( STDMETHODCALLTYPE *GetNextSiblingItem )(
  706. IWiaDrvItem * This,
  707. /* [out] */ IWiaDrvItem **__MIDL_0093);
  708. HRESULT ( STDMETHODCALLTYPE *DumpItemData )(
  709. IWiaDrvItem * This,
  710. /* [out] */ BSTR *__MIDL_0094);
  711. END_INTERFACE
  712. } IWiaDrvItemVtbl;
  713. interface IWiaDrvItem
  714. {
  715. CONST_VTBL struct IWiaDrvItemVtbl *lpVtbl;
  716. };
  717. #ifdef COBJMACROS
  718. #define IWiaDrvItem_QueryInterface(This,riid,ppvObject) \
  719. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  720. #define IWiaDrvItem_AddRef(This) \
  721. (This)->lpVtbl -> AddRef(This)
  722. #define IWiaDrvItem_Release(This) \
  723. (This)->lpVtbl -> Release(This)
  724. #define IWiaDrvItem_GetItemFlags(This,__MIDL_0079) \
  725. (This)->lpVtbl -> GetItemFlags(This,__MIDL_0079)
  726. #define IWiaDrvItem_GetDeviceSpecContext(This,__MIDL_0080) \
  727. (This)->lpVtbl -> GetDeviceSpecContext(This,__MIDL_0080)
  728. #define IWiaDrvItem_GetFullItemName(This,__MIDL_0081) \
  729. (This)->lpVtbl -> GetFullItemName(This,__MIDL_0081)
  730. #define IWiaDrvItem_GetItemName(This,__MIDL_0082) \
  731. (This)->lpVtbl -> GetItemName(This,__MIDL_0082)
  732. #define IWiaDrvItem_AddItemToFolder(This,__MIDL_0083) \
  733. (This)->lpVtbl -> AddItemToFolder(This,__MIDL_0083)
  734. #define IWiaDrvItem_UnlinkItemTree(This,__MIDL_0084) \
  735. (This)->lpVtbl -> UnlinkItemTree(This,__MIDL_0084)
  736. #define IWiaDrvItem_RemoveItemFromFolder(This,__MIDL_0085) \
  737. (This)->lpVtbl -> RemoveItemFromFolder(This,__MIDL_0085)
  738. #define IWiaDrvItem_FindItemByName(This,__MIDL_0086,__MIDL_0087,__MIDL_0088) \
  739. (This)->lpVtbl -> FindItemByName(This,__MIDL_0086,__MIDL_0087,__MIDL_0088)
  740. #define IWiaDrvItem_FindChildItemByName(This,__MIDL_0089,__MIDL_0090) \
  741. (This)->lpVtbl -> FindChildItemByName(This,__MIDL_0089,__MIDL_0090)
  742. #define IWiaDrvItem_GetParentItem(This,__MIDL_0091) \
  743. (This)->lpVtbl -> GetParentItem(This,__MIDL_0091)
  744. #define IWiaDrvItem_GetFirstChildItem(This,__MIDL_0092) \
  745. (This)->lpVtbl -> GetFirstChildItem(This,__MIDL_0092)
  746. #define IWiaDrvItem_GetNextSiblingItem(This,__MIDL_0093) \
  747. (This)->lpVtbl -> GetNextSiblingItem(This,__MIDL_0093)
  748. #define IWiaDrvItem_DumpItemData(This,__MIDL_0094) \
  749. (This)->lpVtbl -> DumpItemData(This,__MIDL_0094)
  750. #endif /* COBJMACROS */
  751. #endif /* C style interface */
  752. HRESULT STDMETHODCALLTYPE IWiaDrvItem_GetItemFlags_Proxy(
  753. IWiaDrvItem * This,
  754. /* [out] */ LONG *__MIDL_0079);
  755. void __RPC_STUB IWiaDrvItem_GetItemFlags_Stub(
  756. IRpcStubBuffer *This,
  757. IRpcChannelBuffer *_pRpcChannelBuffer,
  758. PRPC_MESSAGE _pRpcMessage,
  759. DWORD *_pdwStubPhase);
  760. HRESULT STDMETHODCALLTYPE IWiaDrvItem_GetDeviceSpecContext_Proxy(
  761. IWiaDrvItem * This,
  762. /* [out] */ BYTE **__MIDL_0080);
  763. void __RPC_STUB IWiaDrvItem_GetDeviceSpecContext_Stub(
  764. IRpcStubBuffer *This,
  765. IRpcChannelBuffer *_pRpcChannelBuffer,
  766. PRPC_MESSAGE _pRpcMessage,
  767. DWORD *_pdwStubPhase);
  768. HRESULT STDMETHODCALLTYPE IWiaDrvItem_GetFullItemName_Proxy(
  769. IWiaDrvItem * This,
  770. /* [out] */ BSTR *__MIDL_0081);
  771. void __RPC_STUB IWiaDrvItem_GetFullItemName_Stub(
  772. IRpcStubBuffer *This,
  773. IRpcChannelBuffer *_pRpcChannelBuffer,
  774. PRPC_MESSAGE _pRpcMessage,
  775. DWORD *_pdwStubPhase);
  776. HRESULT STDMETHODCALLTYPE IWiaDrvItem_GetItemName_Proxy(
  777. IWiaDrvItem * This,
  778. /* [out] */ BSTR *__MIDL_0082);
  779. void __RPC_STUB IWiaDrvItem_GetItemName_Stub(
  780. IRpcStubBuffer *This,
  781. IRpcChannelBuffer *_pRpcChannelBuffer,
  782. PRPC_MESSAGE _pRpcMessage,
  783. DWORD *_pdwStubPhase);
  784. HRESULT STDMETHODCALLTYPE IWiaDrvItem_AddItemToFolder_Proxy(
  785. IWiaDrvItem * This,
  786. /* [in] */ IWiaDrvItem *__MIDL_0083);
  787. void __RPC_STUB IWiaDrvItem_AddItemToFolder_Stub(
  788. IRpcStubBuffer *This,
  789. IRpcChannelBuffer *_pRpcChannelBuffer,
  790. PRPC_MESSAGE _pRpcMessage,
  791. DWORD *_pdwStubPhase);
  792. HRESULT STDMETHODCALLTYPE IWiaDrvItem_UnlinkItemTree_Proxy(
  793. IWiaDrvItem * This,
  794. /* [in] */ LONG __MIDL_0084);
  795. void __RPC_STUB IWiaDrvItem_UnlinkItemTree_Stub(
  796. IRpcStubBuffer *This,
  797. IRpcChannelBuffer *_pRpcChannelBuffer,
  798. PRPC_MESSAGE _pRpcMessage,
  799. DWORD *_pdwStubPhase);
  800. HRESULT STDMETHODCALLTYPE IWiaDrvItem_RemoveItemFromFolder_Proxy(
  801. IWiaDrvItem * This,
  802. /* [in] */ LONG __MIDL_0085);
  803. void __RPC_STUB IWiaDrvItem_RemoveItemFromFolder_Stub(
  804. IRpcStubBuffer *This,
  805. IRpcChannelBuffer *_pRpcChannelBuffer,
  806. PRPC_MESSAGE _pRpcMessage,
  807. DWORD *_pdwStubPhase);
  808. HRESULT STDMETHODCALLTYPE IWiaDrvItem_FindItemByName_Proxy(
  809. IWiaDrvItem * This,
  810. /* [in] */ LONG __MIDL_0086,
  811. /* [in] */ BSTR __MIDL_0087,
  812. /* [out] */ IWiaDrvItem **__MIDL_0088);
  813. void __RPC_STUB IWiaDrvItem_FindItemByName_Stub(
  814. IRpcStubBuffer *This,
  815. IRpcChannelBuffer *_pRpcChannelBuffer,
  816. PRPC_MESSAGE _pRpcMessage,
  817. DWORD *_pdwStubPhase);
  818. HRESULT STDMETHODCALLTYPE IWiaDrvItem_FindChildItemByName_Proxy(
  819. IWiaDrvItem * This,
  820. /* [in] */ BSTR __MIDL_0089,
  821. /* [out] */ IWiaDrvItem **__MIDL_0090);
  822. void __RPC_STUB IWiaDrvItem_FindChildItemByName_Stub(
  823. IRpcStubBuffer *This,
  824. IRpcChannelBuffer *_pRpcChannelBuffer,
  825. PRPC_MESSAGE _pRpcMessage,
  826. DWORD *_pdwStubPhase);
  827. HRESULT STDMETHODCALLTYPE IWiaDrvItem_GetParentItem_Proxy(
  828. IWiaDrvItem * This,
  829. /* [out] */ IWiaDrvItem **__MIDL_0091);
  830. void __RPC_STUB IWiaDrvItem_GetParentItem_Stub(
  831. IRpcStubBuffer *This,
  832. IRpcChannelBuffer *_pRpcChannelBuffer,
  833. PRPC_MESSAGE _pRpcMessage,
  834. DWORD *_pdwStubPhase);
  835. HRESULT STDMETHODCALLTYPE IWiaDrvItem_GetFirstChildItem_Proxy(
  836. IWiaDrvItem * This,
  837. /* [out] */ IWiaDrvItem **__MIDL_0092);
  838. void __RPC_STUB IWiaDrvItem_GetFirstChildItem_Stub(
  839. IRpcStubBuffer *This,
  840. IRpcChannelBuffer *_pRpcChannelBuffer,
  841. PRPC_MESSAGE _pRpcMessage,
  842. DWORD *_pdwStubPhase);
  843. HRESULT STDMETHODCALLTYPE IWiaDrvItem_GetNextSiblingItem_Proxy(
  844. IWiaDrvItem * This,
  845. /* [out] */ IWiaDrvItem **__MIDL_0093);
  846. void __RPC_STUB IWiaDrvItem_GetNextSiblingItem_Stub(
  847. IRpcStubBuffer *This,
  848. IRpcChannelBuffer *_pRpcChannelBuffer,
  849. PRPC_MESSAGE _pRpcMessage,
  850. DWORD *_pdwStubPhase);
  851. HRESULT STDMETHODCALLTYPE IWiaDrvItem_DumpItemData_Proxy(
  852. IWiaDrvItem * This,
  853. /* [out] */ BSTR *__MIDL_0094);
  854. void __RPC_STUB IWiaDrvItem_DumpItemData_Stub(
  855. IRpcStubBuffer *This,
  856. IRpcChannelBuffer *_pRpcChannelBuffer,
  857. PRPC_MESSAGE _pRpcMessage,
  858. DWORD *_pdwStubPhase);
  859. #endif /* __IWiaDrvItem_INTERFACE_DEFINED__ */
  860. /* interface __MIDL_itf_wiamindr_0144 */
  861. /* [local] */
  862. typedef struct _WIA_PROPERTY_INFO
  863. {
  864. ULONG lAccessFlags;
  865. VARTYPE vt;
  866. union
  867. {
  868. struct
  869. {
  870. LONG Min;
  871. LONG Nom;
  872. LONG Max;
  873. LONG Inc;
  874. } Range;
  875. struct
  876. {
  877. DOUBLE Min;
  878. DOUBLE Nom;
  879. DOUBLE Max;
  880. DOUBLE Inc;
  881. } RangeFloat;
  882. struct
  883. {
  884. LONG cNumList;
  885. LONG Nom;
  886. BYTE *pList;
  887. } List;
  888. struct
  889. {
  890. LONG cNumList;
  891. DOUBLE Nom;
  892. BYTE *pList;
  893. } ListFloat;
  894. struct
  895. {
  896. LONG cNumList;
  897. GUID Nom;
  898. GUID *pList;
  899. } ListGuid;
  900. struct
  901. {
  902. LONG cNumList;
  903. BSTR Nom;
  904. BSTR *pList;
  905. } ListBStr;
  906. struct
  907. {
  908. LONG Nom;
  909. LONG ValidBits;
  910. } Flag;
  911. struct
  912. {
  913. LONG Dummy;
  914. } None;
  915. } ValidVal;
  916. } WIA_PROPERTY_INFO;
  917. typedef struct _WIA_PROPERTY_INFO *PWIA_PROPERTY_INFO;
  918. typedef struct _WIA_PROPERTY_CONTEXT
  919. {
  920. ULONG cProps;
  921. PROPID *pProps;
  922. BOOL *pChanged;
  923. } WIA_PROPERTY_CONTEXT;
  924. typedef struct _WIA_PROPERTY_CONTEXT *PWIA_PROPERTY_CONTEXT;
  925. typedef struct _WIAS_CHANGED_VALUE_INFO
  926. {
  927. BOOL bChanged;
  928. LONG vt;
  929. union
  930. {
  931. LONG lVal;
  932. FLOAT fltVal;
  933. BSTR bstrVal;
  934. GUID guidVal;
  935. } Old;
  936. union
  937. {
  938. LONG lVal;
  939. FLOAT fltVal;
  940. BSTR bstrVal;
  941. GUID guidVal;
  942. } Current;
  943. } WIAS_CHANGED_VALUE_INFO;
  944. typedef struct _WIAS_CHANGED_VALUE_INFO *PWIAS_CHANGED_VALUE_INFO;
  945. typedef struct _WIAS_DOWN_SAMPLE_INFO
  946. {
  947. ULONG ulOriginalWidth;
  948. ULONG ulOriginalHeight;
  949. ULONG ulBitsPerPixel;
  950. ULONG ulXRes;
  951. ULONG ulYRes;
  952. ULONG ulDownSampledWidth;
  953. ULONG ulDownSampledHeight;
  954. ULONG ulActualSize;
  955. ULONG ulDestBufSize;
  956. ULONG ulSrcBufSize;
  957. BYTE *pSrcBuffer;
  958. BYTE *pDestBuffer;
  959. } WIAS_DOWN_SAMPLE_INFO;
  960. typedef struct _WIAS_DOWN_SAMPLE_INFO *PWIAS_DOWN_SAMPLE_INFO;
  961. typedef struct _WIAS_ENDORSER_VALUE
  962. {
  963. LPWSTR wszTokenName;
  964. LPWSTR wszValue;
  965. } WIAS_ENDORSER_VALUE;
  966. typedef struct _WIAS_ENDORSER_VALUE *PWIAS_ENDORSER_VALUE;
  967. typedef struct _WIAS_ENDORSER_INFO
  968. {
  969. ULONG ulPageCount;
  970. ULONG ulNumEndorserValues;
  971. WIAS_ENDORSER_VALUE *pEndorserValues;
  972. } WIAS_ENDORSER_INFO;
  973. typedef struct _WIAS_ENDORSER_INFO *PWIAS_ENDORSER_INFO;
  974. #include "wiamdef.h"
  975. extern RPC_IF_HANDLE __MIDL_itf_wiamindr_0144_v0_0_c_ifspec;
  976. extern RPC_IF_HANDLE __MIDL_itf_wiamindr_0144_v0_0_s_ifspec;
  977. /* Additional Prototypes for ALL interfaces */
  978. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  979. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  980. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  981. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  982. /* end of Additional Prototypes */
  983. #ifdef __cplusplus
  984. }
  985. #endif
  986. #endif