/Include/10.0.16299.0/um/msrdc.h

https://github.com/tpn/winsdk-10 · C Header · 2695 lines · 1682 code · 929 blank · 84 comment · 18 complexity · 360b12d1bf6c3bae17ba48ada5201677 MD5 · raw file

Large files are truncated click here to view the full file

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 8.01.0622 */
  3. /* @@MIDL_FILE_HEADING( ) */
  4. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  5. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  6. #define __REQUIRED_RPCNDR_H_VERSION__ 500
  7. #endif
  8. /* verify that the <rpcsal.h> version is high enough to compile this file*/
  9. #ifndef __REQUIRED_RPCSAL_H_VERSION__
  10. #define __REQUIRED_RPCSAL_H_VERSION__ 100
  11. #endif
  12. #include "rpc.h"
  13. #include "rpcndr.h"
  14. #ifndef __RPCNDR_H_VERSION__
  15. #error this stub requires an updated version of <rpcndr.h>
  16. #endif /* __RPCNDR_H_VERSION__ */
  17. #ifndef COM_NO_WINDOWS_H
  18. #include "windows.h"
  19. #include "ole2.h"
  20. #endif /*COM_NO_WINDOWS_H*/
  21. #ifndef __msrdc_h__
  22. #define __msrdc_h__
  23. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  24. #pragma once
  25. #endif
  26. /* Forward Declarations */
  27. #ifndef __IRdcGeneratorParameters_FWD_DEFINED__
  28. #define __IRdcGeneratorParameters_FWD_DEFINED__
  29. typedef interface IRdcGeneratorParameters IRdcGeneratorParameters;
  30. #endif /* __IRdcGeneratorParameters_FWD_DEFINED__ */
  31. #ifndef __IRdcGeneratorFilterMaxParameters_FWD_DEFINED__
  32. #define __IRdcGeneratorFilterMaxParameters_FWD_DEFINED__
  33. typedef interface IRdcGeneratorFilterMaxParameters IRdcGeneratorFilterMaxParameters;
  34. #endif /* __IRdcGeneratorFilterMaxParameters_FWD_DEFINED__ */
  35. #ifndef __IRdcGenerator_FWD_DEFINED__
  36. #define __IRdcGenerator_FWD_DEFINED__
  37. typedef interface IRdcGenerator IRdcGenerator;
  38. #endif /* __IRdcGenerator_FWD_DEFINED__ */
  39. #ifndef __IRdcFileReader_FWD_DEFINED__
  40. #define __IRdcFileReader_FWD_DEFINED__
  41. typedef interface IRdcFileReader IRdcFileReader;
  42. #endif /* __IRdcFileReader_FWD_DEFINED__ */
  43. #ifndef __IRdcFileWriter_FWD_DEFINED__
  44. #define __IRdcFileWriter_FWD_DEFINED__
  45. typedef interface IRdcFileWriter IRdcFileWriter;
  46. #endif /* __IRdcFileWriter_FWD_DEFINED__ */
  47. #ifndef __IRdcSignatureReader_FWD_DEFINED__
  48. #define __IRdcSignatureReader_FWD_DEFINED__
  49. typedef interface IRdcSignatureReader IRdcSignatureReader;
  50. #endif /* __IRdcSignatureReader_FWD_DEFINED__ */
  51. #ifndef __IRdcComparator_FWD_DEFINED__
  52. #define __IRdcComparator_FWD_DEFINED__
  53. typedef interface IRdcComparator IRdcComparator;
  54. #endif /* __IRdcComparator_FWD_DEFINED__ */
  55. #ifndef __IRdcLibrary_FWD_DEFINED__
  56. #define __IRdcLibrary_FWD_DEFINED__
  57. typedef interface IRdcLibrary IRdcLibrary;
  58. #endif /* __IRdcLibrary_FWD_DEFINED__ */
  59. #ifndef __ISimilarityReportProgress_FWD_DEFINED__
  60. #define __ISimilarityReportProgress_FWD_DEFINED__
  61. typedef interface ISimilarityReportProgress ISimilarityReportProgress;
  62. #endif /* __ISimilarityReportProgress_FWD_DEFINED__ */
  63. #ifndef __ISimilarityTableDumpState_FWD_DEFINED__
  64. #define __ISimilarityTableDumpState_FWD_DEFINED__
  65. typedef interface ISimilarityTableDumpState ISimilarityTableDumpState;
  66. #endif /* __ISimilarityTableDumpState_FWD_DEFINED__ */
  67. #ifndef __ISimilarityTraitsMappedView_FWD_DEFINED__
  68. #define __ISimilarityTraitsMappedView_FWD_DEFINED__
  69. typedef interface ISimilarityTraitsMappedView ISimilarityTraitsMappedView;
  70. #endif /* __ISimilarityTraitsMappedView_FWD_DEFINED__ */
  71. #ifndef __ISimilarityTraitsMapping_FWD_DEFINED__
  72. #define __ISimilarityTraitsMapping_FWD_DEFINED__
  73. typedef interface ISimilarityTraitsMapping ISimilarityTraitsMapping;
  74. #endif /* __ISimilarityTraitsMapping_FWD_DEFINED__ */
  75. #ifndef __ISimilarityTraitsTable_FWD_DEFINED__
  76. #define __ISimilarityTraitsTable_FWD_DEFINED__
  77. typedef interface ISimilarityTraitsTable ISimilarityTraitsTable;
  78. #endif /* __ISimilarityTraitsTable_FWD_DEFINED__ */
  79. #ifndef __ISimilarityFileIdTable_FWD_DEFINED__
  80. #define __ISimilarityFileIdTable_FWD_DEFINED__
  81. typedef interface ISimilarityFileIdTable ISimilarityFileIdTable;
  82. #endif /* __ISimilarityFileIdTable_FWD_DEFINED__ */
  83. #ifndef __IRdcSimilarityGenerator_FWD_DEFINED__
  84. #define __IRdcSimilarityGenerator_FWD_DEFINED__
  85. typedef interface IRdcSimilarityGenerator IRdcSimilarityGenerator;
  86. #endif /* __IRdcSimilarityGenerator_FWD_DEFINED__ */
  87. #ifndef __IFindSimilarResults_FWD_DEFINED__
  88. #define __IFindSimilarResults_FWD_DEFINED__
  89. typedef interface IFindSimilarResults IFindSimilarResults;
  90. #endif /* __IFindSimilarResults_FWD_DEFINED__ */
  91. #ifndef __ISimilarity_FWD_DEFINED__
  92. #define __ISimilarity_FWD_DEFINED__
  93. typedef interface ISimilarity ISimilarity;
  94. #endif /* __ISimilarity_FWD_DEFINED__ */
  95. #ifndef __RdcLibrary_FWD_DEFINED__
  96. #define __RdcLibrary_FWD_DEFINED__
  97. #ifdef __cplusplus
  98. typedef class RdcLibrary RdcLibrary;
  99. #else
  100. typedef struct RdcLibrary RdcLibrary;
  101. #endif /* __cplusplus */
  102. #endif /* __RdcLibrary_FWD_DEFINED__ */
  103. #ifndef __RdcGeneratorParameters_FWD_DEFINED__
  104. #define __RdcGeneratorParameters_FWD_DEFINED__
  105. #ifdef __cplusplus
  106. typedef class RdcGeneratorParameters RdcGeneratorParameters;
  107. #else
  108. typedef struct RdcGeneratorParameters RdcGeneratorParameters;
  109. #endif /* __cplusplus */
  110. #endif /* __RdcGeneratorParameters_FWD_DEFINED__ */
  111. #ifndef __RdcGeneratorFilterMaxParameters_FWD_DEFINED__
  112. #define __RdcGeneratorFilterMaxParameters_FWD_DEFINED__
  113. #ifdef __cplusplus
  114. typedef class RdcGeneratorFilterMaxParameters RdcGeneratorFilterMaxParameters;
  115. #else
  116. typedef struct RdcGeneratorFilterMaxParameters RdcGeneratorFilterMaxParameters;
  117. #endif /* __cplusplus */
  118. #endif /* __RdcGeneratorFilterMaxParameters_FWD_DEFINED__ */
  119. #ifndef __RdcGenerator_FWD_DEFINED__
  120. #define __RdcGenerator_FWD_DEFINED__
  121. #ifdef __cplusplus
  122. typedef class RdcGenerator RdcGenerator;
  123. #else
  124. typedef struct RdcGenerator RdcGenerator;
  125. #endif /* __cplusplus */
  126. #endif /* __RdcGenerator_FWD_DEFINED__ */
  127. #ifndef __RdcFileReader_FWD_DEFINED__
  128. #define __RdcFileReader_FWD_DEFINED__
  129. #ifdef __cplusplus
  130. typedef class RdcFileReader RdcFileReader;
  131. #else
  132. typedef struct RdcFileReader RdcFileReader;
  133. #endif /* __cplusplus */
  134. #endif /* __RdcFileReader_FWD_DEFINED__ */
  135. #ifndef __RdcSignatureReader_FWD_DEFINED__
  136. #define __RdcSignatureReader_FWD_DEFINED__
  137. #ifdef __cplusplus
  138. typedef class RdcSignatureReader RdcSignatureReader;
  139. #else
  140. typedef struct RdcSignatureReader RdcSignatureReader;
  141. #endif /* __cplusplus */
  142. #endif /* __RdcSignatureReader_FWD_DEFINED__ */
  143. #ifndef __RdcComparator_FWD_DEFINED__
  144. #define __RdcComparator_FWD_DEFINED__
  145. #ifdef __cplusplus
  146. typedef class RdcComparator RdcComparator;
  147. #else
  148. typedef struct RdcComparator RdcComparator;
  149. #endif /* __cplusplus */
  150. #endif /* __RdcComparator_FWD_DEFINED__ */
  151. #ifndef __SimilarityReportProgress_FWD_DEFINED__
  152. #define __SimilarityReportProgress_FWD_DEFINED__
  153. #ifdef __cplusplus
  154. typedef class SimilarityReportProgress SimilarityReportProgress;
  155. #else
  156. typedef struct SimilarityReportProgress SimilarityReportProgress;
  157. #endif /* __cplusplus */
  158. #endif /* __SimilarityReportProgress_FWD_DEFINED__ */
  159. #ifndef __SimilarityTableDumpState_FWD_DEFINED__
  160. #define __SimilarityTableDumpState_FWD_DEFINED__
  161. #ifdef __cplusplus
  162. typedef class SimilarityTableDumpState SimilarityTableDumpState;
  163. #else
  164. typedef struct SimilarityTableDumpState SimilarityTableDumpState;
  165. #endif /* __cplusplus */
  166. #endif /* __SimilarityTableDumpState_FWD_DEFINED__ */
  167. #ifndef __SimilarityTraitsTable_FWD_DEFINED__
  168. #define __SimilarityTraitsTable_FWD_DEFINED__
  169. #ifdef __cplusplus
  170. typedef class SimilarityTraitsTable SimilarityTraitsTable;
  171. #else
  172. typedef struct SimilarityTraitsTable SimilarityTraitsTable;
  173. #endif /* __cplusplus */
  174. #endif /* __SimilarityTraitsTable_FWD_DEFINED__ */
  175. #ifndef __SimilarityFileIdTable_FWD_DEFINED__
  176. #define __SimilarityFileIdTable_FWD_DEFINED__
  177. #ifdef __cplusplus
  178. typedef class SimilarityFileIdTable SimilarityFileIdTable;
  179. #else
  180. typedef struct SimilarityFileIdTable SimilarityFileIdTable;
  181. #endif /* __cplusplus */
  182. #endif /* __SimilarityFileIdTable_FWD_DEFINED__ */
  183. #ifndef __Similarity_FWD_DEFINED__
  184. #define __Similarity_FWD_DEFINED__
  185. #ifdef __cplusplus
  186. typedef class Similarity Similarity;
  187. #else
  188. typedef struct Similarity Similarity;
  189. #endif /* __cplusplus */
  190. #endif /* __Similarity_FWD_DEFINED__ */
  191. #ifndef __RdcSimilarityGenerator_FWD_DEFINED__
  192. #define __RdcSimilarityGenerator_FWD_DEFINED__
  193. #ifdef __cplusplus
  194. typedef class RdcSimilarityGenerator RdcSimilarityGenerator;
  195. #else
  196. typedef struct RdcSimilarityGenerator RdcSimilarityGenerator;
  197. #endif /* __cplusplus */
  198. #endif /* __RdcSimilarityGenerator_FWD_DEFINED__ */
  199. #ifndef __FindSimilarResults_FWD_DEFINED__
  200. #define __FindSimilarResults_FWD_DEFINED__
  201. #ifdef __cplusplus
  202. typedef class FindSimilarResults FindSimilarResults;
  203. #else
  204. typedef struct FindSimilarResults FindSimilarResults;
  205. #endif /* __cplusplus */
  206. #endif /* __FindSimilarResults_FWD_DEFINED__ */
  207. #ifndef __SimilarityTraitsMapping_FWD_DEFINED__
  208. #define __SimilarityTraitsMapping_FWD_DEFINED__
  209. #ifdef __cplusplus
  210. typedef class SimilarityTraitsMapping SimilarityTraitsMapping;
  211. #else
  212. typedef struct SimilarityTraitsMapping SimilarityTraitsMapping;
  213. #endif /* __cplusplus */
  214. #endif /* __SimilarityTraitsMapping_FWD_DEFINED__ */
  215. #ifndef __SimilarityTraitsMappedView_FWD_DEFINED__
  216. #define __SimilarityTraitsMappedView_FWD_DEFINED__
  217. #ifdef __cplusplus
  218. typedef class SimilarityTraitsMappedView SimilarityTraitsMappedView;
  219. #else
  220. typedef struct SimilarityTraitsMappedView SimilarityTraitsMappedView;
  221. #endif /* __cplusplus */
  222. #endif /* __SimilarityTraitsMappedView_FWD_DEFINED__ */
  223. /* header files for imported files */
  224. #include "oaidl.h"
  225. #include "ocidl.h"
  226. #ifdef __cplusplus
  227. extern "C"{
  228. #endif
  229. /* interface __MIDL_itf_msrdc_0000_0000 */
  230. /* [local] */
  231. #include <winapifamily.h>
  232. #pragma region Desktop Family
  233. #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
  234. #define RDCE_TABLE_FULL ( 0x80040001 )
  235. #define RDCE_TABLE_CORRUPT ( 0x80040002 )
  236. #pragma warning( disable: 4100 )
  237. #pragma warning( disable: 4152 )
  238. const ULONG MSRDC_VERSION = 0x010000;
  239. const ULONG MSRDC_MINIMUM_COMPATIBLE_APP_VERSION = 0x010000;
  240. const ULONG MSRDC_MINIMUM_DEPTH = 1;
  241. const ULONG MSRDC_MAXIMUM_DEPTH = 8;
  242. const ULONG MSRDC_MINIMUM_COMPAREBUFFER = 100000;
  243. const ULONG MSRDC_MAXIMUM_COMPAREBUFFER = (1<<30);
  244. const ULONG MSRDC_DEFAULT_COMPAREBUFFER = 3200000;
  245. const ULONG MSRDC_MINIMUM_INPUTBUFFERSIZE = 1024;
  246. #define MSRDC_SIGNATURE_HASHSIZE ( 16 )
  247. const ULONG MSRDC_MINIMUM_HORIZONSIZE = 128;
  248. const ULONG MSRDC_MAXIMUM_HORIZONSIZE = 1024 * 16;
  249. const ULONG MSRDC_MINIMUM_HASHWINDOWSIZE = 2;
  250. const ULONG MSRDC_MAXIMUM_HASHWINDOWSIZE = 96;
  251. const ULONG MSRDC_DEFAULT_HASHWINDOWSIZE_1 = 48;
  252. const ULONG MSRDC_DEFAULT_HORIZONSIZE_1 = 1024;
  253. const ULONG MSRDC_DEFAULT_HASHWINDOWSIZE_N = 2;
  254. const ULONG MSRDC_DEFAULT_HORIZONSIZE_N = 128;
  255. const ULONG MSRDC_MAXIMUM_TRAITVALUE = 63;
  256. const ULONG MSRDC_MINIMUM_MATCHESREQUIRED = 1;
  257. const ULONG MSRDC_MAXIMUM_MATCHESREQUIRED = 16;
  258. typedef /* [public][public][public][public] */
  259. enum __MIDL___MIDL_itf_msrdc_0000_0000_0001
  260. {
  261. RDC_NoError = 0,
  262. RDC_HeaderVersionNewer = ( RDC_NoError + 1 ) ,
  263. RDC_HeaderVersionOlder = ( RDC_HeaderVersionNewer + 1 ) ,
  264. RDC_HeaderMissingOrCorrupt = ( RDC_HeaderVersionOlder + 1 ) ,
  265. RDC_HeaderWrongType = ( RDC_HeaderMissingOrCorrupt + 1 ) ,
  266. RDC_DataMissingOrCorrupt = ( RDC_HeaderWrongType + 1 ) ,
  267. RDC_DataTooManyRecords = ( RDC_DataMissingOrCorrupt + 1 ) ,
  268. RDC_FileChecksumMismatch = ( RDC_DataTooManyRecords + 1 ) ,
  269. RDC_ApplicationError = ( RDC_FileChecksumMismatch + 1 ) ,
  270. RDC_Aborted = ( RDC_ApplicationError + 1 ) ,
  271. RDC_Win32Error = ( RDC_Aborted + 1 )
  272. } RDC_ErrorCode;
  273. typedef /* [public][public][public] */
  274. enum __MIDL___MIDL_itf_msrdc_0000_0000_0002
  275. {
  276. RDCGENTYPE_Unused = 0,
  277. RDCGENTYPE_FilterMax = ( RDCGENTYPE_Unused + 1 )
  278. } GeneratorParametersType;
  279. typedef /* [public][public][public][public] */
  280. enum __MIDL___MIDL_itf_msrdc_0000_0000_0003
  281. {
  282. RDCNEED_SOURCE = 0,
  283. RDCNEED_TARGET = 1,
  284. RDCNEED_SEED = 2,
  285. RDCNEED_SEED_MAX = 255
  286. } RdcNeedType;
  287. typedef /* [public][public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0004
  288. {
  289. RdcNeedType m_BlockType;
  290. unsigned __int64 m_FileOffset;
  291. unsigned __int64 m_BlockLength;
  292. } RdcNeed;
  293. typedef /* [public][public][public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0005
  294. {
  295. ULONG m_Size;
  296. ULONG m_Used;
  297. BYTE *m_Data;
  298. } RdcBufferPointer;
  299. typedef /* [public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0006
  300. {
  301. ULONG m_Size;
  302. ULONG m_Used;
  303. RdcNeed *m_Data;
  304. } RdcNeedPointer;
  305. typedef /* [public][public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0007
  306. {
  307. BYTE m_Signature[ 16 ];
  308. USHORT m_BlockLength;
  309. } RdcSignature;
  310. typedef /* [public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0008
  311. {
  312. ULONG m_Size;
  313. ULONG m_Used;
  314. RdcSignature *m_Data;
  315. } RdcSignaturePointer;
  316. typedef unsigned int SimilarityFileIndexT;
  317. typedef /* [public][public][public][public][public][public][public] */
  318. enum __MIDL___MIDL_itf_msrdc_0000_0000_0009
  319. {
  320. RDCTABLE_InvalidOrUnknown = 0,
  321. RDCTABLE_Existing = ( RDCTABLE_InvalidOrUnknown + 1 ) ,
  322. RDCTABLE_New = ( RDCTABLE_Existing + 1 )
  323. } RdcCreatedTables;
  324. typedef /* [public][public][public][public] */
  325. enum __MIDL___MIDL_itf_msrdc_0000_0000_0010
  326. {
  327. RDCMAPPING_Undefined = 0,
  328. RDCMAPPING_ReadOnly = ( RDCMAPPING_Undefined + 1 ) ,
  329. RDCMAPPING_ReadWrite = ( RDCMAPPING_ReadOnly + 1 )
  330. } RdcMappingAccessMode;
  331. typedef /* [public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0011
  332. {
  333. unsigned char *m_Data;
  334. DWORD m_Length;
  335. } SimilarityMappedViewInfo;
  336. typedef /* [public][public][public][public][public][public][public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0012
  337. {
  338. unsigned char m_Data[ 16 ];
  339. } SimilarityData;
  340. typedef /* [public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0013
  341. {
  342. SimilarityFileIndexT m_FileIndex;
  343. unsigned int m_MatchCount;
  344. } FindSimilarFileIndexResults;
  345. typedef /* [public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0014
  346. {
  347. SimilarityFileIndexT m_FileIndex;
  348. SimilarityData m_Data;
  349. } SimilarityDumpData;
  350. #define SimilarityFileIdMinSize ( 4 )
  351. #define SimilarityFileIdMaxSize ( 32 )
  352. typedef /* [public][public][public][public][public] */ struct __MIDL___MIDL_itf_msrdc_0000_0000_0015
  353. {
  354. byte m_FileId[ 32 ];
  355. } SimilarityFileId;
  356. extern RPC_IF_HANDLE __MIDL_itf_msrdc_0000_0000_v0_0_c_ifspec;
  357. extern RPC_IF_HANDLE __MIDL_itf_msrdc_0000_0000_v0_0_s_ifspec;
  358. #ifndef __IRdcGeneratorParameters_INTERFACE_DEFINED__
  359. #define __IRdcGeneratorParameters_INTERFACE_DEFINED__
  360. /* interface IRdcGeneratorParameters */
  361. /* [unique][helpstring][uuid][object] */
  362. EXTERN_C const IID IID_IRdcGeneratorParameters;
  363. #if defined(__cplusplus) && !defined(CINTERFACE)
  364. MIDL_INTERFACE("96236A71-9DBC-11DA-9E3F-0011114AE311")
  365. IRdcGeneratorParameters : public IUnknown
  366. {
  367. public:
  368. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetGeneratorParametersType(
  369. /* [out] */ __RPC__out GeneratorParametersType *parametersType) = 0;
  370. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetParametersVersion(
  371. /* [out] */ __RPC__out ULONG *currentVersion,
  372. /* [out] */ __RPC__out ULONG *minimumCompatibleAppVersion) = 0;
  373. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetSerializeSize(
  374. /* [out] */ __RPC__out ULONG *size) = 0;
  375. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Serialize(
  376. /* [in] */ ULONG size,
  377. /* [out] */ __RPC__out BYTE *parametersBlob,
  378. /* [out] */ __RPC__out ULONG *bytesWritten) = 0;
  379. };
  380. #else /* C style interface */
  381. typedef struct IRdcGeneratorParametersVtbl
  382. {
  383. BEGIN_INTERFACE
  384. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  385. __RPC__in IRdcGeneratorParameters * This,
  386. /* [in] */ __RPC__in REFIID riid,
  387. /* [annotation][iid_is][out] */
  388. _COM_Outptr_ void **ppvObject);
  389. ULONG ( STDMETHODCALLTYPE *AddRef )(
  390. __RPC__in IRdcGeneratorParameters * This);
  391. ULONG ( STDMETHODCALLTYPE *Release )(
  392. __RPC__in IRdcGeneratorParameters * This);
  393. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetGeneratorParametersType )(
  394. __RPC__in IRdcGeneratorParameters * This,
  395. /* [out] */ __RPC__out GeneratorParametersType *parametersType);
  396. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetParametersVersion )(
  397. __RPC__in IRdcGeneratorParameters * This,
  398. /* [out] */ __RPC__out ULONG *currentVersion,
  399. /* [out] */ __RPC__out ULONG *minimumCompatibleAppVersion);
  400. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetSerializeSize )(
  401. __RPC__in IRdcGeneratorParameters * This,
  402. /* [out] */ __RPC__out ULONG *size);
  403. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Serialize )(
  404. __RPC__in IRdcGeneratorParameters * This,
  405. /* [in] */ ULONG size,
  406. /* [out] */ __RPC__out BYTE *parametersBlob,
  407. /* [out] */ __RPC__out ULONG *bytesWritten);
  408. END_INTERFACE
  409. } IRdcGeneratorParametersVtbl;
  410. interface IRdcGeneratorParameters
  411. {
  412. CONST_VTBL struct IRdcGeneratorParametersVtbl *lpVtbl;
  413. };
  414. #ifdef COBJMACROS
  415. #define IRdcGeneratorParameters_QueryInterface(This,riid,ppvObject) \
  416. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  417. #define IRdcGeneratorParameters_AddRef(This) \
  418. ( (This)->lpVtbl -> AddRef(This) )
  419. #define IRdcGeneratorParameters_Release(This) \
  420. ( (This)->lpVtbl -> Release(This) )
  421. #define IRdcGeneratorParameters_GetGeneratorParametersType(This,parametersType) \
  422. ( (This)->lpVtbl -> GetGeneratorParametersType(This,parametersType) )
  423. #define IRdcGeneratorParameters_GetParametersVersion(This,currentVersion,minimumCompatibleAppVersion) \
  424. ( (This)->lpVtbl -> GetParametersVersion(This,currentVersion,minimumCompatibleAppVersion) )
  425. #define IRdcGeneratorParameters_GetSerializeSize(This,size) \
  426. ( (This)->lpVtbl -> GetSerializeSize(This,size) )
  427. #define IRdcGeneratorParameters_Serialize(This,size,parametersBlob,bytesWritten) \
  428. ( (This)->lpVtbl -> Serialize(This,size,parametersBlob,bytesWritten) )
  429. #endif /* COBJMACROS */
  430. #endif /* C style interface */
  431. #endif /* __IRdcGeneratorParameters_INTERFACE_DEFINED__ */
  432. #ifndef __IRdcGeneratorFilterMaxParameters_INTERFACE_DEFINED__
  433. #define __IRdcGeneratorFilterMaxParameters_INTERFACE_DEFINED__
  434. /* interface IRdcGeneratorFilterMaxParameters */
  435. /* [unique][helpstring][uuid][local][object] */
  436. EXTERN_C const IID IID_IRdcGeneratorFilterMaxParameters;
  437. #if defined(__cplusplus) && !defined(CINTERFACE)
  438. MIDL_INTERFACE("96236A72-9DBC-11DA-9E3F-0011114AE311")
  439. IRdcGeneratorFilterMaxParameters : public IUnknown
  440. {
  441. public:
  442. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetHorizonSize(
  443. /* [out] */ ULONG *horizonSize) = 0;
  444. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetHorizonSize(
  445. /* [in] */ ULONG horizonSize) = 0;
  446. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetHashWindowSize(
  447. /* [out] */ ULONG *hashWindowSize) = 0;
  448. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetHashWindowSize(
  449. /* [in] */ ULONG hashWindowSize) = 0;
  450. };
  451. #else /* C style interface */
  452. typedef struct IRdcGeneratorFilterMaxParametersVtbl
  453. {
  454. BEGIN_INTERFACE
  455. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  456. IRdcGeneratorFilterMaxParameters * This,
  457. /* [in] */ REFIID riid,
  458. /* [annotation][iid_is][out] */
  459. _COM_Outptr_ void **ppvObject);
  460. ULONG ( STDMETHODCALLTYPE *AddRef )(
  461. IRdcGeneratorFilterMaxParameters * This);
  462. ULONG ( STDMETHODCALLTYPE *Release )(
  463. IRdcGeneratorFilterMaxParameters * This);
  464. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetHorizonSize )(
  465. IRdcGeneratorFilterMaxParameters * This,
  466. /* [out] */ ULONG *horizonSize);
  467. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetHorizonSize )(
  468. IRdcGeneratorFilterMaxParameters * This,
  469. /* [in] */ ULONG horizonSize);
  470. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetHashWindowSize )(
  471. IRdcGeneratorFilterMaxParameters * This,
  472. /* [out] */ ULONG *hashWindowSize);
  473. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetHashWindowSize )(
  474. IRdcGeneratorFilterMaxParameters * This,
  475. /* [in] */ ULONG hashWindowSize);
  476. END_INTERFACE
  477. } IRdcGeneratorFilterMaxParametersVtbl;
  478. interface IRdcGeneratorFilterMaxParameters
  479. {
  480. CONST_VTBL struct IRdcGeneratorFilterMaxParametersVtbl *lpVtbl;
  481. };
  482. #ifdef COBJMACROS
  483. #define IRdcGeneratorFilterMaxParameters_QueryInterface(This,riid,ppvObject) \
  484. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  485. #define IRdcGeneratorFilterMaxParameters_AddRef(This) \
  486. ( (This)->lpVtbl -> AddRef(This) )
  487. #define IRdcGeneratorFilterMaxParameters_Release(This) \
  488. ( (This)->lpVtbl -> Release(This) )
  489. #define IRdcGeneratorFilterMaxParameters_GetHorizonSize(This,horizonSize) \
  490. ( (This)->lpVtbl -> GetHorizonSize(This,horizonSize) )
  491. #define IRdcGeneratorFilterMaxParameters_SetHorizonSize(This,horizonSize) \
  492. ( (This)->lpVtbl -> SetHorizonSize(This,horizonSize) )
  493. #define IRdcGeneratorFilterMaxParameters_GetHashWindowSize(This,hashWindowSize) \
  494. ( (This)->lpVtbl -> GetHashWindowSize(This,hashWindowSize) )
  495. #define IRdcGeneratorFilterMaxParameters_SetHashWindowSize(This,hashWindowSize) \
  496. ( (This)->lpVtbl -> SetHashWindowSize(This,hashWindowSize) )
  497. #endif /* COBJMACROS */
  498. #endif /* C style interface */
  499. #endif /* __IRdcGeneratorFilterMaxParameters_INTERFACE_DEFINED__ */
  500. #ifndef __IRdcGenerator_INTERFACE_DEFINED__
  501. #define __IRdcGenerator_INTERFACE_DEFINED__
  502. /* interface IRdcGenerator */
  503. /* [unique][helpstring][uuid][local][object] */
  504. EXTERN_C const IID IID_IRdcGenerator;
  505. #if defined(__cplusplus) && !defined(CINTERFACE)
  506. MIDL_INTERFACE("96236A73-9DBC-11DA-9E3F-0011114AE311")
  507. IRdcGenerator : public IUnknown
  508. {
  509. public:
  510. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetGeneratorParameters(
  511. /* [in] */ ULONG level,
  512. /* [out] */ IRdcGeneratorParameters **iGeneratorParameters) = 0;
  513. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Process(
  514. /* [in] */ BOOL endOfInput,
  515. /* [out] */ BOOL *endOfOutput,
  516. /* [out][in] */ RdcBufferPointer *inputBuffer,
  517. /* [in] */ ULONG depth,
  518. /* [size_is][out] */ RdcBufferPointer *outputBuffers[ ],
  519. /* [out] */ RDC_ErrorCode *rdc_ErrorCode) = 0;
  520. };
  521. #else /* C style interface */
  522. typedef struct IRdcGeneratorVtbl
  523. {
  524. BEGIN_INTERFACE
  525. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  526. IRdcGenerator * This,
  527. /* [in] */ REFIID riid,
  528. /* [annotation][iid_is][out] */
  529. _COM_Outptr_ void **ppvObject);
  530. ULONG ( STDMETHODCALLTYPE *AddRef )(
  531. IRdcGenerator * This);
  532. ULONG ( STDMETHODCALLTYPE *Release )(
  533. IRdcGenerator * This);
  534. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetGeneratorParameters )(
  535. IRdcGenerator * This,
  536. /* [in] */ ULONG level,
  537. /* [out] */ IRdcGeneratorParameters **iGeneratorParameters);
  538. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Process )(
  539. IRdcGenerator * This,
  540. /* [in] */ BOOL endOfInput,
  541. /* [out] */ BOOL *endOfOutput,
  542. /* [out][in] */ RdcBufferPointer *inputBuffer,
  543. /* [in] */ ULONG depth,
  544. /* [size_is][out] */ RdcBufferPointer *outputBuffers[ ],
  545. /* [out] */ RDC_ErrorCode *rdc_ErrorCode);
  546. END_INTERFACE
  547. } IRdcGeneratorVtbl;
  548. interface IRdcGenerator
  549. {
  550. CONST_VTBL struct IRdcGeneratorVtbl *lpVtbl;
  551. };
  552. #ifdef COBJMACROS
  553. #define IRdcGenerator_QueryInterface(This,riid,ppvObject) \
  554. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  555. #define IRdcGenerator_AddRef(This) \
  556. ( (This)->lpVtbl -> AddRef(This) )
  557. #define IRdcGenerator_Release(This) \
  558. ( (This)->lpVtbl -> Release(This) )
  559. #define IRdcGenerator_GetGeneratorParameters(This,level,iGeneratorParameters) \
  560. ( (This)->lpVtbl -> GetGeneratorParameters(This,level,iGeneratorParameters) )
  561. #define IRdcGenerator_Process(This,endOfInput,endOfOutput,inputBuffer,depth,outputBuffers,rdc_ErrorCode) \
  562. ( (This)->lpVtbl -> Process(This,endOfInput,endOfOutput,inputBuffer,depth,outputBuffers,rdc_ErrorCode) )
  563. #endif /* COBJMACROS */
  564. #endif /* C style interface */
  565. #endif /* __IRdcGenerator_INTERFACE_DEFINED__ */
  566. #ifndef __IRdcFileReader_INTERFACE_DEFINED__
  567. #define __IRdcFileReader_INTERFACE_DEFINED__
  568. /* interface IRdcFileReader */
  569. /* [unique][helpstring][uuid][local][object] */
  570. EXTERN_C const IID IID_IRdcFileReader;
  571. #if defined(__cplusplus) && !defined(CINTERFACE)
  572. MIDL_INTERFACE("96236A74-9DBC-11DA-9E3F-0011114AE311")
  573. IRdcFileReader : public IUnknown
  574. {
  575. public:
  576. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetFileSize(
  577. /* [out] */ ULONGLONG *fileSize) = 0;
  578. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Read(
  579. /* [in] */ ULONGLONG offsetFileStart,
  580. /* [in] */ ULONG bytesToRead,
  581. /* [out] */ ULONG *bytesActuallyRead,
  582. /* [out] */ BYTE *buffer,
  583. /* [out] */ BOOL *eof) = 0;
  584. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetFilePosition(
  585. /* [out] */ ULONGLONG *offsetFromStart) = 0;
  586. };
  587. #else /* C style interface */
  588. typedef struct IRdcFileReaderVtbl
  589. {
  590. BEGIN_INTERFACE
  591. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  592. IRdcFileReader * This,
  593. /* [in] */ REFIID riid,
  594. /* [annotation][iid_is][out] */
  595. _COM_Outptr_ void **ppvObject);
  596. ULONG ( STDMETHODCALLTYPE *AddRef )(
  597. IRdcFileReader * This);
  598. ULONG ( STDMETHODCALLTYPE *Release )(
  599. IRdcFileReader * This);
  600. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetFileSize )(
  601. IRdcFileReader * This,
  602. /* [out] */ ULONGLONG *fileSize);
  603. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Read )(
  604. IRdcFileReader * This,
  605. /* [in] */ ULONGLONG offsetFileStart,
  606. /* [in] */ ULONG bytesToRead,
  607. /* [out] */ ULONG *bytesActuallyRead,
  608. /* [out] */ BYTE *buffer,
  609. /* [out] */ BOOL *eof);
  610. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetFilePosition )(
  611. IRdcFileReader * This,
  612. /* [out] */ ULONGLONG *offsetFromStart);
  613. END_INTERFACE
  614. } IRdcFileReaderVtbl;
  615. interface IRdcFileReader
  616. {
  617. CONST_VTBL struct IRdcFileReaderVtbl *lpVtbl;
  618. };
  619. #ifdef COBJMACROS
  620. #define IRdcFileReader_QueryInterface(This,riid,ppvObject) \
  621. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  622. #define IRdcFileReader_AddRef(This) \
  623. ( (This)->lpVtbl -> AddRef(This) )
  624. #define IRdcFileReader_Release(This) \
  625. ( (This)->lpVtbl -> Release(This) )
  626. #define IRdcFileReader_GetFileSize(This,fileSize) \
  627. ( (This)->lpVtbl -> GetFileSize(This,fileSize) )
  628. #define IRdcFileReader_Read(This,offsetFileStart,bytesToRead,bytesActuallyRead,buffer,eof) \
  629. ( (This)->lpVtbl -> Read(This,offsetFileStart,bytesToRead,bytesActuallyRead,buffer,eof) )
  630. #define IRdcFileReader_GetFilePosition(This,offsetFromStart) \
  631. ( (This)->lpVtbl -> GetFilePosition(This,offsetFromStart) )
  632. #endif /* COBJMACROS */
  633. #endif /* C style interface */
  634. #endif /* __IRdcFileReader_INTERFACE_DEFINED__ */
  635. #ifndef __IRdcFileWriter_INTERFACE_DEFINED__
  636. #define __IRdcFileWriter_INTERFACE_DEFINED__
  637. /* interface IRdcFileWriter */
  638. /* [unique][helpstring][uuid][local][object] */
  639. EXTERN_C const IID IID_IRdcFileWriter;
  640. #if defined(__cplusplus) && !defined(CINTERFACE)
  641. MIDL_INTERFACE("96236A75-9DBC-11DA-9E3F-0011114AE311")
  642. IRdcFileWriter : public IRdcFileReader
  643. {
  644. public:
  645. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Write(
  646. /* [in] */ ULONGLONG offsetFileStart,
  647. /* [in] */ ULONG bytesToWrite,
  648. /* [out] */ BYTE *buffer) = 0;
  649. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Truncate( void) = 0;
  650. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE DeleteOnClose( void) = 0;
  651. };
  652. #else /* C style interface */
  653. typedef struct IRdcFileWriterVtbl
  654. {
  655. BEGIN_INTERFACE
  656. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  657. IRdcFileWriter * This,
  658. /* [in] */ REFIID riid,
  659. /* [annotation][iid_is][out] */
  660. _COM_Outptr_ void **ppvObject);
  661. ULONG ( STDMETHODCALLTYPE *AddRef )(
  662. IRdcFileWriter * This);
  663. ULONG ( STDMETHODCALLTYPE *Release )(
  664. IRdcFileWriter * This);
  665. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetFileSize )(
  666. IRdcFileWriter * This,
  667. /* [out] */ ULONGLONG *fileSize);
  668. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Read )(
  669. IRdcFileWriter * This,
  670. /* [in] */ ULONGLONG offsetFileStart,
  671. /* [in] */ ULONG bytesToRead,
  672. /* [out] */ ULONG *bytesActuallyRead,
  673. /* [out] */ BYTE *buffer,
  674. /* [out] */ BOOL *eof);
  675. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetFilePosition )(
  676. IRdcFileWriter * This,
  677. /* [out] */ ULONGLONG *offsetFromStart);
  678. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Write )(
  679. IRdcFileWriter * This,
  680. /* [in] */ ULONGLONG offsetFileStart,
  681. /* [in] */ ULONG bytesToWrite,
  682. /* [out] */ BYTE *buffer);
  683. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Truncate )(
  684. IRdcFileWriter * This);
  685. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *DeleteOnClose )(
  686. IRdcFileWriter * This);
  687. END_INTERFACE
  688. } IRdcFileWriterVtbl;
  689. interface IRdcFileWriter
  690. {
  691. CONST_VTBL struct IRdcFileWriterVtbl *lpVtbl;
  692. };
  693. #ifdef COBJMACROS
  694. #define IRdcFileWriter_QueryInterface(This,riid,ppvObject) \
  695. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  696. #define IRdcFileWriter_AddRef(This) \
  697. ( (This)->lpVtbl -> AddRef(This) )
  698. #define IRdcFileWriter_Release(This) \
  699. ( (This)->lpVtbl -> Release(This) )
  700. #define IRdcFileWriter_GetFileSize(This,fileSize) \
  701. ( (This)->lpVtbl -> GetFileSize(This,fileSize) )
  702. #define IRdcFileWriter_Read(This,offsetFileStart,bytesToRead,bytesActuallyRead,buffer,eof) \
  703. ( (This)->lpVtbl -> Read(This,offsetFileStart,bytesToRead,bytesActuallyRead,buffer,eof) )
  704. #define IRdcFileWriter_GetFilePosition(This,offsetFromStart) \
  705. ( (This)->lpVtbl -> GetFilePosition(This,offsetFromStart) )
  706. #define IRdcFileWriter_Write(This,offsetFileStart,bytesToWrite,buffer) \
  707. ( (This)->lpVtbl -> Write(This,offsetFileStart,bytesToWrite,buffer) )
  708. #define IRdcFileWriter_Truncate(This) \
  709. ( (This)->lpVtbl -> Truncate(This) )
  710. #define IRdcFileWriter_DeleteOnClose(This) \
  711. ( (This)->lpVtbl -> DeleteOnClose(This) )
  712. #endif /* COBJMACROS */
  713. #endif /* C style interface */
  714. #endif /* __IRdcFileWriter_INTERFACE_DEFINED__ */
  715. #ifndef __IRdcSignatureReader_INTERFACE_DEFINED__
  716. #define __IRdcSignatureReader_INTERFACE_DEFINED__
  717. /* interface IRdcSignatureReader */
  718. /* [unique][helpstring][uuid][local][object] */
  719. EXTERN_C const IID IID_IRdcSignatureReader;
  720. #if defined(__cplusplus) && !defined(CINTERFACE)
  721. MIDL_INTERFACE("96236A76-9DBC-11DA-9E3F-0011114AE311")
  722. IRdcSignatureReader : public IUnknown
  723. {
  724. public:
  725. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ReadHeader(
  726. /* [out] */ RDC_ErrorCode *rdc_ErrorCode) = 0;
  727. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ReadSignatures(
  728. /* [out][in] */ RdcSignaturePointer *rdcSignaturePointer,
  729. /* [out] */ BOOL *endOfOutput) = 0;
  730. };
  731. #else /* C style interface */
  732. typedef struct IRdcSignatureReaderVtbl
  733. {
  734. BEGIN_INTERFACE
  735. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  736. IRdcSignatureReader * This,
  737. /* [in] */ REFIID riid,
  738. /* [annotation][iid_is][out] */
  739. _COM_Outptr_ void **ppvObject);
  740. ULONG ( STDMETHODCALLTYPE *AddRef )(
  741. IRdcSignatureReader * This);
  742. ULONG ( STDMETHODCALLTYPE *Release )(
  743. IRdcSignatureReader * This);
  744. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ReadHeader )(
  745. IRdcSignatureReader * This,
  746. /* [out] */ RDC_ErrorCode *rdc_ErrorCode);
  747. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ReadSignatures )(
  748. IRdcSignatureReader * This,
  749. /* [out][in] */ RdcSignaturePointer *rdcSignaturePointer,
  750. /* [out] */ BOOL *endOfOutput);
  751. END_INTERFACE
  752. } IRdcSignatureReaderVtbl;
  753. interface IRdcSignatureReader
  754. {
  755. CONST_VTBL struct IRdcSignatureReaderVtbl *lpVtbl;
  756. };
  757. #ifdef COBJMACROS
  758. #define IRdcSignatureReader_QueryInterface(This,riid,ppvObject) \
  759. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  760. #define IRdcSignatureReader_AddRef(This) \
  761. ( (This)->lpVtbl -> AddRef(This) )
  762. #define IRdcSignatureReader_Release(This) \
  763. ( (This)->lpVtbl -> Release(This) )
  764. #define IRdcSignatureReader_ReadHeader(This,rdc_ErrorCode) \
  765. ( (This)->lpVtbl -> ReadHeader(This,rdc_ErrorCode) )
  766. #define IRdcSignatureReader_ReadSignatures(This,rdcSignaturePointer,endOfOutput) \
  767. ( (This)->lpVtbl -> ReadSignatures(This,rdcSignaturePointer,endOfOutput) )
  768. #endif /* COBJMACROS */
  769. #endif /* C style interface */
  770. #endif /* __IRdcSignatureReader_INTERFACE_DEFINED__ */
  771. #ifndef __IRdcComparator_INTERFACE_DEFINED__
  772. #define __IRdcComparator_INTERFACE_DEFINED__
  773. /* interface IRdcComparator */
  774. /* [unique][helpstring][uuid][local][object] */
  775. EXTERN_C const IID IID_IRdcComparator;
  776. #if defined(__cplusplus) && !defined(CINTERFACE)
  777. MIDL_INTERFACE("96236A77-9DBC-11DA-9E3F-0011114AE311")
  778. IRdcComparator : public IUnknown
  779. {
  780. public:
  781. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Process(
  782. /* [in] */ BOOL endOfInput,
  783. /* [out] */ BOOL *endOfOutput,
  784. /* [out][in] */ RdcBufferPointer *inputBuffer,
  785. /* [out][in] */ RdcNeedPointer *outputBuffer,
  786. /* [out] */ RDC_ErrorCode *rdc_ErrorCode) = 0;
  787. };
  788. #else /* C style interface */
  789. typedef struct IRdcComparatorVtbl
  790. {
  791. BEGIN_INTERFACE
  792. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  793. IRdcComparator * This,
  794. /* [in] */ REFIID riid,
  795. /* [annotation][iid_is][out] */
  796. _COM_Outptr_ void **ppvObject);
  797. ULONG ( STDMETHODCALLTYPE *AddRef )(
  798. IRdcComparator * This);
  799. ULONG ( STDMETHODCALLTYPE *Release )(
  800. IRdcComparator * This);
  801. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Process )(
  802. IRdcComparator * This,
  803. /* [in] */ BOOL endOfInput,
  804. /* [out] */ BOOL *endOfOutput,
  805. /* [out][in] */ RdcBufferPointer *inputBuffer,
  806. /* [out][in] */ RdcNeedPointer *outputBuffer,
  807. /* [out] */ RDC_ErrorCode *rdc_ErrorCode);
  808. END_INTERFACE
  809. } IRdcComparatorVtbl;
  810. interface IRdcComparator
  811. {
  812. CONST_VTBL struct IRdcComparatorVtbl *lpVtbl;
  813. };
  814. #ifdef COBJMACROS
  815. #define IRdcComparator_QueryInterface(This,riid,ppvObject) \
  816. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  817. #define IRdcComparator_AddRef(This) \
  818. ( (This)->lpVtbl -> AddRef(This) )
  819. #define IRdcComparator_Release(This) \
  820. ( (This)->lpVtbl -> Release(This) )
  821. #define IRdcComparator_Process(This,endOfInput,endOfOutput,inputBuffer,outputBuffer,rdc_ErrorCode) \
  822. ( (This)->lpVtbl -> Process(This,endOfInput,endOfOutput,inputBuffer,outputBuffer,rdc_ErrorCode) )
  823. #endif /* COBJMACROS */
  824. #endif /* C style interface */
  825. #endif /* __IRdcComparator_INTERFACE_DEFINED__ */
  826. #ifndef __IRdcLibrary_INTERFACE_DEFINED__
  827. #define __IRdcLibrary_INTERFACE_DEFINED__
  828. /* interface IRdcLibrary */
  829. /* [unique][helpstring][uuid][local][object] */
  830. EXTERN_C const IID IID_IRdcLibrary;
  831. #if defined(__cplusplus) && !defined(CINTERFACE)
  832. MIDL_INTERFACE("96236A78-9DBC-11DA-9E3F-0011114AE311")
  833. IRdcLibrary : public IUnknown
  834. {
  835. public:
  836. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ComputeDefaultRecursionDepth(
  837. /* [in] */ ULONGLONG fileSize,
  838. /* [out] */ ULONG *depth) = 0;
  839. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateGeneratorParameters(
  840. /* [in] */ GeneratorParametersType parametersType,
  841. /* [in] */ ULONG level,
  842. /* [out] */ IRdcGeneratorParameters **iGeneratorParameters) = 0;
  843. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE OpenGeneratorParameters(
  844. /* [in] */ ULONG size,
  845. /* [in] */ const BYTE *parametersBlob,
  846. /* [out] */ IRdcGeneratorParameters **iGeneratorParameters) = 0;
  847. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateGenerator(
  848. /* [in] */ ULONG depth,
  849. /* [size_is][in] */ IRdcGeneratorParameters *iGeneratorParametersArray[ ],
  850. /* [out] */ IRdcGenerator **iGenerator) = 0;
  851. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateComparator(
  852. /* [in] */ IRdcFileReader *iSeedSignaturesFile,
  853. /* [in] */ ULONG comparatorBufferSize,
  854. /* [out] */ IRdcComparator **iComparator) = 0;
  855. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateSignatureReader(
  856. /* [in] */ IRdcFileReader *iFileReader,
  857. /* [out] */ IRdcSignatureReader **iSignatureReader) = 0;
  858. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetRDCVersion(
  859. /* [out] */ ULONG *currentVersion,
  860. /* [out] */ ULONG *minimumCompatibleAppVersion) = 0;
  861. };
  862. #else /* C style interface */
  863. typedef struct IRdcLibraryVtbl
  864. {
  865. BEGIN_INTERFACE
  866. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  867. IRdcLibrary * This,
  868. /* [in] */ REFIID riid,
  869. /* [annotation][iid_is][out] */
  870. _COM_Outptr_ void **ppvObject);
  871. ULONG ( STDMETHODCALLTYPE *AddRef )(
  872. IRdcLibrary * This);
  873. ULONG ( STDMETHODCALLTYPE *Release )(
  874. IRdcLibrary * This);
  875. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ComputeDefaultRecursionDepth )(
  876. IRdcLibrary * This,
  877. /* [in] */ ULONGLONG fileSize,
  878. /* [out] */ ULONG *depth);
  879. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateGeneratorParameters )(
  880. IRdcLibrary * This,
  881. /* [in] */ GeneratorParametersType parametersType,
  882. /* [in] */ ULONG level,
  883. /* [out] */ IRdcGeneratorParameters **iGeneratorParameters);
  884. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *OpenGeneratorParameters )(
  885. IRdcLibrary * This,
  886. /* [in] */ ULONG size,
  887. /* [in] */ const BYTE *parametersBlob,
  888. /* [out] */ IRdcGeneratorParameters **iGeneratorParameters);
  889. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateGenerator )(
  890. IRdcLibrary * This,
  891. /* [in] */ ULONG depth,
  892. /* [size_is][in] */ IRdcGeneratorParameters *iGeneratorParametersArray[ ],
  893. /* [out] */ IRdcGenerator **iGenerator);
  894. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateComparator )(
  895. IRdcLibrary * This,
  896. /* [in] */ IRdcFileReader *iSeedSignaturesFile,
  897. /* [in] */ ULONG comparatorBufferSize,
  898. /* [out] */ IRdcComparator **iComparator);
  899. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateSignatureReader )(
  900. IRdcLibrary * This,
  901. /* [in] */ IRdcFileReader *iFileReader,
  902. /* [out] */ IRdcSignatureReader **iSignatureReader);
  903. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetRDCVersion )(
  904. IRdcLibrary * This,
  905. /* [out] */ ULONG *currentVersion,
  906. /* [out] */ ULONG *minimumCompatibleAppVersion);
  907. END_INTERFACE
  908. } IRdcLibraryVtbl;
  909. interface IRdcLibrary
  910. {
  911. CONST_VTBL struct IRdcLibraryVtbl *lpVtbl;
  912. };
  913. #ifdef COBJMACROS
  914. #define IRdcLibrary_QueryInterface(This,riid,ppvObject) \
  915. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  916. #define IRdcLibrary_AddRef(This) \
  917. ( (This)->lpVtbl -> AddRef(This) )
  918. #define IRdcLibrary_Release(This) \
  919. ( (This)->lpVtbl -> Release(This) )
  920. #define IRdcLibrary_ComputeDefaultRecursionDepth(This,fileSize,depth) \
  921. ( (This)->lpVtbl -> ComputeDefaultRecursionDepth(This,fileSize,depth) )
  922. #define IRdcLibrary_CreateGeneratorParameters(This,parametersType,level,iGeneratorParameters) \
  923. ( (This)->lpVtbl -> CreateGeneratorParameters(This,parametersType,level,iGeneratorParameters) )
  924. #define IRdcLibrary_OpenGeneratorParameters(This,size,parametersBlob,iGeneratorParameters) \
  925. ( (This)->lpVtbl -> OpenGeneratorParameters(This,size,parametersBlob,iGeneratorParameters) )
  926. #define IRdcLibrary_CreateGenerator(This,depth,iGeneratorParametersArray,iGenerator) \
  927. ( (This)->lpVtbl -> CreateGenerator(This,depth,iGeneratorParametersArray,iGenerator) )
  928. #define IRdcLibrary_CreateComparator(This,iSeedSignaturesFile,comparatorBufferSize,iComparator) \
  929. ( (This)->lpVtbl -> CreateComparator(This,iSeedSignaturesFile,comparatorBufferSize,iComparator) )
  930. #define IRdcLibrary_CreateSignatureReader(This,iFileReader,iSignatureReader) \
  931. ( (This)->lpVtbl -> CreateSignatureReader(This,iFileReader,iSignatureReader) )
  932. #define IRdcLibrary_GetRDCVersion(This,currentVersion,minimumCompatibleAppVersion) \
  933. ( (This)->lpVtbl -> GetRDCVersion(This,currentVersion,minimumCompatibleAppVersion) )
  934. #endif /* COBJMACROS */
  935. #endif /* C style interface */
  936. #endif /* __IRdcLibrary_INTERFACE_DEFINED__ */
  937. #ifndef __ISimilarityReportProgress_INTERFACE_DEFINED__
  938. #define __ISimilarityReportProgress_INTERFACE_DEFINED__
  939. /* interface ISimilarityReportProgress */
  940. /* [unique][helpstring][uuid][local][object] */
  941. EXTERN_C const IID IID_ISimilarityReportProgress;
  942. #if defined(__cplusplus) && !defined(CINTERFACE)
  943. MIDL_INTERFACE("96236A7A-9DBC-11DA-9E3F-0011114AE311")
  944. ISimilarityReportProgress : public IUnknown
  945. {
  946. public:
  947. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ReportProgress(
  948. /* [in] */ DWORD percentCompleted) = 0;
  949. };
  950. #else /* C style interface */
  951. typedef struct ISimilarityReportProgressVtbl
  952. {
  953. BEGIN_INTERFACE
  954. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  955. ISimilarityReportProgress * This,
  956. /* [in] */ REFIID riid,
  957. /* [annotation][iid_is][out] */
  958. _COM_Outptr_ void **ppvObject);
  959. ULONG ( STDMETHODCALLTYPE *AddRef )(
  960. ISimilarityReportProgress * This);
  961. ULONG ( STDMETHODCALLTYPE *Release )(
  962. ISimilarityReportProgress * This);
  963. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ReportProgress )(
  964. ISimilarityReportProgress * This,
  965. /* [in] */ DWORD percentCompleted);
  966. END_INTERFACE
  967. } ISimilarityReportProgressVtbl;
  968. interface ISimilarityReportProgress
  969. {
  970. CONST_VTBL struct ISimilarityReportProgressVtbl *lpVtbl;
  971. };
  972. #ifdef COBJMACROS
  973. #define ISimilarityReportProgress_QueryInterface(This,riid,ppvObject) \
  974. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  975. #define ISimilarityReportProgress_AddRef(This) \
  976. ( (This)->lpVtbl -> AddRef(This) )
  977. #define ISimilarityReportProgress_Release(This) \
  978. ( (This)->lpVtbl -> Release(This) )
  979. #define ISimilarityReportProgress_ReportProgress(This,percentCompleted) \
  980. ( (This)->lpVtbl -> ReportProgress(This,percentCompleted) )
  981. #endif /* COBJMACROS */
  982. #endif /* C style interface */
  983. #endif /* __ISimilarityReportProgress_INTERFACE_DEFINED__ */
  984. #ifndef __ISimilarityTableDumpState_INTERFACE_DEFINED__
  985. #define __ISimilarityTableDumpState_INTERFACE_DEFINED__
  986. /* interface ISimilarityTableDumpState */
  987. /* [unique][helpstring][uuid][local][object] */
  988. EXTERN_C const IID IID_ISimilarityTableDumpState;
  989. #if defined(__cplusplus) && !defined(CINTERFACE)
  990. MIDL_INTERFACE("96236A7B-9DBC-11DA-9E3F-0011114AE311")
  991. ISimilarityTableDumpState : public IUnknown
  992. {
  993. public:
  994. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetNextData(
  995. /* [in] */ DWORD resultsSize,
  996. /* [out] */ DWORD *resultsUsed,
  997. /* [out] */ BOOL *eof,
  998. /* [out][in] */ SimilarityDumpData *results) = 0;
  999. };
  1000. #else /* C style interface */
  1001. typedef struct ISimilarityTableDumpStateVtbl
  1002. {
  1003. BEGIN_INTERFACE
  1004. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  1005. ISimilarityTableDumpState * This,
  1006. /* [in] */ REFIID riid,
  1007. /* [annotation][iid_is][out] */
  1008. _COM_Outptr_ void **ppvObject);
  1009. ULONG ( STDMETHODCALLTYPE *AddRef )(
  1010. ISimilarityTableDumpState * This);
  1011. ULONG ( STDMETHODCALLTYPE *Release )(
  1012. ISimilarityTableDumpState * This);
  1013. /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetNextData )(
  1014. ISimilarityTableDumpState * This,
  1015. /* [in] */ DWORD resultsSize,
  1016. /* [out] */ DWORD *resultsUsed,
  1017. /* [out] */ BOOL *eof,
  1018. /* [out][in] */ SimilarityDumpData *results);
  1019. END_INTERFACE
  1020. } ISimilarityTableDumpStateVtbl;
  1021. interface ISimilarityTableDumpState
  1022. {
  1023. CONST_VTBL struct ISimilarityTableDumpStateVtbl *lpVtbl;
  1024. };
  1025. #ifdef COBJMACROS
  1026. #define ISimilarityTableDumpState_QueryInterface(This,riid,ppvObject) \
  1027. ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
  1028. #define ISimilarityTableDumpState_AddRef(This) \
  1029. ( (This)->lpVtbl -> AddRef(This) )
  1030. #define ISimilarityTableDumpState_Release(This) \
  1031. ( (This)->lpVtbl -> Release(This) )
  1032. #define ISimilarityTableDumpState_GetNextData(This,resultsSize,resultsUsed,eof,results) \
  1033. ( (This)->lpVtbl -> GetNextData(This,resultsSize,resultsUsed,eof,results) )
  1034. #endif /* COBJMACROS */
  1035. #endif /* C style interface */
  1036. #endif /* __ISimilarityTableDumpState_INTERFACE_DEFINED__ */
  1037. #ifndef __ISimilarityTraitsMappedView_INTERFACE_DEFINED__
  1038. #define __ISimilarityTraitsMappedView_INTERFACE_DEFINED__
  1039. /* interface ISimilarityTraitsMappedView */
  1040. /* [unique][helpstring][uuid][local][object] */
  1041. EXTERN_C const IID IID_ISimilarityTraitsMappedView;
  1042. #if defined(__cplusplus) && !defined(CINTERFACE)
  1043. MIDL_INTERFACE("96236A7C-9DBC-11DA-9E3F-0011114AE311")
  1044. ISimilarityTraitsMappedView : public IUnknown
  1045. {
  1046. public:
  1047. virtual /* [local][helpstring] */ HRESULT STDME