source: Daodan/MSYS2/mingw32/i686-w64-mingw32/include/msopc.idl@ 1186

Last change on this file since 1186 was 1166, checked in by rossy, 3 years ago

Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File size: 30.6 KB
RevLine 
[1166]1/**
2 * This file is part of the mingw-w64 runtime package.
3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */
5
6import "oaidl.idl";
7import "ocidl.idl";
8import "urlmon.idl";
9import "wincrypt.idl";
10
11cpp_quote("#include <winapifamily.h>")
12
13cpp_quote("#if NTDDI_VERSION >= 0x06010000")
14interface IOpcUri;
15interface IOpcPartUri;
16
17[object, uuid (bc9c1b9b-d62c-49eb-aef0-3b4e0b28ebed), nonextensible, pointer_default (ref)]
18interface IOpcUri : IUri {
19 HRESULT GetRelationshipsPartUri ([out, retval] IOpcPartUri **relationshipPartUri);
20 HRESULT GetRelativeUri ([in] IOpcPartUri *targetPartUri,[out, retval] IUri **relativeUri);
21 HRESULT CombinePartUri ([in] IUri *relativeUri,[out, retval] IOpcPartUri **combinedUri);
22};
23
24[object, uuid (7d3babe7-88b2-46ba-85cb-4203cb016c87), nonextensible, pointer_default (ref)]
25interface IOpcPartUri : IOpcUri {
26 HRESULT ComparePartUri ([in] IOpcPartUri *partUri,[out, retval] INT32 *comparisonResult);
27 HRESULT GetSourceUri ([out, retval] IOpcUri **sourceUri);
28 HRESULT IsRelationshipsPartUri ([out, retval] BOOL *isRelationshipUri);
29};
30
31cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
32cpp_quote("#define IS_OPC_CONFORMANCE_ERROR(x) (((x) & 0x1ffff000) == (0x0000 + (FACILITY_OPC << 16)))")
33cpp_quote("#define IS_ZIP_CONFORMANCE_ERROR(x) (((x) & 0x1ffff000) == (0x1000 + (FACILITY_OPC << 16)))")
34
35cpp_quote("#define OPC_E_NONCONFORMING_URI MAKE_HRESULT(1, FACILITY_OPC, 0x1)")
36cpp_quote("#define OPC_E_RELATIVE_URI_REQUIRED MAKE_HRESULT(1, FACILITY_OPC, 0x2)")
37cpp_quote("#define OPC_E_RELATIONSHIP_URI_REQUIRED MAKE_HRESULT(1, FACILITY_OPC, 0x3)")
38cpp_quote("#define OPC_E_PART_CANNOT_BE_DIRECTORY MAKE_HRESULT(1, FACILITY_OPC, 0x4)")
39cpp_quote("#define OPC_E_UNEXPECTED_CONTENT_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x5)")
40cpp_quote("#define OPC_E_INVALID_CONTENT_TYPE_XML MAKE_HRESULT(1, FACILITY_OPC, 0x6)")
41cpp_quote("#define OPC_E_MISSING_CONTENT_TYPES MAKE_HRESULT(1, FACILITY_OPC, 0x7)")
42cpp_quote("#define OPC_E_NONCONFORMING_CONTENT_TYPES_XML MAKE_HRESULT(1, FACILITY_OPC, 0x8)")
43cpp_quote("#define OPC_E_NONCONFORMING_RELS_XML MAKE_HRESULT(1, FACILITY_OPC, 0x9)")
44cpp_quote("#define OPC_E_INVALID_RELS_XML MAKE_HRESULT(1, FACILITY_OPC, 0xa)")
45cpp_quote("#define OPC_E_DUPLICATE_PART MAKE_HRESULT(1, FACILITY_OPC, 0xb)")
46cpp_quote("#define OPC_E_INVALID_OVERRIDE_PART_NAME MAKE_HRESULT(1, FACILITY_OPC, 0xc)")
47cpp_quote("#define OPC_E_DUPLICATE_OVERRIDE_PART MAKE_HRESULT(1, FACILITY_OPC, 0xd)")
48cpp_quote("#define OPC_E_INVALID_DEFAULT_EXTENSION MAKE_HRESULT(1, FACILITY_OPC, 0xe)")
49cpp_quote("#define OPC_E_DUPLICATE_DEFAULT_EXTENSION MAKE_HRESULT(1, FACILITY_OPC, 0xf)")
50cpp_quote("#define OPC_E_INVALID_RELATIONSHIP_ID MAKE_HRESULT(1, FACILITY_OPC, 0x10)")
51cpp_quote("#define OPC_E_INVALID_RELATIONSHIP_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x11)")
52cpp_quote("#define OPC_E_INVALID_RELATIONSHIP_TARGET MAKE_HRESULT(1, FACILITY_OPC, 0x12)")
53cpp_quote("#define OPC_E_DUPLICATE_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x13)")
54cpp_quote("#define OPC_E_CONFLICTING_SETTINGS MAKE_HRESULT(1, FACILITY_OPC, 0x14)")
55cpp_quote("#define OPC_E_DUPLICATE_PIECE MAKE_HRESULT(1, FACILITY_OPC, 0x15)")
56cpp_quote("#define OPC_E_INVALID_PIECE MAKE_HRESULT(1, FACILITY_OPC, 0x16)")
57cpp_quote("#define OPC_E_MISSING_PIECE MAKE_HRESULT(1, FACILITY_OPC, 0x17)")
58cpp_quote("#define OPC_E_NO_SUCH_PART MAKE_HRESULT(1, FACILITY_OPC, 0x18)")
59cpp_quote("#define OPC_E_DS_SIGNATURE_CORRUPT MAKE_HRESULT(1, FACILITY_OPC, 0x19)")
60cpp_quote("#define OPC_E_DS_DIGEST_VALUE_ERROR MAKE_HRESULT(1, FACILITY_OPC, 0x1a)")
61cpp_quote("#define OPC_E_DS_DUPLICATE_SIGNATURE_ORIGIN_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x1b)")
62cpp_quote("#define OPC_E_DS_INVALID_SIGNATURE_ORIGIN_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x1c)")
63cpp_quote("#define OPC_E_DS_INVALID_CERTIFICATE_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x1d)")
64cpp_quote("#define OPC_E_DS_EXTERNAL_SIGNATURE MAKE_HRESULT(1, FACILITY_OPC, 0x1e)")
65cpp_quote("#define OPC_E_DS_MISSING_SIGNATURE_ORIGIN_PART MAKE_HRESULT(1, FACILITY_OPC, 0x1f)")
66cpp_quote("#define OPC_E_DS_MISSING_SIGNATURE_PART MAKE_HRESULT(1, FACILITY_OPC, 0x20)")
67cpp_quote("#define OPC_E_DS_INVALID_RELATIONSHIP_TRANSFORM_XML MAKE_HRESULT(1, FACILITY_OPC, 0x21)")
68cpp_quote("#define OPC_E_DS_INVALID_CANONICALIZATION_METHOD MAKE_HRESULT(1, FACILITY_OPC, 0x22)")
69cpp_quote("#define OPC_E_DS_INVALID_RELATIONSHIPS_SIGNING_OPTION MAKE_HRESULT(1, FACILITY_OPC, 0x23)")
70cpp_quote("#define OPC_E_DS_INVALID_OPC_SIGNATURE_TIME_FORMAT MAKE_HRESULT(1, FACILITY_OPC, 0x24)")
71cpp_quote("#define OPC_E_DS_PACKAGE_REFERENCE_URI_RESERVED MAKE_HRESULT(1, FACILITY_OPC, 0x25)")
72cpp_quote("#define OPC_E_DS_MISSING_SIGNATURE_PROPERTIES_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x26)")
73cpp_quote("#define OPC_E_DS_MISSING_SIGNATURE_PROPERTY_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x27)")
74cpp_quote("#define OPC_E_DS_DUPLICATE_SIGNATURE_PROPERTY_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x28)")
75cpp_quote("#define OPC_E_DS_MISSING_SIGNATURE_TIME_PROPERTY MAKE_HRESULT(1, FACILITY_OPC, 0x29)")
76cpp_quote("#define OPC_E_DS_INVALID_SIGNATURE_XML MAKE_HRESULT(1, FACILITY_OPC, 0x2a)")
77cpp_quote("#define OPC_E_DS_INVALID_SIGNATURE_COUNT MAKE_HRESULT(1, FACILITY_OPC, 0x2b)")
78cpp_quote("#define OPC_E_DS_MISSING_SIGNATURE_ALGORITHM MAKE_HRESULT(1, FACILITY_OPC, 0x2c)")
79cpp_quote("#define OPC_E_DS_DUPLICATE_PACKAGE_OBJECT_REFERENCES MAKE_HRESULT(1, FACILITY_OPC, 0x2d)")
80cpp_quote("#define OPC_E_DS_MISSING_PACKAGE_OBJECT_REFERENCE MAKE_HRESULT(1, FACILITY_OPC, 0x2e)")
81cpp_quote("#define OPC_E_DS_EXTERNAL_SIGNATURE_REFERENCE MAKE_HRESULT(1, FACILITY_OPC, 0x2f)")
82cpp_quote("#define OPC_E_DS_REFERENCE_MISSING_CONTENT_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x30)")
83cpp_quote("#define OPC_E_DS_MULTIPLE_RELATIONSHIP_TRANSFORMS MAKE_HRESULT(1, FACILITY_OPC, 0x31)")
84cpp_quote("#define OPC_E_DS_MISSING_CANONICALIZATION_TRANSFORM MAKE_HRESULT(1, FACILITY_OPC, 0x32)")
85cpp_quote("#define OPC_E_MC_UNEXPECTED_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x33)")
86cpp_quote("#define OPC_E_MC_UNEXPECTED_REQUIRES_ATTR MAKE_HRESULT(1, FACILITY_OPC, 0x34)")
87cpp_quote("#define OPC_E_MC_MISSING_REQUIRES_ATTR MAKE_HRESULT(1, FACILITY_OPC, 0x35)")
88cpp_quote("#define OPC_E_MC_UNEXPECTED_ATTR MAKE_HRESULT(1, FACILITY_OPC, 0x36)")
89cpp_quote("#define OPC_E_MC_INVALID_PREFIX_LIST MAKE_HRESULT(1, FACILITY_OPC, 0x37)")
90cpp_quote("#define OPC_E_MC_INVALID_QNAME_LIST MAKE_HRESULT(1, FACILITY_OPC, 0x38)")
91cpp_quote("#define OPC_E_MC_NESTED_ALTERNATE_CONTENT MAKE_HRESULT(1, FACILITY_OPC, 0x39)")
92cpp_quote("#define OPC_E_MC_UNEXPECTED_CHOICE MAKE_HRESULT(1, FACILITY_OPC, 0x3a)")
93cpp_quote("#define OPC_E_MC_MISSING_CHOICE MAKE_HRESULT(1, FACILITY_OPC, 0x3b)")
94cpp_quote("#define OPC_E_MC_INVALID_ENUM_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x3c)")
95cpp_quote("#define OPC_E_MC_UNKNOWN_NAMESPACE MAKE_HRESULT(1, FACILITY_OPC, 0x3e)")
96cpp_quote("#define OPC_E_MC_UNKNOWN_PREFIX MAKE_HRESULT(1, FACILITY_OPC, 0x3f)")
97cpp_quote("#define OPC_E_MC_INVALID_ATTRIBUTES_ON_IGNORABLE_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x40)")
98cpp_quote("#define OPC_E_MC_INVALID_XMLNS_ATTRIBUTE MAKE_HRESULT(1, FACILITY_OPC, 0x41)")
99cpp_quote("#define OPC_E_INVALID_XML_ENCODING MAKE_HRESULT(1, FACILITY_OPC, 0x42)")
100cpp_quote("#define OPC_E_DS_SIGNATURE_REFERENCE_MISSING_URI MAKE_HRESULT(1, FACILITY_OPC, 0x43)")
101cpp_quote("#define OPC_E_INVALID_CONTENT_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x44)")
102cpp_quote("#define OPC_E_DS_SIGNATURE_PROPERTY_MISSING_TARGET MAKE_HRESULT(1, FACILITY_OPC, 0x45)")
103cpp_quote("#define OPC_E_DS_SIGNATURE_METHOD_NOT_SET MAKE_HRESULT(1, FACILITY_OPC, 0x46)")
104cpp_quote("#define OPC_E_DS_DEFAULT_DIGEST_METHOD_NOT_SET MAKE_HRESULT(1, FACILITY_OPC, 0x47)")
105cpp_quote("#define OPC_E_NO_SUCH_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x48)")
106cpp_quote("#define OPC_E_MC_MULTIPLE_FALLBACK_ELEMENTS MAKE_HRESULT(1, FACILITY_OPC, 0x49)")
107cpp_quote("#define OPC_E_MC_INCONSISTENT_PROCESS_CONTENT MAKE_HRESULT(1, FACILITY_OPC, 0x4a)")
108cpp_quote("#define OPC_E_MC_INCONSISTENT_PRESERVE_ATTRIBUTES MAKE_HRESULT(1, FACILITY_OPC, 0x4b)")
109cpp_quote("#define OPC_E_MC_INCONSISTENT_PRESERVE_ELEMENTS MAKE_HRESULT(1, FACILITY_OPC, 0x4c)")
110cpp_quote("#define OPC_E_INVALID_RELATIONSHIP_TARGET_MODE MAKE_HRESULT(1, FACILITY_OPC, 0x4d)")
111cpp_quote("#define OPC_E_COULD_NOT_RECOVER MAKE_HRESULT(1, FACILITY_OPC, 0x4e)")
112cpp_quote("#define OPC_E_UNSUPPORTED_PACKAGE MAKE_HRESULT(1, FACILITY_OPC, 0x4f)")
113cpp_quote("#define OPC_E_ENUM_COLLECTION_CHANGED MAKE_HRESULT(1, FACILITY_OPC, 0x50)")
114cpp_quote("#define OPC_E_ENUM_CANNOT_MOVE_NEXT MAKE_HRESULT(1, FACILITY_OPC, 0x51)")
115cpp_quote("#define OPC_E_ENUM_CANNOT_MOVE_PREVIOUS MAKE_HRESULT(1, FACILITY_OPC, 0x52)")
116cpp_quote("#define OPC_E_ENUM_INVALID_POSITION MAKE_HRESULT(1, FACILITY_OPC, 0x53)")
117cpp_quote("#define OPC_E_DS_SIGNATURE_ORIGIN_EXISTS MAKE_HRESULT(1, FACILITY_OPC, 0x54)")
118cpp_quote("#define OPC_E_DS_UNSIGNED_PACKAGE MAKE_HRESULT(1, FACILITY_OPC, 0x55)")
119cpp_quote("#define OPC_E_DS_MISSING_CERTIFICATE_PART MAKE_HRESULT(1, FACILITY_OPC, 0x56)")
120cpp_quote("#define OPC_E_NO_SUCH_SETTINGS MAKE_HRESULT(1, FACILITY_OPC, 0x57)")
121cpp_quote("#define OPC_E_ZIP_INCORRECT_DATA_SIZE MAKE_HRESULT(1, FACILITY_OPC, 0x1001)")
122cpp_quote("#define OPC_E_ZIP_CORRUPTED_ARCHIVE MAKE_HRESULT(1, FACILITY_OPC, 0x1002)")
123cpp_quote("#define OPC_E_ZIP_COMPRESSION_FAILED MAKE_HRESULT(1, FACILITY_OPC, 0x1003)")
124cpp_quote("#define OPC_E_ZIP_DECOMPRESSION_FAILED MAKE_HRESULT(1, FACILITY_OPC, 0x1004)")
125cpp_quote("#define OPC_E_ZIP_INCONSISTENT_FILEITEM MAKE_HRESULT(1, FACILITY_OPC, 0x1005)")
126cpp_quote("#define OPC_E_ZIP_INCONSISTENT_DIRECTORY MAKE_HRESULT(1, FACILITY_OPC, 0x1006)")
127cpp_quote("#define OPC_E_ZIP_MISSING_DATA_DESCRIPTOR MAKE_HRESULT(1, FACILITY_OPC, 0x1007)")
128cpp_quote("#define OPC_E_ZIP_UNSUPPORTEDARCHIVE MAKE_HRESULT(1, FACILITY_OPC, 0x1008)")
129cpp_quote("#define OPC_E_ZIP_CENTRAL_DIRECTORY_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x1009)")
130cpp_quote("#define OPC_E_ZIP_NAME_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x100a)")
131cpp_quote("#define OPC_E_ZIP_DUPLICATE_NAME MAKE_HRESULT(1, FACILITY_OPC, 0x100b)")
132cpp_quote("#define OPC_E_ZIP_COMMENT_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x100c)")
133cpp_quote("#define OPC_E_ZIP_EXTRA_FIELDS_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x100d)")
134cpp_quote("#define OPC_E_ZIP_FILE_HEADER_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x100e)")
135cpp_quote("#define OPC_E_ZIP_MISSING_END_OF_CENTRAL_DIRECTORY MAKE_HRESULT(1, FACILITY_OPC, 0x100f)")
136cpp_quote("#define OPC_E_ZIP_REQUIRES_64_BIT MAKE_HRESULT(1, FACILITY_OPC, 0x1010)")
137
138[uuid (3d8d6062-2749-442b-9e32-E40EF801A766), version (1.0), lcid (0x0)]
139library MSOPC {
140 interface IOpcCertificateEnumerator;
141 interface IOpcCertificateSet;
142 interface IOpcDigitalSignature;
143 interface IOpcDigitalSignatureEnumerator;
144 interface IOpcDigitalSignatureManager;
145 interface IOpcPackage;
146 interface IOpcPart;
147 interface IOpcPartEnumerator;
148 interface IOpcPartSet;
149 interface IOpcPartUri;
150 interface IOpcRelationship;
151 interface IOpcRelationshipEnumerator;
152 interface IOpcRelationshipSelector;
153 interface IOpcRelationshipSelectorSet;
154 interface IOpcRelationshipSet;
155 interface IOpcSigningOptions;
156 interface IOpcSignatureCustomObject;
157 interface IOpcSignatureCustomObjectSet;
158 interface IOpcSignaturePartReference;
159 interface IOpcSignaturePartReferenceEnumerator;
160 interface IOpcSignaturePartReferenceSet;
161 interface IOpcSignatureReference;
162 interface IOpcSignatureReferenceSet;
163 interface IOpcSignatureRelationshipReference;
164 interface IOpcSignatureRelationshipReferenceEnumerator;
165 interface IOpcSignatureRelationshipReferenceSet;
166 interface IOpcRelationshipSelectorEnumerator;
167 interface IOpcSignatureReferenceEnumerator;
168 interface IOpcSignatureCustomObjectEnumerator;
169 interface IOpcUri;
170
171 typedef enum {
172 OPC_CANONICALIZATION_NONE = 0,
173 OPC_CANONICALIZATION_C14N = 1,
174 OPC_CANONICALIZATION_C14N_WITH_COMMENTS = 2
175 } OPC_CANONICALIZATION_METHOD;
176
177 typedef enum {
178 OPC_CERTIFICATE_IN_CERTIFICATE_PART = 0,
179 OPC_CERTIFICATE_IN_SIGNATURE_PART = 1,
180 OPC_CERTIFICATE_NOT_EMBEDDED = 2
181 } OPC_CERTIFICATE_EMBEDDING_OPTION;
182
183
184 typedef [v1_enum] enum {
185 OPC_COMPRESSION_NONE = -1,
186 OPC_COMPRESSION_NORMAL = 0,
187 OPC_COMPRESSION_MAXIMUM = 1,
188 OPC_COMPRESSION_FAST = 2,
189 OPC_COMPRESSION_SUPERFAST = 3
190 } OPC_COMPRESSION_OPTIONS;
191
192 typedef [v1_enum] enum {
193 OPC_READ_DEFAULT = 0x0,
194 OPC_VALIDATE_ON_LOAD = 0x1,
195 OPC_CACHE_ON_ACCESS = 0x2
196 } OPC_READ_FLAGS;
197
198 typedef enum {
199 OPC_RELATIONSHIP_SELECT_BY_ID = 0,
200 OPC_RELATIONSHIP_SELECT_BY_TYPE = 1,
201 } OPC_RELATIONSHIP_SELECTOR;
202
203 typedef enum {
204 OPC_RELATIONSHIP_SIGN_USING_SELECTORS = 0,
205 OPC_RELATIONSHIP_SIGN_PART = 1
206 } OPC_RELATIONSHIPS_SIGNING_OPTION;
207
208 typedef enum OPC_SIGNATURE_VALIDATION_RESULT {
209 OPC_SIGNATURE_VALID = 0,
210 OPC_SIGNATURE_INVALID = -1,
211 } OPC_SIGNATURE_VALIDATION_RESULT;
212
213 typedef enum {
214 OPC_SIGNATURE_TIME_FORMAT_MILLISECONDS = 0,
215 OPC_SIGNATURE_TIME_FORMAT_SECONDS = 1,
216 OPC_SIGNATURE_TIME_FORMAT_MINUTES = 2,
217 OPC_SIGNATURE_TIME_FORMAT_DAYS = 3,
218 OPC_SIGNATURE_TIME_FORMAT_MONTHS = 4,
219 OPC_SIGNATURE_TIME_FORMAT_YEARS = 5
220 } OPC_SIGNATURE_TIME_FORMAT;
221
222 typedef [v1_enum] enum {
223 OPC_STREAM_IO_READ = 1,
224 OPC_STREAM_IO_WRITE = 2
225 } OPC_STREAM_IO_MODE;
226
227 typedef [v1_enum] enum {
228 OPC_URI_TARGET_MODE_INTERNAL = 0,
229 OPC_URI_TARGET_MODE_EXTERNAL = 1
230 } OPC_URI_TARGET_MODE;
231
232 typedef [v1_enum] enum {
233 OPC_WRITE_DEFAULT = 0x0,
234 OPC_WRITE_FORCE_ZIP32 = 0x1
235 } OPC_WRITE_FLAGS;
236
237cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(OPC_READ_FLAGS);")
238cpp_quote("DEFINE_ENUM_FLAG_OPERATORS(OPC_WRITE_FLAGS);")
239
240 [object, uuid (42195949-3b79-4fc8-89c6-FC7FB979EE71), pointer_default (ref)]
241 interface IOpcPart : IUnknown {
242 HRESULT GetRelationshipSet ([out, retval] IOpcRelationshipSet **relationshipSet);
243 HRESULT GetContentStream ([out, retval] IStream **stream);
244 HRESULT GetName ([out, retval] IOpcPartUri **name);
245 HRESULT GetContentType ([out, string, retval] LPWSTR *contentType);
246 HRESULT GetCompressionOptions ([out, retval] OPC_COMPRESSION_OPTIONS *compressionOptions);
247 }
248
249 [object, uuid (42195949-3b79-4fc8-89c6-FC7FB979EE75), pointer_default (ref)]
250 interface IOpcPartEnumerator : IUnknown {
251 HRESULT MoveNext ([out, retval] BOOL *hasNext);
252 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
253 HRESULT GetCurrent ([out, retval] IOpcPart **part);
254 HRESULT Clone ([out, retval] IOpcPartEnumerator **copy);
255 }
256
257 [object, uuid (42195949-3b79-4fc8-89c6-FC7FB979EE73), pointer_default (ref)]
258 interface IOpcPartSet : IUnknown {
259 HRESULT GetPart ([in] IOpcPartUri *name,[out, retval] IOpcPart **part);
260 HRESULT CreatePart ([in] IOpcPartUri *name,[in, string] LPCWSTR contentType,[in] OPC_COMPRESSION_OPTIONS compressionOptions,[out, retval] IOpcPart **part);
261 HRESULT DeletePart ([in] IOpcPartUri *name);
262 HRESULT PartExists ([in] IOpcPartUri *name,[out, retval] BOOL *partExists);
263 HRESULT GetEnumerator ([out, retval] IOpcPartEnumerator **partEnumerator);
264 }
265
266 [object, uuid (42195949-3b79-4fc8-89c6-FC7FB979EE70), pointer_default (ref)]
267 interface IOpcPackage : IUnknown {
268 HRESULT GetPartSet ([out, retval] IOpcPartSet **partSet);
269 HRESULT GetRelationshipSet ([out, retval] IOpcRelationshipSet **relationshipSet);
270 }
271
272 [object, uuid (42195949-3b79-4fc8-89c6-FC7FB979EE72), pointer_default (ref)]
273 interface IOpcRelationship : IUnknown {
274 HRESULT GetId ([out, string, retval] LPWSTR *relationshipIdentifier);
275 HRESULT GetRelationshipType ([out, string, retval] LPWSTR *relationshipType);
276 HRESULT GetSourceUri ([out, retval] IOpcUri **sourceUri);
277 HRESULT GetTargetUri ([out, retval] IUri **targetUri);
278 HRESULT GetTargetMode ([out, retval] OPC_URI_TARGET_MODE *targetMode);
279 }
280
281 [object, uuid (42195949-3b79-4fc8-89c6-FC7FB979EE76), pointer_default (ref)]
282 interface IOpcRelationshipEnumerator : IUnknown {
283 HRESULT MoveNext ([out, retval] BOOL *hasNext);
284 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
285 HRESULT GetCurrent ([out, retval] IOpcRelationship **relationship);
286 HRESULT Clone ([out, retval] IOpcRelationshipEnumerator **copy);
287 }
288
289 [object, uuid (f8f26c7f-b28f-4899-84c8-5d5639ede75f), nonextensible, pointer_default (ref)]
290 interface IOpcRelationshipSelector : IUnknown {
291 HRESULT GetSelectorType ([out, retval] OPC_RELATIONSHIP_SELECTOR *selector);
292 HRESULT GetSelectionCriterion ([out, string, retval] LPWSTR *selectionCriterion);
293 }
294
295 [object, uuid (42195949-3b79-4fc8-89c6-FC7FB979EE74), pointer_default (ref)]
296 interface IOpcRelationshipSet : IUnknown {
297 HRESULT GetRelationship ([in, string] LPCWSTR relationshipIdentifier,[out, retval] IOpcRelationship **relationship);
298 HRESULT CreateRelationship ([in, string, unique] LPCWSTR relationshipIdentifier,[in, string] LPCWSTR relationshipType,[in] IUri *targetUri,[in] OPC_URI_TARGET_MODE targetMode,[out, retval] IOpcRelationship **relationship);
299 HRESULT DeleteRelationship ([in, string] LPCWSTR relationshipIdentifier);
300 HRESULT RelationshipExists ([in, string] LPCWSTR relationshipIdentifier,[out, retval] BOOL *relationshipExists);
301 HRESULT GetEnumerator ([out, retval] IOpcRelationshipEnumerator **relationshipEnumerator);
302 HRESULT GetEnumeratorForType ([in, string] LPCWSTR relationshipType,[out, retval] IOpcRelationshipEnumerator **relationshipEnumerator);
303 HRESULT GetRelationshipsContentStream ([out, retval] IStream **contents);
304 }
305
306 [object, uuid (5d77a19e-62c1-44e7-becd-45da5ae51a56), nonextensible, pointer_default (unique)]
307 interface IOpcSignatureCustomObject : IUnknown {
308 HRESULT GetXml ([out, size_is (,*count)] UINT8 **xmlMarkup,[out] UINT32 *count);
309 }
310
311 [object, uuid (5ee4fe1d-e1b0-4683-8079-7ea0fcf80b4c), nonextensible, pointer_default (ref)]
312 interface IOpcSignatureCustomObjectEnumerator : IUnknown {
313 HRESULT MoveNext ([out, retval] BOOL *hasNext);
314 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
315 HRESULT GetCurrent ([out, retval] IOpcSignatureCustomObject **customObject);
316 HRESULT Clone ([out, retval] IOpcSignatureCustomObjectEnumerator **copy);
317 };
318
319 [object, uuid (e24231ca-59f4-484e-b64b-36eeda36072c), nonextensible, pointer_default (unique)]
320 interface IOpcSignaturePartReference : IUnknown {
321 HRESULT GetPartName ([out, retval] IOpcPartUri **partName);
322 HRESULT GetContentType ([out, string, retval] LPWSTR *contentType);
323 HRESULT GetDigestMethod ([out, string, retval] LPWSTR *digestMethod);
324 HRESULT GetDigestValue ([out, size_is (,*count)] UINT8 **digestValue,[out] UINT32 *count);
325 HRESULT GetTransformMethod ([out, retval] OPC_CANONICALIZATION_METHOD *transformMethod);
326 }
327
328 [object, uuid (80eb1561-8c77-49cf-8266-459b356ee99a), nonextensible, pointer_default (ref)]
329 interface IOpcSignaturePartReferenceEnumerator : IUnknown {
330 HRESULT MoveNext ([out, retval] BOOL *hasNext);
331 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
332 HRESULT GetCurrent ([out, retval] IOpcSignaturePartReference **partReference);
333 HRESULT Clone ([out, retval] IOpcSignaturePartReferenceEnumerator **copy);
334 };
335
336 [object, uuid (1b47005e-3011-4edc-be6f-0f65e5ab0342), nonextensible, pointer_default (unique)]
337 interface IOpcSignatureReference : IUnknown {
338 HRESULT GetId ([out, string, retval] LPWSTR *referenceId);
339 HRESULT GetUri ([out, retval] IUri **referenceUri);
340 HRESULT GetType ([out, string, retval] LPWSTR *type);
341 HRESULT GetTransformMethod ([out, retval] OPC_CANONICALIZATION_METHOD *transformMethod);
342 HRESULT GetDigestMethod ([out, string, retval] LPWSTR *digestMethod);
343 HRESULT GetDigestValue ([out, size_is (,*count)] UINT8 **digestValue,[out] UINT32 *count);
344 }
345
346 [object, uuid (cfa59a45-28b1-4868-969e-fa8097fdc12a), nonextensible, pointer_default (ref)]
347 interface IOpcSignatureReferenceEnumerator : IUnknown {
348 HRESULT MoveNext ([out, retval] BOOL *hasNext);
349 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
350 HRESULT GetCurrent ([out, retval] IOpcSignatureReference **reference);
351 HRESULT Clone ([out, retval] IOpcSignatureReferenceEnumerator **copy);
352 };
353
354 [object, uuid (773ba3e4-f021-48e4-aa04-9816db5d3495), nonextensible, pointer_default (ref)]
355 interface IOpcSignatureRelationshipReferenceEnumerator : IUnknown {
356 HRESULT MoveNext ([out, retval] BOOL *hasNext);
357 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
358 HRESULT GetCurrent ([out, retval] IOpcSignatureRelationshipReference **relationshipReference);
359 HRESULT Clone ([out, retval] IOpcSignatureRelationshipReferenceEnumerator **copy);
360 };
361
362 [object, uuid (57babac6-9d4a-4e50-8b86-e5d4051eae7c), nonextensible, pointer_default (unique)]
363 interface IOpcSignatureRelationshipReference : IUnknown {
364 HRESULT GetSourceUri ([out, retval] IOpcUri **sourceUri);
365 HRESULT GetDigestMethod ([out, string, retval] LPWSTR *digestMethod);
366 HRESULT GetDigestValue ([out, size_is (,*count)] UINT8 **digestValue,[out] UINT32 *count);
367 HRESULT GetTransformMethod ([out, retval] OPC_CANONICALIZATION_METHOD *transformMethod);
368 HRESULT GetRelationshipSigningOption ([out, retval] OPC_RELATIONSHIPS_SIGNING_OPTION *relationshipSigningOption);
369 HRESULT GetRelationshipSelectorEnumerator ([out, retval] IOpcRelationshipSelectorEnumerator **selectorEnumerator);
370 }
371
372 [object, uuid (5e50a181-a91b-48ac-88d2-bca3d8f8c0b1), nonextensible, pointer_default (ref)]
373 interface IOpcRelationshipSelectorEnumerator : IUnknown {
374 HRESULT MoveNext ([out, retval] BOOL *hasNext);
375 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
376 HRESULT GetCurrent ([out, retval] IOpcRelationshipSelector **relationshipSelector);
377 HRESULT Clone ([out, retval] IOpcRelationshipSelectorEnumerator **copy);
378 };
379
380 [object, local, uuid (85131937-8f24-421f-b439-59ab24d140b8), nonextensible, pointer_default (ref)]
381 interface IOpcCertificateEnumerator : IUnknown {
382 HRESULT MoveNext ([out, retval] BOOL *hasNext);
383 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
384 HRESULT GetCurrent ([out, retval] const CERT_CONTEXT **certificate);
385 HRESULT Clone ([out, retval] IOpcCertificateEnumerator **copy);
386 };
387
388 [object, local, uuid (56ea4325-8e2d-4167-b1a4-e486d24c8fa7), nonextensible, pointer_default (ref)]
389 interface IOpcCertificateSet : IUnknown {
390 HRESULT Add ([in] const CERT_CONTEXT *certificate);
391 HRESULT Remove ([in] const CERT_CONTEXT *certificate);
392 HRESULT GetEnumerator ([out, retval] IOpcCertificateEnumerator **certificateEnumerator);
393 }
394
395 [object, uuid (967b6882-0ba3-4358-b9e7-b64c75063c5e), nonextensible, pointer_default (ref)]
396 interface IOpcDigitalSignatureEnumerator : IUnknown {
397 HRESULT MoveNext ([out, retval] BOOL *hasNext);
398 HRESULT MovePrevious ([out, retval] BOOL *hasPrevious);
399 HRESULT GetCurrent ([out, retval] IOpcDigitalSignature **digitalSignature);
400 HRESULT Clone ([out, retval] IOpcDigitalSignatureEnumerator **copy);
401 };
402
403 [object, local, uuid (d5e62a0b-696d-462f-94df-72e33cef2659), nonextensible, pointer_default (ref)]
404 interface IOpcDigitalSignatureManager : IUnknown {
405 HRESULT GetSignatureOriginPartName ([out, retval] IOpcPartUri **signatureOriginPartName);
406 HRESULT SetSignatureOriginPartName ([in, unique] IOpcPartUri *signatureOriginPartName);
407 HRESULT GetSignatureEnumerator ([out, retval] IOpcDigitalSignatureEnumerator **signatureEnumerator);
408 HRESULT RemoveSignature ([in] IOpcPartUri *signaturePartName);
409 HRESULT CreateSigningOptions ([out, retval] IOpcSigningOptions **signingOptions);
410 HRESULT Validate ([in] IOpcDigitalSignature *signature,[in] const CERT_CONTEXT *certificate,[out, retval] OPC_SIGNATURE_VALIDATION_RESULT *validationResult);
411 HRESULT Sign ([in] const CERT_CONTEXT *certificate,[in] IOpcSigningOptions *signingOptions,[out, retval] IOpcDigitalSignature **digitalSignature);
412 HRESULT ReplaceSignatureXml ([in] IOpcPartUri *signaturePartName,[in, size_is (count)] const UINT8 *newSignatureXml,[in] UINT32 count,[out, retval] IOpcDigitalSignature **digitalSignature);
413 };
414
415 [object, uuid (6c9fe28c-ecd9-4b22-9d36-7fdde670fec0), nonextensible, pointer_default (ref)]
416 interface IOpcSignaturePartReferenceSet : IUnknown {
417 HRESULT Create ([in] IOpcPartUri *partUri,[in, unique] LPCWSTR digestMethod,[in] OPC_CANONICALIZATION_METHOD transformMethod,[out, retval] IOpcSignaturePartReference **partReference);
418 HRESULT Delete ([in] IOpcSignaturePartReference *partReference);
419 HRESULT GetEnumerator ([out, retval] IOpcSignaturePartReferenceEnumerator **partReferenceEnumerator);
420 }
421
422 [object, uuid (6e34c269-a4d3-47c0-b5c4-87ff2b3b6136), nonextensible, pointer_default (ref)]
423 interface IOpcRelationshipSelectorSet : IUnknown {
424 HRESULT Create ([in] OPC_RELATIONSHIP_SELECTOR selector,[in] LPCWSTR selectionCriterion,[out, retval] IOpcRelationshipSelector **relationshipSelector);
425 HRESULT Delete ([in] IOpcRelationshipSelector *relationshipSelector);
426 HRESULT GetEnumerator ([out, retval] IOpcRelationshipSelectorEnumerator **relationshipSelectorEnumerator);
427 }
428
429 [object, uuid (9f863ca5-3631-404c-828d-807e0715069b), nonextensible, pointer_default (ref)]
430 interface IOpcSignatureRelationshipReferenceSet : IUnknown {
431 HRESULT Create ([in] IOpcUri *sourceUri,[in, unique] LPCWSTR digestMethod,[in] OPC_RELATIONSHIPS_SIGNING_OPTION relationshipSigningOption,[in, unique] IOpcRelationshipSelectorSet *selectorSet,[in] OPC_CANONICALIZATION_METHOD transformMethod,[out, retval] IOpcSignatureRelationshipReference **relationshipReference);
432 HRESULT CreateRelationshipSelectorSet ([out] IOpcRelationshipSelectorSet **selectorSet);
433 HRESULT Delete ([in] IOpcSignatureRelationshipReference *relationshipReference);
434 HRESULT GetEnumerator ([out, retval] IOpcSignatureRelationshipReferenceEnumerator **relationshipReferenceEnumerator);
435 }
436
437 [object, uuid (f3b02d31-ab12-42dd-9e2f-2b16761c3c1e), nonextensible, pointer_default (ref)]
438 interface IOpcSignatureReferenceSet : IUnknown {
439 HRESULT Create ([in] IUri *referenceUri,[in, unique] LPCWSTR referenceId,[in, unique] LPCWSTR type,[in, unique] LPCWSTR digestMethod,[in] OPC_CANONICALIZATION_METHOD transformMethod,[out, retval] IOpcSignatureReference **reference);
440 HRESULT Delete ([in] IOpcSignatureReference *reference);
441 HRESULT GetEnumerator ([out, retval] IOpcSignatureReferenceEnumerator **referenceEnumerator);
442 }
443
444 [object, uuid (8f792ac5-7947-4e11-bc3d-2659ff046ae1), nonextensible, pointer_default (ref)]
445 interface IOpcSignatureCustomObjectSet : IUnknown {
446 HRESULT Create ([in, size_is (count)] const UINT8 *xmlMarkup,[in] UINT32 count,[out, retval] IOpcSignatureCustomObject **customObject);
447 HRESULT Delete ([in] IOpcSignatureCustomObject *customObject);
448 HRESULT GetEnumerator ([out, retval] IOpcSignatureCustomObjectEnumerator **customObjectEnumerator);
449 }
450
451 [object, local, uuid (52ab21dd-1cd0-4949-bc80-0c1232d00cb4), nonextensible, pointer_default (unique)]
452 interface IOpcDigitalSignature : IUnknown {
453 HRESULT GetNamespaces ([out, size_is (,*count)] LPWSTR **prefixes,[out, size_is (,*count)] LPWSTR **namespaces,[out] UINT32 *count);
454 HRESULT GetSignatureId ([out, string, retval] LPWSTR *signatureId);
455 HRESULT GetSignaturePartName ([out, retval] IOpcPartUri **signaturePartName);
456 HRESULT GetSignatureMethod ([out, string, retval] LPWSTR *signatureMethod);
457 HRESULT GetCanonicalizationMethod ([out, retval] OPC_CANONICALIZATION_METHOD *canonicalizationMethod);
458 HRESULT GetSignatureValue ([out, size_is (,*count)] UINT8 **signatureValue,[out] UINT32 *count);
459 HRESULT GetSignaturePartReferenceEnumerator ([out, retval] IOpcSignaturePartReferenceEnumerator **partReferenceEnumerator);
460 HRESULT GetSignatureRelationshipReferenceEnumerator ([out, retval] IOpcSignatureRelationshipReferenceEnumerator **relationshipReferenceEnumerator);
461 HRESULT GetSigningTime ([out, string, retval] LPWSTR *signingTime);
462 HRESULT GetTimeFormat ([out, retval] OPC_SIGNATURE_TIME_FORMAT *timeFormat);
463 HRESULT GetPackageObjectReference ([out, retval] IOpcSignatureReference **packageObjectReference);
464 HRESULT GetCertificateEnumerator ([out, retval] IOpcCertificateEnumerator **certificateEnumerator);
465 HRESULT GetCustomReferenceEnumerator ([out, retval] IOpcSignatureReferenceEnumerator **customReferenceEnumerator);
466 HRESULT GetCustomObjectEnumerator ([out, retval] IOpcSignatureCustomObjectEnumerator **customObjectEnumerator);
467 HRESULT GetSignatureXml ([out, size_is (,*count)] UINT8 **signatureXml,[out] UINT32 *count);
468 };
469
470 [object, uuid (50d2d6a5-7aeb-46c0-b241-43ab0e9b407e), nonextensible, pointer_default (ref)]
471 interface IOpcSigningOptions : IUnknown {
472 HRESULT GetSignatureId ([out, string, retval] LPWSTR *signatureId);
473 HRESULT SetSignatureId ([in] LPCWSTR signatureId);
474 HRESULT GetSignatureMethod ([out, string, retval] LPWSTR *signatureMethod);
475 HRESULT SetSignatureMethod ([in] LPCWSTR signatureMethod);
476 HRESULT GetDefaultDigestMethod ([out, string, retval] LPWSTR *digestMethod);
477 HRESULT SetDefaultDigestMethod ([in] LPCWSTR digestMethod);
478 HRESULT GetCertificateEmbeddingOption ([out, retval] OPC_CERTIFICATE_EMBEDDING_OPTION *embeddingOption);
479 HRESULT SetCertificateEmbeddingOption ([in] OPC_CERTIFICATE_EMBEDDING_OPTION embeddingOption);
480 HRESULT GetTimeFormat ([out, retval] OPC_SIGNATURE_TIME_FORMAT *timeFormat);
481 HRESULT SetTimeFormat ([in] OPC_SIGNATURE_TIME_FORMAT timeFormat);
482 HRESULT GetSignaturePartReferenceSet ([out, retval] IOpcSignaturePartReferenceSet **partReferenceSet);
483 HRESULT GetSignatureRelationshipReferenceSet ([out, retval] IOpcSignatureRelationshipReferenceSet **relationshipReferenceSet);
484 HRESULT GetCustomObjectSet ([out, retval] IOpcSignatureCustomObjectSet **customObjectSet);
485 HRESULT GetCustomReferenceSet ([out, retval] IOpcSignatureReferenceSet **customReferenceSet);
486 HRESULT GetCertificateSet ([out, retval] IOpcCertificateSet **certificateSet);
487 HRESULT GetSignaturePartName ([out, retval] IOpcPartUri **signaturePartName);
488 HRESULT SetSignaturePartName ([in, unique] IOpcPartUri *signaturePartName);
489 };
490
491 [object, uuid (6d0b4446-cd73-4ab3-94f4-8ccdf6116154), pointer_default (ref)]
492 interface IOpcFactory : IUnknown {
493 HRESULT CreatePackageRootUri ([out, retval] IOpcUri **rootUri);
494 HRESULT CreatePartUri ([in, string] LPCWSTR pwzUri,[out, retval] IOpcPartUri **partUri);
495 [local] HRESULT CreateStreamOnFile ([in, string] LPCWSTR filename,[in] OPC_STREAM_IO_MODE ioMode,[in, unique] LPSECURITY_ATTRIBUTES securityAttributes,[in] DWORD dwFlagsAndAttributes,[out, retval] IStream **stream);
496 HRESULT CreatePackage ([out, retval] IOpcPackage **package);
497 HRESULT ReadPackageFromStream ([in] IStream *stream,[in] OPC_READ_FLAGS flags,[out, retval] IOpcPackage **package);
498 HRESULT WritePackageToStream ([in] IOpcPackage *package,[in] OPC_WRITE_FLAGS flags,[in] IStream *stream);
499 HRESULT CreateDigitalSignatureManager ([in] IOpcPackage *package,[out, retval] IOpcDigitalSignatureManager **signatureManager);
500 }
501
502 [uuid (6b2d6ba0-9f3e-4f27-920b-313cc426a39e)]
503 coclass OpcFactory {
504 interface IOpcFactory;
505 };
506};
507cpp_quote("#endif")
508
509cpp_quote("#endif")
Note: See TracBrowser for help on using the repository browser.