|  | /*** Autogenerated by WIDL 10.16 from include/msopc.idl - Do not edit ***/ | 
|  |  | 
|  | #ifdef _WIN32 | 
|  | #ifndef __REQUIRED_RPCNDR_H_VERSION__ | 
|  | #define __REQUIRED_RPCNDR_H_VERSION__ 475 | 
|  | #endif | 
|  | #include <rpc.h> | 
|  | #include <rpcndr.h> | 
|  | #endif | 
|  |  | 
|  | #ifndef COM_NO_WINDOWS_H | 
|  | #include <windows.h> | 
|  | #include <ole2.h> | 
|  | #endif | 
|  |  | 
|  | #ifndef __msopc_h__ | 
|  | #define __msopc_h__ | 
|  |  | 
|  | /* Forward declarations */ | 
|  |  | 
|  | #ifndef __IOpcUri_FWD_DEFINED__ | 
|  | #define __IOpcUri_FWD_DEFINED__ | 
|  | typedef interface IOpcUri IOpcUri; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcUri; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPartUri_FWD_DEFINED__ | 
|  | #define __IOpcPartUri_FWD_DEFINED__ | 
|  | typedef interface IOpcPartUri IOpcPartUri; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPartUri; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPart_FWD_DEFINED__ | 
|  | #define __IOpcPart_FWD_DEFINED__ | 
|  | typedef interface IOpcPart IOpcPart; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPart; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPartEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcPartEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcPartEnumerator IOpcPartEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPartEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPartSet_FWD_DEFINED__ | 
|  | #define __IOpcPartSet_FWD_DEFINED__ | 
|  | typedef interface IOpcPartSet IOpcPartSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPartSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPackage_FWD_DEFINED__ | 
|  | #define __IOpcPackage_FWD_DEFINED__ | 
|  | typedef interface IOpcPackage IOpcPackage; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPackage; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationship_FWD_DEFINED__ | 
|  | #define __IOpcRelationship_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationship IOpcRelationship; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationship; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipEnumerator IOpcRelationshipEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipSelector_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipSelector_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipSelector IOpcRelationshipSelector; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipSelector; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipSet_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipSet_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipSet IOpcRelationshipSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureCustomObject_FWD_DEFINED__ | 
|  | #define __IOpcSignatureCustomObject_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureCustomObject IOpcSignatureCustomObject; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureCustomObject; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureCustomObjectEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcSignatureCustomObjectEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureCustomObjectEnumerator IOpcSignatureCustomObjectEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureCustomObjectEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignaturePartReference_FWD_DEFINED__ | 
|  | #define __IOpcSignaturePartReference_FWD_DEFINED__ | 
|  | typedef interface IOpcSignaturePartReference IOpcSignaturePartReference; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignaturePartReference; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignaturePartReferenceEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcSignaturePartReferenceEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcSignaturePartReferenceEnumerator IOpcSignaturePartReferenceEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignaturePartReferenceEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureReference_FWD_DEFINED__ | 
|  | #define __IOpcSignatureReference_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureReference IOpcSignatureReference; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureReference; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureReferenceEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcSignatureReferenceEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureReferenceEnumerator IOpcSignatureReferenceEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureReferenceEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureRelationshipReferenceEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReferenceEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureRelationshipReferenceEnumerator IOpcSignatureRelationshipReferenceEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureRelationshipReferenceEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureRelationshipReference_FWD_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReference_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureRelationshipReference IOpcSignatureRelationshipReference; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureRelationshipReference; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipSelectorEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipSelectorEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipSelectorEnumerator IOpcRelationshipSelectorEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipSelectorEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcCertificateEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcCertificateEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcCertificateEnumerator IOpcCertificateEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcCertificateEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcCertificateSet_FWD_DEFINED__ | 
|  | #define __IOpcCertificateSet_FWD_DEFINED__ | 
|  | typedef interface IOpcCertificateSet IOpcCertificateSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcCertificateSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcDigitalSignatureEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcDigitalSignatureEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcDigitalSignatureEnumerator IOpcDigitalSignatureEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcDigitalSignatureEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcDigitalSignatureManager_FWD_DEFINED__ | 
|  | #define __IOpcDigitalSignatureManager_FWD_DEFINED__ | 
|  | typedef interface IOpcDigitalSignatureManager IOpcDigitalSignatureManager; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcDigitalSignatureManager; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignaturePartReferenceSet_FWD_DEFINED__ | 
|  | #define __IOpcSignaturePartReferenceSet_FWD_DEFINED__ | 
|  | typedef interface IOpcSignaturePartReferenceSet IOpcSignaturePartReferenceSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignaturePartReferenceSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipSelectorSet_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipSelectorSet_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipSelectorSet IOpcRelationshipSelectorSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipSelectorSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureRelationshipReferenceSet_FWD_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReferenceSet_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureRelationshipReferenceSet IOpcSignatureRelationshipReferenceSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureRelationshipReferenceSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureReferenceSet_FWD_DEFINED__ | 
|  | #define __IOpcSignatureReferenceSet_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureReferenceSet IOpcSignatureReferenceSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureReferenceSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureCustomObjectSet_FWD_DEFINED__ | 
|  | #define __IOpcSignatureCustomObjectSet_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureCustomObjectSet IOpcSignatureCustomObjectSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureCustomObjectSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcDigitalSignature_FWD_DEFINED__ | 
|  | #define __IOpcDigitalSignature_FWD_DEFINED__ | 
|  | typedef interface IOpcDigitalSignature IOpcDigitalSignature; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcDigitalSignature; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSigningOptions_FWD_DEFINED__ | 
|  | #define __IOpcSigningOptions_FWD_DEFINED__ | 
|  | typedef interface IOpcSigningOptions IOpcSigningOptions; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSigningOptions; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcFactory_FWD_DEFINED__ | 
|  | #define __IOpcFactory_FWD_DEFINED__ | 
|  | typedef interface IOpcFactory IOpcFactory; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcFactory; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __OpcFactory_FWD_DEFINED__ | 
|  | #define __OpcFactory_FWD_DEFINED__ | 
|  | #ifdef __cplusplus | 
|  | typedef class OpcFactory OpcFactory; | 
|  | #else | 
|  | typedef struct OpcFactory OpcFactory; | 
|  | #endif /* defined __cplusplus */ | 
|  | #endif /* defined __OpcFactory_FWD_DEFINED__ */ | 
|  |  | 
|  | /* Headers for imported files */ | 
|  |  | 
|  | #include <oaidl.h> | 
|  | #include <ocidl.h> | 
|  | #include <urlmon.h> | 
|  | #include <wincrypt.h> | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | extern "C" { | 
|  | #endif | 
|  |  | 
|  | #include <winapifamily.h> | 
|  | #if NTDDI_VERSION >= 0x06010000 | 
|  | #ifndef __IOpcUri_FWD_DEFINED__ | 
|  | #define __IOpcUri_FWD_DEFINED__ | 
|  | typedef interface IOpcUri IOpcUri; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcUri; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPartUri_FWD_DEFINED__ | 
|  | #define __IOpcPartUri_FWD_DEFINED__ | 
|  | typedef interface IOpcPartUri IOpcPartUri; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPartUri; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcUri interface | 
|  | */ | 
|  | #ifndef __IOpcUri_INTERFACE_DEFINED__ | 
|  | #define __IOpcUri_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcUri, 0xbc9c1b9b, 0xd62c, 0x49eb, 0xae,0xf0, 0x3b,0x4e,0x0b,0x28,0xeb,0xed); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("bc9c1b9b-d62c-49eb-aef0-3b4e0b28ebed") | 
|  | IOpcUri : public IUri | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelationshipsPartUri( | 
|  | IOpcPartUri **relationshipPartUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelativeUri( | 
|  | IOpcPartUri *targetPartUri, | 
|  | IUri **relativeUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CombinePartUri( | 
|  | IUri *relativeUri, | 
|  | IOpcPartUri **combinedUri) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcUri, 0xbc9c1b9b, 0xd62c, 0x49eb, 0xae,0xf0, 0x3b,0x4e,0x0b,0x28,0xeb,0xed) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcUriVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcUri *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcUri *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcUri *This); | 
|  |  | 
|  | /*** IUri methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetPropertyBSTR)( | 
|  | IOpcUri *This, | 
|  | Uri_PROPERTY uriProp, | 
|  | BSTR *pbstrProperty, | 
|  | DWORD dwFlags); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPropertyLength)( | 
|  | IOpcUri *This, | 
|  | Uri_PROPERTY uriProp, | 
|  | DWORD *pcchProperty, | 
|  | DWORD dwFlags); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPropertyDWORD)( | 
|  | IOpcUri *This, | 
|  | Uri_PROPERTY uriProp, | 
|  | DWORD *pdwProperty, | 
|  | DWORD dwFlags); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *HasProperty)( | 
|  | IOpcUri *This, | 
|  | Uri_PROPERTY uriProp, | 
|  | WINBOOL *pfHasProperty); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetAbsoluteUri)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrAbsoluteUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetAuthority)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrAuthority); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDisplayUri)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrDisplayString); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDomain)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrDomain); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetExtension)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrExtension); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetFragment)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrFragment); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetHost)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrHost); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPassword)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrPassword); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPath)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrPath); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPathAndQuery)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrPathAndQuery); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetQuery)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrQuery); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRawUri)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrRawUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSchemeName)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrSchemeName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUserInfo)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrUserInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUserName)( | 
|  | IOpcUri *This, | 
|  | BSTR *pbstrUserName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetHostType)( | 
|  | IOpcUri *This, | 
|  | DWORD *pdwHostType); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPort)( | 
|  | IOpcUri *This, | 
|  | DWORD *pdwPort); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetScheme)( | 
|  | IOpcUri *This, | 
|  | DWORD *pdwScheme); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetZone)( | 
|  | IOpcUri *This, | 
|  | DWORD *pdwZone); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetProperties)( | 
|  | IOpcUri *This, | 
|  | LPDWORD pdwFlags); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *IsEqual)( | 
|  | IOpcUri *This, | 
|  | IUri *pUri, | 
|  | WINBOOL *pfEqual); | 
|  |  | 
|  | /*** IOpcUri methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationshipsPartUri)( | 
|  | IOpcUri *This, | 
|  | IOpcPartUri **relationshipPartUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelativeUri)( | 
|  | IOpcUri *This, | 
|  | IOpcPartUri *targetPartUri, | 
|  | IUri **relativeUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CombinePartUri)( | 
|  | IOpcUri *This, | 
|  | IUri *relativeUri, | 
|  | IOpcPartUri **combinedUri); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcUriVtbl; | 
|  |  | 
|  | interface IOpcUri { | 
|  | CONST_VTBL IOpcUriVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcUri_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcUri_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IUri methods ***/ | 
|  | #define IOpcUri_GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags) (This)->lpVtbl->GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags) | 
|  | #define IOpcUri_GetPropertyLength(This,uriProp,pcchProperty,dwFlags) (This)->lpVtbl->GetPropertyLength(This,uriProp,pcchProperty,dwFlags) | 
|  | #define IOpcUri_GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags) (This)->lpVtbl->GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags) | 
|  | #define IOpcUri_HasProperty(This,uriProp,pfHasProperty) (This)->lpVtbl->HasProperty(This,uriProp,pfHasProperty) | 
|  | #define IOpcUri_GetAbsoluteUri(This,pbstrAbsoluteUri) (This)->lpVtbl->GetAbsoluteUri(This,pbstrAbsoluteUri) | 
|  | #define IOpcUri_GetAuthority(This,pbstrAuthority) (This)->lpVtbl->GetAuthority(This,pbstrAuthority) | 
|  | #define IOpcUri_GetDisplayUri(This,pbstrDisplayString) (This)->lpVtbl->GetDisplayUri(This,pbstrDisplayString) | 
|  | #define IOpcUri_GetDomain(This,pbstrDomain) (This)->lpVtbl->GetDomain(This,pbstrDomain) | 
|  | #define IOpcUri_GetExtension(This,pbstrExtension) (This)->lpVtbl->GetExtension(This,pbstrExtension) | 
|  | #define IOpcUri_GetFragment(This,pbstrFragment) (This)->lpVtbl->GetFragment(This,pbstrFragment) | 
|  | #define IOpcUri_GetHost(This,pbstrHost) (This)->lpVtbl->GetHost(This,pbstrHost) | 
|  | #define IOpcUri_GetPassword(This,pbstrPassword) (This)->lpVtbl->GetPassword(This,pbstrPassword) | 
|  | #define IOpcUri_GetPath(This,pbstrPath) (This)->lpVtbl->GetPath(This,pbstrPath) | 
|  | #define IOpcUri_GetPathAndQuery(This,pbstrPathAndQuery) (This)->lpVtbl->GetPathAndQuery(This,pbstrPathAndQuery) | 
|  | #define IOpcUri_GetQuery(This,pbstrQuery) (This)->lpVtbl->GetQuery(This,pbstrQuery) | 
|  | #define IOpcUri_GetRawUri(This,pbstrRawUri) (This)->lpVtbl->GetRawUri(This,pbstrRawUri) | 
|  | #define IOpcUri_GetSchemeName(This,pbstrSchemeName) (This)->lpVtbl->GetSchemeName(This,pbstrSchemeName) | 
|  | #define IOpcUri_GetUserInfo(This,pbstrUserInfo) (This)->lpVtbl->GetUserInfo(This,pbstrUserInfo) | 
|  | #define IOpcUri_GetUserName(This,pbstrUserName) (This)->lpVtbl->GetUserName(This,pbstrUserName) | 
|  | #define IOpcUri_GetHostType(This,pdwHostType) (This)->lpVtbl->GetHostType(This,pdwHostType) | 
|  | #define IOpcUri_GetPort(This,pdwPort) (This)->lpVtbl->GetPort(This,pdwPort) | 
|  | #define IOpcUri_GetScheme(This,pdwScheme) (This)->lpVtbl->GetScheme(This,pdwScheme) | 
|  | #define IOpcUri_GetZone(This,pdwZone) (This)->lpVtbl->GetZone(This,pdwZone) | 
|  | #define IOpcUri_GetProperties(This,pdwFlags) (This)->lpVtbl->GetProperties(This,pdwFlags) | 
|  | #define IOpcUri_IsEqual(This,pUri,pfEqual) (This)->lpVtbl->IsEqual(This,pUri,pfEqual) | 
|  | /*** IOpcUri methods ***/ | 
|  | #define IOpcUri_GetRelationshipsPartUri(This,relationshipPartUri) (This)->lpVtbl->GetRelationshipsPartUri(This,relationshipPartUri) | 
|  | #define IOpcUri_GetRelativeUri(This,targetPartUri,relativeUri) (This)->lpVtbl->GetRelativeUri(This,targetPartUri,relativeUri) | 
|  | #define IOpcUri_CombinePartUri(This,relativeUri,combinedUri) (This)->lpVtbl->CombinePartUri(This,relativeUri,combinedUri) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcUri_QueryInterface(IOpcUri* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcUri_AddRef(IOpcUri* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcUri_Release(IOpcUri* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IUri methods ***/ | 
|  | static inline HRESULT IOpcUri_GetPropertyBSTR(IOpcUri* This,Uri_PROPERTY uriProp,BSTR *pbstrProperty,DWORD dwFlags) { | 
|  | return This->lpVtbl->GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetPropertyLength(IOpcUri* This,Uri_PROPERTY uriProp,DWORD *pcchProperty,DWORD dwFlags) { | 
|  | return This->lpVtbl->GetPropertyLength(This,uriProp,pcchProperty,dwFlags); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetPropertyDWORD(IOpcUri* This,Uri_PROPERTY uriProp,DWORD *pdwProperty,DWORD dwFlags) { | 
|  | return This->lpVtbl->GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags); | 
|  | } | 
|  | static inline HRESULT IOpcUri_HasProperty(IOpcUri* This,Uri_PROPERTY uriProp,WINBOOL *pfHasProperty) { | 
|  | return This->lpVtbl->HasProperty(This,uriProp,pfHasProperty); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetAbsoluteUri(IOpcUri* This,BSTR *pbstrAbsoluteUri) { | 
|  | return This->lpVtbl->GetAbsoluteUri(This,pbstrAbsoluteUri); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetAuthority(IOpcUri* This,BSTR *pbstrAuthority) { | 
|  | return This->lpVtbl->GetAuthority(This,pbstrAuthority); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetDisplayUri(IOpcUri* This,BSTR *pbstrDisplayString) { | 
|  | return This->lpVtbl->GetDisplayUri(This,pbstrDisplayString); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetDomain(IOpcUri* This,BSTR *pbstrDomain) { | 
|  | return This->lpVtbl->GetDomain(This,pbstrDomain); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetExtension(IOpcUri* This,BSTR *pbstrExtension) { | 
|  | return This->lpVtbl->GetExtension(This,pbstrExtension); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetFragment(IOpcUri* This,BSTR *pbstrFragment) { | 
|  | return This->lpVtbl->GetFragment(This,pbstrFragment); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetHost(IOpcUri* This,BSTR *pbstrHost) { | 
|  | return This->lpVtbl->GetHost(This,pbstrHost); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetPassword(IOpcUri* This,BSTR *pbstrPassword) { | 
|  | return This->lpVtbl->GetPassword(This,pbstrPassword); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetPath(IOpcUri* This,BSTR *pbstrPath) { | 
|  | return This->lpVtbl->GetPath(This,pbstrPath); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetPathAndQuery(IOpcUri* This,BSTR *pbstrPathAndQuery) { | 
|  | return This->lpVtbl->GetPathAndQuery(This,pbstrPathAndQuery); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetQuery(IOpcUri* This,BSTR *pbstrQuery) { | 
|  | return This->lpVtbl->GetQuery(This,pbstrQuery); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetRawUri(IOpcUri* This,BSTR *pbstrRawUri) { | 
|  | return This->lpVtbl->GetRawUri(This,pbstrRawUri); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetSchemeName(IOpcUri* This,BSTR *pbstrSchemeName) { | 
|  | return This->lpVtbl->GetSchemeName(This,pbstrSchemeName); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetUserInfo(IOpcUri* This,BSTR *pbstrUserInfo) { | 
|  | return This->lpVtbl->GetUserInfo(This,pbstrUserInfo); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetUserName(IOpcUri* This,BSTR *pbstrUserName) { | 
|  | return This->lpVtbl->GetUserName(This,pbstrUserName); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetHostType(IOpcUri* This,DWORD *pdwHostType) { | 
|  | return This->lpVtbl->GetHostType(This,pdwHostType); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetPort(IOpcUri* This,DWORD *pdwPort) { | 
|  | return This->lpVtbl->GetPort(This,pdwPort); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetScheme(IOpcUri* This,DWORD *pdwScheme) { | 
|  | return This->lpVtbl->GetScheme(This,pdwScheme); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetZone(IOpcUri* This,DWORD *pdwZone) { | 
|  | return This->lpVtbl->GetZone(This,pdwZone); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetProperties(IOpcUri* This,LPDWORD pdwFlags) { | 
|  | return This->lpVtbl->GetProperties(This,pdwFlags); | 
|  | } | 
|  | static inline HRESULT IOpcUri_IsEqual(IOpcUri* This,IUri *pUri,WINBOOL *pfEqual) { | 
|  | return This->lpVtbl->IsEqual(This,pUri,pfEqual); | 
|  | } | 
|  | /*** IOpcUri methods ***/ | 
|  | static inline HRESULT IOpcUri_GetRelationshipsPartUri(IOpcUri* This,IOpcPartUri **relationshipPartUri) { | 
|  | return This->lpVtbl->GetRelationshipsPartUri(This,relationshipPartUri); | 
|  | } | 
|  | static inline HRESULT IOpcUri_GetRelativeUri(IOpcUri* This,IOpcPartUri *targetPartUri,IUri **relativeUri) { | 
|  | return This->lpVtbl->GetRelativeUri(This,targetPartUri,relativeUri); | 
|  | } | 
|  | static inline HRESULT IOpcUri_CombinePartUri(IOpcUri* This,IUri *relativeUri,IOpcPartUri **combinedUri) { | 
|  | return This->lpVtbl->CombinePartUri(This,relativeUri,combinedUri); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcUri_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcPartUri interface | 
|  | */ | 
|  | #ifndef __IOpcPartUri_INTERFACE_DEFINED__ | 
|  | #define __IOpcPartUri_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcPartUri, 0x7d3babe7, 0x88b2, 0x46ba, 0x85,0xcb, 0x42,0x03,0xcb,0x01,0x6c,0x87); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("7d3babe7-88b2-46ba-85cb-4203cb016c87") | 
|  | IOpcPartUri : public IOpcUri | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE ComparePartUri( | 
|  | IOpcPartUri *partUri, | 
|  | INT32 *comparisonResult) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSourceUri( | 
|  | IOpcUri **sourceUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE IsRelationshipsPartUri( | 
|  | WINBOOL *isRelationshipUri) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcPartUri, 0x7d3babe7, 0x88b2, 0x46ba, 0x85,0xcb, 0x42,0x03,0xcb,0x01,0x6c,0x87) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcPartUriVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcPartUri *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcPartUri *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcPartUri *This); | 
|  |  | 
|  | /*** IUri methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetPropertyBSTR)( | 
|  | IOpcPartUri *This, | 
|  | Uri_PROPERTY uriProp, | 
|  | BSTR *pbstrProperty, | 
|  | DWORD dwFlags); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPropertyLength)( | 
|  | IOpcPartUri *This, | 
|  | Uri_PROPERTY uriProp, | 
|  | DWORD *pcchProperty, | 
|  | DWORD dwFlags); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPropertyDWORD)( | 
|  | IOpcPartUri *This, | 
|  | Uri_PROPERTY uriProp, | 
|  | DWORD *pdwProperty, | 
|  | DWORD dwFlags); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *HasProperty)( | 
|  | IOpcPartUri *This, | 
|  | Uri_PROPERTY uriProp, | 
|  | WINBOOL *pfHasProperty); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetAbsoluteUri)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrAbsoluteUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetAuthority)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrAuthority); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDisplayUri)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrDisplayString); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDomain)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrDomain); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetExtension)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrExtension); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetFragment)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrFragment); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetHost)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrHost); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPassword)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrPassword); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPath)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrPath); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPathAndQuery)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrPathAndQuery); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetQuery)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrQuery); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRawUri)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrRawUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSchemeName)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrSchemeName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUserInfo)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrUserInfo); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUserName)( | 
|  | IOpcPartUri *This, | 
|  | BSTR *pbstrUserName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetHostType)( | 
|  | IOpcPartUri *This, | 
|  | DWORD *pdwHostType); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPort)( | 
|  | IOpcPartUri *This, | 
|  | DWORD *pdwPort); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetScheme)( | 
|  | IOpcPartUri *This, | 
|  | DWORD *pdwScheme); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetZone)( | 
|  | IOpcPartUri *This, | 
|  | DWORD *pdwZone); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetProperties)( | 
|  | IOpcPartUri *This, | 
|  | LPDWORD pdwFlags); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *IsEqual)( | 
|  | IOpcPartUri *This, | 
|  | IUri *pUri, | 
|  | WINBOOL *pfEqual); | 
|  |  | 
|  | /*** IOpcUri methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationshipsPartUri)( | 
|  | IOpcPartUri *This, | 
|  | IOpcPartUri **relationshipPartUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelativeUri)( | 
|  | IOpcPartUri *This, | 
|  | IOpcPartUri *targetPartUri, | 
|  | IUri **relativeUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CombinePartUri)( | 
|  | IOpcPartUri *This, | 
|  | IUri *relativeUri, | 
|  | IOpcPartUri **combinedUri); | 
|  |  | 
|  | /*** IOpcPartUri methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *ComparePartUri)( | 
|  | IOpcPartUri *This, | 
|  | IOpcPartUri *partUri, | 
|  | INT32 *comparisonResult); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSourceUri)( | 
|  | IOpcPartUri *This, | 
|  | IOpcUri **sourceUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *IsRelationshipsPartUri)( | 
|  | IOpcPartUri *This, | 
|  | WINBOOL *isRelationshipUri); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcPartUriVtbl; | 
|  |  | 
|  | interface IOpcPartUri { | 
|  | CONST_VTBL IOpcPartUriVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcPartUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcPartUri_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcPartUri_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IUri methods ***/ | 
|  | #define IOpcPartUri_GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags) (This)->lpVtbl->GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags) | 
|  | #define IOpcPartUri_GetPropertyLength(This,uriProp,pcchProperty,dwFlags) (This)->lpVtbl->GetPropertyLength(This,uriProp,pcchProperty,dwFlags) | 
|  | #define IOpcPartUri_GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags) (This)->lpVtbl->GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags) | 
|  | #define IOpcPartUri_HasProperty(This,uriProp,pfHasProperty) (This)->lpVtbl->HasProperty(This,uriProp,pfHasProperty) | 
|  | #define IOpcPartUri_GetAbsoluteUri(This,pbstrAbsoluteUri) (This)->lpVtbl->GetAbsoluteUri(This,pbstrAbsoluteUri) | 
|  | #define IOpcPartUri_GetAuthority(This,pbstrAuthority) (This)->lpVtbl->GetAuthority(This,pbstrAuthority) | 
|  | #define IOpcPartUri_GetDisplayUri(This,pbstrDisplayString) (This)->lpVtbl->GetDisplayUri(This,pbstrDisplayString) | 
|  | #define IOpcPartUri_GetDomain(This,pbstrDomain) (This)->lpVtbl->GetDomain(This,pbstrDomain) | 
|  | #define IOpcPartUri_GetExtension(This,pbstrExtension) (This)->lpVtbl->GetExtension(This,pbstrExtension) | 
|  | #define IOpcPartUri_GetFragment(This,pbstrFragment) (This)->lpVtbl->GetFragment(This,pbstrFragment) | 
|  | #define IOpcPartUri_GetHost(This,pbstrHost) (This)->lpVtbl->GetHost(This,pbstrHost) | 
|  | #define IOpcPartUri_GetPassword(This,pbstrPassword) (This)->lpVtbl->GetPassword(This,pbstrPassword) | 
|  | #define IOpcPartUri_GetPath(This,pbstrPath) (This)->lpVtbl->GetPath(This,pbstrPath) | 
|  | #define IOpcPartUri_GetPathAndQuery(This,pbstrPathAndQuery) (This)->lpVtbl->GetPathAndQuery(This,pbstrPathAndQuery) | 
|  | #define IOpcPartUri_GetQuery(This,pbstrQuery) (This)->lpVtbl->GetQuery(This,pbstrQuery) | 
|  | #define IOpcPartUri_GetRawUri(This,pbstrRawUri) (This)->lpVtbl->GetRawUri(This,pbstrRawUri) | 
|  | #define IOpcPartUri_GetSchemeName(This,pbstrSchemeName) (This)->lpVtbl->GetSchemeName(This,pbstrSchemeName) | 
|  | #define IOpcPartUri_GetUserInfo(This,pbstrUserInfo) (This)->lpVtbl->GetUserInfo(This,pbstrUserInfo) | 
|  | #define IOpcPartUri_GetUserName(This,pbstrUserName) (This)->lpVtbl->GetUserName(This,pbstrUserName) | 
|  | #define IOpcPartUri_GetHostType(This,pdwHostType) (This)->lpVtbl->GetHostType(This,pdwHostType) | 
|  | #define IOpcPartUri_GetPort(This,pdwPort) (This)->lpVtbl->GetPort(This,pdwPort) | 
|  | #define IOpcPartUri_GetScheme(This,pdwScheme) (This)->lpVtbl->GetScheme(This,pdwScheme) | 
|  | #define IOpcPartUri_GetZone(This,pdwZone) (This)->lpVtbl->GetZone(This,pdwZone) | 
|  | #define IOpcPartUri_GetProperties(This,pdwFlags) (This)->lpVtbl->GetProperties(This,pdwFlags) | 
|  | #define IOpcPartUri_IsEqual(This,pUri,pfEqual) (This)->lpVtbl->IsEqual(This,pUri,pfEqual) | 
|  | /*** IOpcUri methods ***/ | 
|  | #define IOpcPartUri_GetRelationshipsPartUri(This,relationshipPartUri) (This)->lpVtbl->GetRelationshipsPartUri(This,relationshipPartUri) | 
|  | #define IOpcPartUri_GetRelativeUri(This,targetPartUri,relativeUri) (This)->lpVtbl->GetRelativeUri(This,targetPartUri,relativeUri) | 
|  | #define IOpcPartUri_CombinePartUri(This,relativeUri,combinedUri) (This)->lpVtbl->CombinePartUri(This,relativeUri,combinedUri) | 
|  | /*** IOpcPartUri methods ***/ | 
|  | #define IOpcPartUri_ComparePartUri(This,partUri,comparisonResult) (This)->lpVtbl->ComparePartUri(This,partUri,comparisonResult) | 
|  | #define IOpcPartUri_GetSourceUri(This,sourceUri) (This)->lpVtbl->GetSourceUri(This,sourceUri) | 
|  | #define IOpcPartUri_IsRelationshipsPartUri(This,isRelationshipUri) (This)->lpVtbl->IsRelationshipsPartUri(This,isRelationshipUri) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcPartUri_QueryInterface(IOpcPartUri* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcPartUri_AddRef(IOpcPartUri* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcPartUri_Release(IOpcPartUri* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IUri methods ***/ | 
|  | static inline HRESULT IOpcPartUri_GetPropertyBSTR(IOpcPartUri* This,Uri_PROPERTY uriProp,BSTR *pbstrProperty,DWORD dwFlags) { | 
|  | return This->lpVtbl->GetPropertyBSTR(This,uriProp,pbstrProperty,dwFlags); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetPropertyLength(IOpcPartUri* This,Uri_PROPERTY uriProp,DWORD *pcchProperty,DWORD dwFlags) { | 
|  | return This->lpVtbl->GetPropertyLength(This,uriProp,pcchProperty,dwFlags); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetPropertyDWORD(IOpcPartUri* This,Uri_PROPERTY uriProp,DWORD *pdwProperty,DWORD dwFlags) { | 
|  | return This->lpVtbl->GetPropertyDWORD(This,uriProp,pdwProperty,dwFlags); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_HasProperty(IOpcPartUri* This,Uri_PROPERTY uriProp,WINBOOL *pfHasProperty) { | 
|  | return This->lpVtbl->HasProperty(This,uriProp,pfHasProperty); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetAbsoluteUri(IOpcPartUri* This,BSTR *pbstrAbsoluteUri) { | 
|  | return This->lpVtbl->GetAbsoluteUri(This,pbstrAbsoluteUri); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetAuthority(IOpcPartUri* This,BSTR *pbstrAuthority) { | 
|  | return This->lpVtbl->GetAuthority(This,pbstrAuthority); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetDisplayUri(IOpcPartUri* This,BSTR *pbstrDisplayString) { | 
|  | return This->lpVtbl->GetDisplayUri(This,pbstrDisplayString); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetDomain(IOpcPartUri* This,BSTR *pbstrDomain) { | 
|  | return This->lpVtbl->GetDomain(This,pbstrDomain); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetExtension(IOpcPartUri* This,BSTR *pbstrExtension) { | 
|  | return This->lpVtbl->GetExtension(This,pbstrExtension); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetFragment(IOpcPartUri* This,BSTR *pbstrFragment) { | 
|  | return This->lpVtbl->GetFragment(This,pbstrFragment); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetHost(IOpcPartUri* This,BSTR *pbstrHost) { | 
|  | return This->lpVtbl->GetHost(This,pbstrHost); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetPassword(IOpcPartUri* This,BSTR *pbstrPassword) { | 
|  | return This->lpVtbl->GetPassword(This,pbstrPassword); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetPath(IOpcPartUri* This,BSTR *pbstrPath) { | 
|  | return This->lpVtbl->GetPath(This,pbstrPath); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetPathAndQuery(IOpcPartUri* This,BSTR *pbstrPathAndQuery) { | 
|  | return This->lpVtbl->GetPathAndQuery(This,pbstrPathAndQuery); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetQuery(IOpcPartUri* This,BSTR *pbstrQuery) { | 
|  | return This->lpVtbl->GetQuery(This,pbstrQuery); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetRawUri(IOpcPartUri* This,BSTR *pbstrRawUri) { | 
|  | return This->lpVtbl->GetRawUri(This,pbstrRawUri); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetSchemeName(IOpcPartUri* This,BSTR *pbstrSchemeName) { | 
|  | return This->lpVtbl->GetSchemeName(This,pbstrSchemeName); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetUserInfo(IOpcPartUri* This,BSTR *pbstrUserInfo) { | 
|  | return This->lpVtbl->GetUserInfo(This,pbstrUserInfo); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetUserName(IOpcPartUri* This,BSTR *pbstrUserName) { | 
|  | return This->lpVtbl->GetUserName(This,pbstrUserName); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetHostType(IOpcPartUri* This,DWORD *pdwHostType) { | 
|  | return This->lpVtbl->GetHostType(This,pdwHostType); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetPort(IOpcPartUri* This,DWORD *pdwPort) { | 
|  | return This->lpVtbl->GetPort(This,pdwPort); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetScheme(IOpcPartUri* This,DWORD *pdwScheme) { | 
|  | return This->lpVtbl->GetScheme(This,pdwScheme); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetZone(IOpcPartUri* This,DWORD *pdwZone) { | 
|  | return This->lpVtbl->GetZone(This,pdwZone); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetProperties(IOpcPartUri* This,LPDWORD pdwFlags) { | 
|  | return This->lpVtbl->GetProperties(This,pdwFlags); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_IsEqual(IOpcPartUri* This,IUri *pUri,WINBOOL *pfEqual) { | 
|  | return This->lpVtbl->IsEqual(This,pUri,pfEqual); | 
|  | } | 
|  | /*** IOpcUri methods ***/ | 
|  | static inline HRESULT IOpcPartUri_GetRelationshipsPartUri(IOpcPartUri* This,IOpcPartUri **relationshipPartUri) { | 
|  | return This->lpVtbl->GetRelationshipsPartUri(This,relationshipPartUri); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetRelativeUri(IOpcPartUri* This,IOpcPartUri *targetPartUri,IUri **relativeUri) { | 
|  | return This->lpVtbl->GetRelativeUri(This,targetPartUri,relativeUri); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_CombinePartUri(IOpcPartUri* This,IUri *relativeUri,IOpcPartUri **combinedUri) { | 
|  | return This->lpVtbl->CombinePartUri(This,relativeUri,combinedUri); | 
|  | } | 
|  | /*** IOpcPartUri methods ***/ | 
|  | static inline HRESULT IOpcPartUri_ComparePartUri(IOpcPartUri* This,IOpcPartUri *partUri,INT32 *comparisonResult) { | 
|  | return This->lpVtbl->ComparePartUri(This,partUri,comparisonResult); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_GetSourceUri(IOpcPartUri* This,IOpcUri **sourceUri) { | 
|  | return This->lpVtbl->GetSourceUri(This,sourceUri); | 
|  | } | 
|  | static inline HRESULT IOpcPartUri_IsRelationshipsPartUri(IOpcPartUri* This,WINBOOL *isRelationshipUri) { | 
|  | return This->lpVtbl->IsRelationshipsPartUri(This,isRelationshipUri); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcPartUri_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) | 
|  | #define IS_OPC_CONFORMANCE_ERROR(x) (((x) & 0x1ffff000) == (0x0000 + (FACILITY_OPC << 16))) | 
|  | #define IS_ZIP_CONFORMANCE_ERROR(x) (((x) & 0x1ffff000) == (0x1000 + (FACILITY_OPC << 16))) | 
|  | #define OPC_E_NONCONFORMING_URI MAKE_HRESULT(1, FACILITY_OPC, 0x1) | 
|  | #define OPC_E_RELATIVE_URI_REQUIRED MAKE_HRESULT(1, FACILITY_OPC, 0x2) | 
|  | #define OPC_E_RELATIONSHIP_URI_REQUIRED MAKE_HRESULT(1, FACILITY_OPC, 0x3) | 
|  | #define OPC_E_PART_CANNOT_BE_DIRECTORY MAKE_HRESULT(1, FACILITY_OPC, 0x4) | 
|  | #define OPC_E_UNEXPECTED_CONTENT_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x5) | 
|  | #define OPC_E_INVALID_CONTENT_TYPE_XML MAKE_HRESULT(1, FACILITY_OPC, 0x6) | 
|  | #define OPC_E_MISSING_CONTENT_TYPES MAKE_HRESULT(1, FACILITY_OPC, 0x7) | 
|  | #define OPC_E_NONCONFORMING_CONTENT_TYPES_XML MAKE_HRESULT(1, FACILITY_OPC, 0x8) | 
|  | #define OPC_E_NONCONFORMING_RELS_XML MAKE_HRESULT(1, FACILITY_OPC, 0x9) | 
|  | #define OPC_E_INVALID_RELS_XML MAKE_HRESULT(1, FACILITY_OPC, 0xa) | 
|  | #define OPC_E_DUPLICATE_PART MAKE_HRESULT(1, FACILITY_OPC, 0xb) | 
|  | #define OPC_E_INVALID_OVERRIDE_PART_NAME MAKE_HRESULT(1, FACILITY_OPC, 0xc) | 
|  | #define OPC_E_DUPLICATE_OVERRIDE_PART MAKE_HRESULT(1, FACILITY_OPC, 0xd) | 
|  | #define OPC_E_INVALID_DEFAULT_EXTENSION MAKE_HRESULT(1, FACILITY_OPC, 0xe) | 
|  | #define OPC_E_DUPLICATE_DEFAULT_EXTENSION MAKE_HRESULT(1, FACILITY_OPC, 0xf) | 
|  | #define OPC_E_INVALID_RELATIONSHIP_ID MAKE_HRESULT(1, FACILITY_OPC, 0x10) | 
|  | #define OPC_E_INVALID_RELATIONSHIP_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x11) | 
|  | #define OPC_E_INVALID_RELATIONSHIP_TARGET MAKE_HRESULT(1, FACILITY_OPC, 0x12) | 
|  | #define OPC_E_DUPLICATE_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x13) | 
|  | #define OPC_E_CONFLICTING_SETTINGS MAKE_HRESULT(1, FACILITY_OPC, 0x14) | 
|  | #define OPC_E_DUPLICATE_PIECE MAKE_HRESULT(1, FACILITY_OPC, 0x15) | 
|  | #define OPC_E_INVALID_PIECE MAKE_HRESULT(1, FACILITY_OPC, 0x16) | 
|  | #define OPC_E_MISSING_PIECE MAKE_HRESULT(1, FACILITY_OPC, 0x17) | 
|  | #define OPC_E_NO_SUCH_PART MAKE_HRESULT(1, FACILITY_OPC, 0x18) | 
|  | #define OPC_E_DS_SIGNATURE_CORRUPT MAKE_HRESULT(1, FACILITY_OPC, 0x19) | 
|  | #define OPC_E_DS_DIGEST_VALUE_ERROR MAKE_HRESULT(1, FACILITY_OPC, 0x1a) | 
|  | #define OPC_E_DS_DUPLICATE_SIGNATURE_ORIGIN_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x1b) | 
|  | #define OPC_E_DS_INVALID_SIGNATURE_ORIGIN_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x1c) | 
|  | #define OPC_E_DS_INVALID_CERTIFICATE_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x1d) | 
|  | #define OPC_E_DS_EXTERNAL_SIGNATURE MAKE_HRESULT(1, FACILITY_OPC, 0x1e) | 
|  | #define OPC_E_DS_MISSING_SIGNATURE_ORIGIN_PART MAKE_HRESULT(1, FACILITY_OPC, 0x1f) | 
|  | #define OPC_E_DS_MISSING_SIGNATURE_PART MAKE_HRESULT(1, FACILITY_OPC, 0x20) | 
|  | #define OPC_E_DS_INVALID_RELATIONSHIP_TRANSFORM_XML MAKE_HRESULT(1, FACILITY_OPC, 0x21) | 
|  | #define OPC_E_DS_INVALID_CANONICALIZATION_METHOD MAKE_HRESULT(1, FACILITY_OPC, 0x22) | 
|  | #define OPC_E_DS_INVALID_RELATIONSHIPS_SIGNING_OPTION MAKE_HRESULT(1, FACILITY_OPC, 0x23) | 
|  | #define OPC_E_DS_INVALID_OPC_SIGNATURE_TIME_FORMAT MAKE_HRESULT(1, FACILITY_OPC, 0x24) | 
|  | #define OPC_E_DS_PACKAGE_REFERENCE_URI_RESERVED MAKE_HRESULT(1, FACILITY_OPC, 0x25) | 
|  | #define OPC_E_DS_MISSING_SIGNATURE_PROPERTIES_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x26) | 
|  | #define OPC_E_DS_MISSING_SIGNATURE_PROPERTY_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x27) | 
|  | #define OPC_E_DS_DUPLICATE_SIGNATURE_PROPERTY_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x28) | 
|  | #define OPC_E_DS_MISSING_SIGNATURE_TIME_PROPERTY MAKE_HRESULT(1, FACILITY_OPC, 0x29) | 
|  | #define OPC_E_DS_INVALID_SIGNATURE_XML MAKE_HRESULT(1, FACILITY_OPC, 0x2a) | 
|  | #define OPC_E_DS_INVALID_SIGNATURE_COUNT MAKE_HRESULT(1, FACILITY_OPC, 0x2b) | 
|  | #define OPC_E_DS_MISSING_SIGNATURE_ALGORITHM MAKE_HRESULT(1, FACILITY_OPC, 0x2c) | 
|  | #define OPC_E_DS_DUPLICATE_PACKAGE_OBJECT_REFERENCES MAKE_HRESULT(1, FACILITY_OPC, 0x2d) | 
|  | #define OPC_E_DS_MISSING_PACKAGE_OBJECT_REFERENCE MAKE_HRESULT(1, FACILITY_OPC, 0x2e) | 
|  | #define OPC_E_DS_EXTERNAL_SIGNATURE_REFERENCE MAKE_HRESULT(1, FACILITY_OPC, 0x2f) | 
|  | #define OPC_E_DS_REFERENCE_MISSING_CONTENT_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x30) | 
|  | #define OPC_E_DS_MULTIPLE_RELATIONSHIP_TRANSFORMS MAKE_HRESULT(1, FACILITY_OPC, 0x31) | 
|  | #define OPC_E_DS_MISSING_CANONICALIZATION_TRANSFORM MAKE_HRESULT(1, FACILITY_OPC, 0x32) | 
|  | #define OPC_E_MC_UNEXPECTED_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x33) | 
|  | #define OPC_E_MC_UNEXPECTED_REQUIRES_ATTR MAKE_HRESULT(1, FACILITY_OPC, 0x34) | 
|  | #define OPC_E_MC_MISSING_REQUIRES_ATTR MAKE_HRESULT(1, FACILITY_OPC, 0x35) | 
|  | #define OPC_E_MC_UNEXPECTED_ATTR MAKE_HRESULT(1, FACILITY_OPC, 0x36) | 
|  | #define OPC_E_MC_INVALID_PREFIX_LIST MAKE_HRESULT(1, FACILITY_OPC, 0x37) | 
|  | #define OPC_E_MC_INVALID_QNAME_LIST MAKE_HRESULT(1, FACILITY_OPC, 0x38) | 
|  | #define OPC_E_MC_NESTED_ALTERNATE_CONTENT MAKE_HRESULT(1, FACILITY_OPC, 0x39) | 
|  | #define OPC_E_MC_UNEXPECTED_CHOICE MAKE_HRESULT(1, FACILITY_OPC, 0x3a) | 
|  | #define OPC_E_MC_MISSING_CHOICE MAKE_HRESULT(1, FACILITY_OPC, 0x3b) | 
|  | #define OPC_E_MC_INVALID_ENUM_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x3c) | 
|  | #define OPC_E_MC_UNKNOWN_NAMESPACE MAKE_HRESULT(1, FACILITY_OPC, 0x3e) | 
|  | #define OPC_E_MC_UNKNOWN_PREFIX MAKE_HRESULT(1, FACILITY_OPC, 0x3f) | 
|  | #define OPC_E_MC_INVALID_ATTRIBUTES_ON_IGNORABLE_ELEMENT MAKE_HRESULT(1, FACILITY_OPC, 0x40) | 
|  | #define OPC_E_MC_INVALID_XMLNS_ATTRIBUTE MAKE_HRESULT(1, FACILITY_OPC, 0x41) | 
|  | #define OPC_E_INVALID_XML_ENCODING MAKE_HRESULT(1, FACILITY_OPC, 0x42) | 
|  | #define OPC_E_DS_SIGNATURE_REFERENCE_MISSING_URI MAKE_HRESULT(1, FACILITY_OPC, 0x43) | 
|  | #define OPC_E_INVALID_CONTENT_TYPE MAKE_HRESULT(1, FACILITY_OPC, 0x44) | 
|  | #define OPC_E_DS_SIGNATURE_PROPERTY_MISSING_TARGET MAKE_HRESULT(1, FACILITY_OPC, 0x45) | 
|  | #define OPC_E_DS_SIGNATURE_METHOD_NOT_SET MAKE_HRESULT(1, FACILITY_OPC, 0x46) | 
|  | #define OPC_E_DS_DEFAULT_DIGEST_METHOD_NOT_SET MAKE_HRESULT(1, FACILITY_OPC, 0x47) | 
|  | #define OPC_E_NO_SUCH_RELATIONSHIP MAKE_HRESULT(1, FACILITY_OPC, 0x48) | 
|  | #define OPC_E_MC_MULTIPLE_FALLBACK_ELEMENTS MAKE_HRESULT(1, FACILITY_OPC, 0x49) | 
|  | #define OPC_E_MC_INCONSISTENT_PROCESS_CONTENT MAKE_HRESULT(1, FACILITY_OPC, 0x4a) | 
|  | #define OPC_E_MC_INCONSISTENT_PRESERVE_ATTRIBUTES MAKE_HRESULT(1, FACILITY_OPC, 0x4b) | 
|  | #define OPC_E_MC_INCONSISTENT_PRESERVE_ELEMENTS MAKE_HRESULT(1, FACILITY_OPC, 0x4c) | 
|  | #define OPC_E_INVALID_RELATIONSHIP_TARGET_MODE MAKE_HRESULT(1, FACILITY_OPC, 0x4d) | 
|  | #define OPC_E_COULD_NOT_RECOVER MAKE_HRESULT(1, FACILITY_OPC, 0x4e) | 
|  | #define OPC_E_UNSUPPORTED_PACKAGE MAKE_HRESULT(1, FACILITY_OPC, 0x4f) | 
|  | #define OPC_E_ENUM_COLLECTION_CHANGED MAKE_HRESULT(1, FACILITY_OPC, 0x50) | 
|  | #define OPC_E_ENUM_CANNOT_MOVE_NEXT MAKE_HRESULT(1, FACILITY_OPC, 0x51) | 
|  | #define OPC_E_ENUM_CANNOT_MOVE_PREVIOUS MAKE_HRESULT(1, FACILITY_OPC, 0x52) | 
|  | #define OPC_E_ENUM_INVALID_POSITION MAKE_HRESULT(1, FACILITY_OPC, 0x53) | 
|  | #define OPC_E_DS_SIGNATURE_ORIGIN_EXISTS MAKE_HRESULT(1, FACILITY_OPC, 0x54) | 
|  | #define OPC_E_DS_UNSIGNED_PACKAGE MAKE_HRESULT(1, FACILITY_OPC, 0x55) | 
|  | #define OPC_E_DS_MISSING_CERTIFICATE_PART MAKE_HRESULT(1, FACILITY_OPC, 0x56) | 
|  | #define OPC_E_NO_SUCH_SETTINGS MAKE_HRESULT(1, FACILITY_OPC, 0x57) | 
|  | #define OPC_E_ZIP_INCORRECT_DATA_SIZE MAKE_HRESULT(1, FACILITY_OPC, 0x1001) | 
|  | #define OPC_E_ZIP_CORRUPTED_ARCHIVE MAKE_HRESULT(1, FACILITY_OPC, 0x1002) | 
|  | #define OPC_E_ZIP_COMPRESSION_FAILED MAKE_HRESULT(1, FACILITY_OPC, 0x1003) | 
|  | #define OPC_E_ZIP_DECOMPRESSION_FAILED MAKE_HRESULT(1, FACILITY_OPC, 0x1004) | 
|  | #define OPC_E_ZIP_INCONSISTENT_FILEITEM MAKE_HRESULT(1, FACILITY_OPC, 0x1005) | 
|  | #define OPC_E_ZIP_INCONSISTENT_DIRECTORY MAKE_HRESULT(1, FACILITY_OPC, 0x1006) | 
|  | #define OPC_E_ZIP_MISSING_DATA_DESCRIPTOR MAKE_HRESULT(1, FACILITY_OPC, 0x1007) | 
|  | #define OPC_E_ZIP_UNSUPPORTEDARCHIVE MAKE_HRESULT(1, FACILITY_OPC, 0x1008) | 
|  | #define OPC_E_ZIP_CENTRAL_DIRECTORY_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x1009) | 
|  | #define OPC_E_ZIP_NAME_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x100a) | 
|  | #define OPC_E_ZIP_DUPLICATE_NAME MAKE_HRESULT(1, FACILITY_OPC, 0x100b) | 
|  | #define OPC_E_ZIP_COMMENT_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x100c) | 
|  | #define OPC_E_ZIP_EXTRA_FIELDS_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x100d) | 
|  | #define OPC_E_ZIP_FILE_HEADER_TOO_LARGE MAKE_HRESULT(1, FACILITY_OPC, 0x100e) | 
|  | #define OPC_E_ZIP_MISSING_END_OF_CENTRAL_DIRECTORY MAKE_HRESULT(1, FACILITY_OPC, 0x100f) | 
|  | #define OPC_E_ZIP_REQUIRES_64_BIT MAKE_HRESULT(1, FACILITY_OPC, 0x1010) | 
|  | #ifndef __MSOPC_LIBRARY_DEFINED__ | 
|  | #define __MSOPC_LIBRARY_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(LIBID_MSOPC, 0x3d8d6062, 0x2749, 0x442b, 0x9e,0x32, 0xe4,0x0e,0xf8,0x01,0xa7,0x66); | 
|  |  | 
|  | #ifndef __IOpcCertificateEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcCertificateEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcCertificateEnumerator IOpcCertificateEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcCertificateEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcCertificateSet_FWD_DEFINED__ | 
|  | #define __IOpcCertificateSet_FWD_DEFINED__ | 
|  | typedef interface IOpcCertificateSet IOpcCertificateSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcCertificateSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcDigitalSignature_FWD_DEFINED__ | 
|  | #define __IOpcDigitalSignature_FWD_DEFINED__ | 
|  | typedef interface IOpcDigitalSignature IOpcDigitalSignature; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcDigitalSignature; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcDigitalSignatureEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcDigitalSignatureEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcDigitalSignatureEnumerator IOpcDigitalSignatureEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcDigitalSignatureEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcDigitalSignatureManager_FWD_DEFINED__ | 
|  | #define __IOpcDigitalSignatureManager_FWD_DEFINED__ | 
|  | typedef interface IOpcDigitalSignatureManager IOpcDigitalSignatureManager; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcDigitalSignatureManager; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPackage_FWD_DEFINED__ | 
|  | #define __IOpcPackage_FWD_DEFINED__ | 
|  | typedef interface IOpcPackage IOpcPackage; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPackage; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPart_FWD_DEFINED__ | 
|  | #define __IOpcPart_FWD_DEFINED__ | 
|  | typedef interface IOpcPart IOpcPart; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPart; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPartEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcPartEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcPartEnumerator IOpcPartEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPartEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPartSet_FWD_DEFINED__ | 
|  | #define __IOpcPartSet_FWD_DEFINED__ | 
|  | typedef interface IOpcPartSet IOpcPartSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPartSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcPartUri_FWD_DEFINED__ | 
|  | #define __IOpcPartUri_FWD_DEFINED__ | 
|  | typedef interface IOpcPartUri IOpcPartUri; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcPartUri; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationship_FWD_DEFINED__ | 
|  | #define __IOpcRelationship_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationship IOpcRelationship; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationship; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipEnumerator IOpcRelationshipEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipSelector_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipSelector_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipSelector IOpcRelationshipSelector; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipSelector; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipSelectorSet_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipSelectorSet_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipSelectorSet IOpcRelationshipSelectorSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipSelectorSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipSet_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipSet_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipSet IOpcRelationshipSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSigningOptions_FWD_DEFINED__ | 
|  | #define __IOpcSigningOptions_FWD_DEFINED__ | 
|  | typedef interface IOpcSigningOptions IOpcSigningOptions; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSigningOptions; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureCustomObject_FWD_DEFINED__ | 
|  | #define __IOpcSignatureCustomObject_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureCustomObject IOpcSignatureCustomObject; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureCustomObject; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureCustomObjectSet_FWD_DEFINED__ | 
|  | #define __IOpcSignatureCustomObjectSet_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureCustomObjectSet IOpcSignatureCustomObjectSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureCustomObjectSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignaturePartReference_FWD_DEFINED__ | 
|  | #define __IOpcSignaturePartReference_FWD_DEFINED__ | 
|  | typedef interface IOpcSignaturePartReference IOpcSignaturePartReference; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignaturePartReference; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignaturePartReferenceEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcSignaturePartReferenceEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcSignaturePartReferenceEnumerator IOpcSignaturePartReferenceEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignaturePartReferenceEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignaturePartReferenceSet_FWD_DEFINED__ | 
|  | #define __IOpcSignaturePartReferenceSet_FWD_DEFINED__ | 
|  | typedef interface IOpcSignaturePartReferenceSet IOpcSignaturePartReferenceSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignaturePartReferenceSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureReference_FWD_DEFINED__ | 
|  | #define __IOpcSignatureReference_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureReference IOpcSignatureReference; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureReference; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureReferenceSet_FWD_DEFINED__ | 
|  | #define __IOpcSignatureReferenceSet_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureReferenceSet IOpcSignatureReferenceSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureReferenceSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureRelationshipReference_FWD_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReference_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureRelationshipReference IOpcSignatureRelationshipReference; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureRelationshipReference; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureRelationshipReferenceEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReferenceEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureRelationshipReferenceEnumerator IOpcSignatureRelationshipReferenceEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureRelationshipReferenceEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureRelationshipReferenceSet_FWD_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReferenceSet_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureRelationshipReferenceSet IOpcSignatureRelationshipReferenceSet; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureRelationshipReferenceSet; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcRelationshipSelectorEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcRelationshipSelectorEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcRelationshipSelectorEnumerator IOpcRelationshipSelectorEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcRelationshipSelectorEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureReferenceEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcSignatureReferenceEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureReferenceEnumerator IOpcSignatureReferenceEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureReferenceEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcSignatureCustomObjectEnumerator_FWD_DEFINED__ | 
|  | #define __IOpcSignatureCustomObjectEnumerator_FWD_DEFINED__ | 
|  | typedef interface IOpcSignatureCustomObjectEnumerator IOpcSignatureCustomObjectEnumerator; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcSignatureCustomObjectEnumerator; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | #ifndef __IOpcUri_FWD_DEFINED__ | 
|  | #define __IOpcUri_FWD_DEFINED__ | 
|  | typedef interface IOpcUri IOpcUri; | 
|  | #ifdef __cplusplus | 
|  | interface IOpcUri; | 
|  | #endif /* __cplusplus */ | 
|  | #endif | 
|  |  | 
|  | typedef enum __WIDL_msopc_generated_name_00000027 { | 
|  | OPC_CANONICALIZATION_NONE = 0, | 
|  | OPC_CANONICALIZATION_C14N = 1, | 
|  | OPC_CANONICALIZATION_C14N_WITH_COMMENTS = 2 | 
|  | } OPC_CANONICALIZATION_METHOD; | 
|  | typedef enum __WIDL_msopc_generated_name_00000028 { | 
|  | OPC_CERTIFICATE_IN_CERTIFICATE_PART = 0, | 
|  | OPC_CERTIFICATE_IN_SIGNATURE_PART = 1, | 
|  | OPC_CERTIFICATE_NOT_EMBEDDED = 2 | 
|  | } OPC_CERTIFICATE_EMBEDDING_OPTION; | 
|  | typedef enum __WIDL_msopc_generated_name_00000029 { | 
|  | OPC_COMPRESSION_NONE = -1, | 
|  | OPC_COMPRESSION_NORMAL = 0, | 
|  | OPC_COMPRESSION_MAXIMUM = 1, | 
|  | OPC_COMPRESSION_FAST = 2, | 
|  | OPC_COMPRESSION_SUPERFAST = 3 | 
|  | } OPC_COMPRESSION_OPTIONS; | 
|  | typedef enum __WIDL_msopc_generated_name_0000002A { | 
|  | OPC_READ_DEFAULT = 0x0, | 
|  | OPC_VALIDATE_ON_LOAD = 0x1, | 
|  | OPC_CACHE_ON_ACCESS = 0x2 | 
|  | } OPC_READ_FLAGS; | 
|  | typedef enum __WIDL_msopc_generated_name_0000002B { | 
|  | OPC_RELATIONSHIP_SELECT_BY_ID = 0, | 
|  | OPC_RELATIONSHIP_SELECT_BY_TYPE = 1 | 
|  | } OPC_RELATIONSHIP_SELECTOR; | 
|  | typedef enum __WIDL_msopc_generated_name_0000002C { | 
|  | OPC_RELATIONSHIP_SIGN_USING_SELECTORS = 0, | 
|  | OPC_RELATIONSHIP_SIGN_PART = 1 | 
|  | } OPC_RELATIONSHIPS_SIGNING_OPTION; | 
|  | typedef enum OPC_SIGNATURE_VALIDATION_RESULT { | 
|  | OPC_SIGNATURE_VALID = 0, | 
|  | OPC_SIGNATURE_INVALID = -1 | 
|  | } OPC_SIGNATURE_VALIDATION_RESULT; | 
|  | typedef enum __WIDL_msopc_generated_name_0000002D { | 
|  | OPC_SIGNATURE_TIME_FORMAT_MILLISECONDS = 0, | 
|  | OPC_SIGNATURE_TIME_FORMAT_SECONDS = 1, | 
|  | OPC_SIGNATURE_TIME_FORMAT_MINUTES = 2, | 
|  | OPC_SIGNATURE_TIME_FORMAT_DAYS = 3, | 
|  | OPC_SIGNATURE_TIME_FORMAT_MONTHS = 4, | 
|  | OPC_SIGNATURE_TIME_FORMAT_YEARS = 5 | 
|  | } OPC_SIGNATURE_TIME_FORMAT; | 
|  | typedef enum __WIDL_msopc_generated_name_0000002E { | 
|  | OPC_STREAM_IO_READ = 1, | 
|  | OPC_STREAM_IO_WRITE = 2 | 
|  | } OPC_STREAM_IO_MODE; | 
|  | typedef enum __WIDL_msopc_generated_name_0000002F { | 
|  | OPC_URI_TARGET_MODE_INTERNAL = 0, | 
|  | OPC_URI_TARGET_MODE_EXTERNAL = 1 | 
|  | } OPC_URI_TARGET_MODE; | 
|  | typedef enum __WIDL_msopc_generated_name_00000030 { | 
|  | OPC_WRITE_DEFAULT = 0x0, | 
|  | OPC_WRITE_FORCE_ZIP32 = 0x1 | 
|  | } OPC_WRITE_FLAGS; | 
|  | DEFINE_ENUM_FLAG_OPERATORS(OPC_READ_FLAGS); | 
|  | DEFINE_ENUM_FLAG_OPERATORS(OPC_WRITE_FLAGS); | 
|  | /***************************************************************************** | 
|  | * IOpcPart interface | 
|  | */ | 
|  | #ifndef __IOpcPart_INTERFACE_DEFINED__ | 
|  | #define __IOpcPart_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcPart, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x71); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("42195949-3b79-4fc8-89c6-fc7fb979ee71") | 
|  | IOpcPart : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelationshipSet( | 
|  | IOpcRelationshipSet **relationshipSet) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetContentStream( | 
|  | IStream **stream) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetName( | 
|  | IOpcPartUri **name) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetContentType( | 
|  | LPWSTR *contentType) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCompressionOptions( | 
|  | OPC_COMPRESSION_OPTIONS *compressionOptions) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcPart, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x71) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcPartVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcPart *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcPart *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcPart *This); | 
|  |  | 
|  | /*** IOpcPart methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationshipSet)( | 
|  | IOpcPart *This, | 
|  | IOpcRelationshipSet **relationshipSet); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetContentStream)( | 
|  | IOpcPart *This, | 
|  | IStream **stream); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetName)( | 
|  | IOpcPart *This, | 
|  | IOpcPartUri **name); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetContentType)( | 
|  | IOpcPart *This, | 
|  | LPWSTR *contentType); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCompressionOptions)( | 
|  | IOpcPart *This, | 
|  | OPC_COMPRESSION_OPTIONS *compressionOptions); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcPartVtbl; | 
|  |  | 
|  | interface IOpcPart { | 
|  | CONST_VTBL IOpcPartVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcPart_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcPart_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcPart_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcPart methods ***/ | 
|  | #define IOpcPart_GetRelationshipSet(This,relationshipSet) (This)->lpVtbl->GetRelationshipSet(This,relationshipSet) | 
|  | #define IOpcPart_GetContentStream(This,stream) (This)->lpVtbl->GetContentStream(This,stream) | 
|  | #define IOpcPart_GetName(This,name) (This)->lpVtbl->GetName(This,name) | 
|  | #define IOpcPart_GetContentType(This,contentType) (This)->lpVtbl->GetContentType(This,contentType) | 
|  | #define IOpcPart_GetCompressionOptions(This,compressionOptions) (This)->lpVtbl->GetCompressionOptions(This,compressionOptions) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcPart_QueryInterface(IOpcPart* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcPart_AddRef(IOpcPart* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcPart_Release(IOpcPart* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcPart methods ***/ | 
|  | static inline HRESULT IOpcPart_GetRelationshipSet(IOpcPart* This,IOpcRelationshipSet **relationshipSet) { | 
|  | return This->lpVtbl->GetRelationshipSet(This,relationshipSet); | 
|  | } | 
|  | static inline HRESULT IOpcPart_GetContentStream(IOpcPart* This,IStream **stream) { | 
|  | return This->lpVtbl->GetContentStream(This,stream); | 
|  | } | 
|  | static inline HRESULT IOpcPart_GetName(IOpcPart* This,IOpcPartUri **name) { | 
|  | return This->lpVtbl->GetName(This,name); | 
|  | } | 
|  | static inline HRESULT IOpcPart_GetContentType(IOpcPart* This,LPWSTR *contentType) { | 
|  | return This->lpVtbl->GetContentType(This,contentType); | 
|  | } | 
|  | static inline HRESULT IOpcPart_GetCompressionOptions(IOpcPart* This,OPC_COMPRESSION_OPTIONS *compressionOptions) { | 
|  | return This->lpVtbl->GetCompressionOptions(This,compressionOptions); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcPart_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcPartEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcPartEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcPartEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcPartEnumerator, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x75); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("42195949-3b79-4fc8-89c6-fc7fb979ee75") | 
|  | IOpcPartEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | IOpcPart **part) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcPartEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcPartEnumerator, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x75) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcPartEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcPartEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcPartEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcPartEnumerator *This); | 
|  |  | 
|  | /*** IOpcPartEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcPartEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcPartEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcPartEnumerator *This, | 
|  | IOpcPart **part); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcPartEnumerator *This, | 
|  | IOpcPartEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcPartEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcPartEnumerator { | 
|  | CONST_VTBL IOpcPartEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcPartEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcPartEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcPartEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcPartEnumerator methods ***/ | 
|  | #define IOpcPartEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcPartEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcPartEnumerator_GetCurrent(This,part) (This)->lpVtbl->GetCurrent(This,part) | 
|  | #define IOpcPartEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcPartEnumerator_QueryInterface(IOpcPartEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcPartEnumerator_AddRef(IOpcPartEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcPartEnumerator_Release(IOpcPartEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcPartEnumerator methods ***/ | 
|  | static inline HRESULT IOpcPartEnumerator_MoveNext(IOpcPartEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcPartEnumerator_MovePrevious(IOpcPartEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcPartEnumerator_GetCurrent(IOpcPartEnumerator* This,IOpcPart **part) { | 
|  | return This->lpVtbl->GetCurrent(This,part); | 
|  | } | 
|  | static inline HRESULT IOpcPartEnumerator_Clone(IOpcPartEnumerator* This,IOpcPartEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcPartEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcPartSet interface | 
|  | */ | 
|  | #ifndef __IOpcPartSet_INTERFACE_DEFINED__ | 
|  | #define __IOpcPartSet_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcPartSet, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x73); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("42195949-3b79-4fc8-89c6-fc7fb979ee73") | 
|  | IOpcPartSet : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetPart( | 
|  | IOpcPartUri *name, | 
|  | IOpcPart **part) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreatePart( | 
|  | IOpcPartUri *name, | 
|  | LPCWSTR contentType, | 
|  | OPC_COMPRESSION_OPTIONS compressionOptions, | 
|  | IOpcPart **part) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE DeletePart( | 
|  | IOpcPartUri *name) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE PartExists( | 
|  | IOpcPartUri *name, | 
|  | WINBOOL *partExists) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumerator( | 
|  | IOpcPartEnumerator **partEnumerator) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcPartSet, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x73) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcPartSetVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcPartSet *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcPartSet *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcPartSet *This); | 
|  |  | 
|  | /*** IOpcPartSet methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetPart)( | 
|  | IOpcPartSet *This, | 
|  | IOpcPartUri *name, | 
|  | IOpcPart **part); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreatePart)( | 
|  | IOpcPartSet *This, | 
|  | IOpcPartUri *name, | 
|  | LPCWSTR contentType, | 
|  | OPC_COMPRESSION_OPTIONS compressionOptions, | 
|  | IOpcPart **part); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *DeletePart)( | 
|  | IOpcPartSet *This, | 
|  | IOpcPartUri *name); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *PartExists)( | 
|  | IOpcPartSet *This, | 
|  | IOpcPartUri *name, | 
|  | WINBOOL *partExists); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumerator)( | 
|  | IOpcPartSet *This, | 
|  | IOpcPartEnumerator **partEnumerator); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcPartSetVtbl; | 
|  |  | 
|  | interface IOpcPartSet { | 
|  | CONST_VTBL IOpcPartSetVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcPartSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcPartSet_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcPartSet_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcPartSet methods ***/ | 
|  | #define IOpcPartSet_GetPart(This,name,part) (This)->lpVtbl->GetPart(This,name,part) | 
|  | #define IOpcPartSet_CreatePart(This,name,contentType,compressionOptions,part) (This)->lpVtbl->CreatePart(This,name,contentType,compressionOptions,part) | 
|  | #define IOpcPartSet_DeletePart(This,name) (This)->lpVtbl->DeletePart(This,name) | 
|  | #define IOpcPartSet_PartExists(This,name,partExists) (This)->lpVtbl->PartExists(This,name,partExists) | 
|  | #define IOpcPartSet_GetEnumerator(This,partEnumerator) (This)->lpVtbl->GetEnumerator(This,partEnumerator) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcPartSet_QueryInterface(IOpcPartSet* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcPartSet_AddRef(IOpcPartSet* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcPartSet_Release(IOpcPartSet* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcPartSet methods ***/ | 
|  | static inline HRESULT IOpcPartSet_GetPart(IOpcPartSet* This,IOpcPartUri *name,IOpcPart **part) { | 
|  | return This->lpVtbl->GetPart(This,name,part); | 
|  | } | 
|  | static inline HRESULT IOpcPartSet_CreatePart(IOpcPartSet* This,IOpcPartUri *name,LPCWSTR contentType,OPC_COMPRESSION_OPTIONS compressionOptions,IOpcPart **part) { | 
|  | return This->lpVtbl->CreatePart(This,name,contentType,compressionOptions,part); | 
|  | } | 
|  | static inline HRESULT IOpcPartSet_DeletePart(IOpcPartSet* This,IOpcPartUri *name) { | 
|  | return This->lpVtbl->DeletePart(This,name); | 
|  | } | 
|  | static inline HRESULT IOpcPartSet_PartExists(IOpcPartSet* This,IOpcPartUri *name,WINBOOL *partExists) { | 
|  | return This->lpVtbl->PartExists(This,name,partExists); | 
|  | } | 
|  | static inline HRESULT IOpcPartSet_GetEnumerator(IOpcPartSet* This,IOpcPartEnumerator **partEnumerator) { | 
|  | return This->lpVtbl->GetEnumerator(This,partEnumerator); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcPartSet_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcPackage interface | 
|  | */ | 
|  | #ifndef __IOpcPackage_INTERFACE_DEFINED__ | 
|  | #define __IOpcPackage_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcPackage, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x70); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("42195949-3b79-4fc8-89c6-fc7fb979ee70") | 
|  | IOpcPackage : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetPartSet( | 
|  | IOpcPartSet **partSet) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelationshipSet( | 
|  | IOpcRelationshipSet **relationshipSet) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcPackage, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x70) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcPackageVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcPackage *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcPackage *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcPackage *This); | 
|  |  | 
|  | /*** IOpcPackage methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetPartSet)( | 
|  | IOpcPackage *This, | 
|  | IOpcPartSet **partSet); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationshipSet)( | 
|  | IOpcPackage *This, | 
|  | IOpcRelationshipSet **relationshipSet); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcPackageVtbl; | 
|  |  | 
|  | interface IOpcPackage { | 
|  | CONST_VTBL IOpcPackageVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcPackage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcPackage_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcPackage_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcPackage methods ***/ | 
|  | #define IOpcPackage_GetPartSet(This,partSet) (This)->lpVtbl->GetPartSet(This,partSet) | 
|  | #define IOpcPackage_GetRelationshipSet(This,relationshipSet) (This)->lpVtbl->GetRelationshipSet(This,relationshipSet) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcPackage_QueryInterface(IOpcPackage* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcPackage_AddRef(IOpcPackage* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcPackage_Release(IOpcPackage* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcPackage methods ***/ | 
|  | static inline HRESULT IOpcPackage_GetPartSet(IOpcPackage* This,IOpcPartSet **partSet) { | 
|  | return This->lpVtbl->GetPartSet(This,partSet); | 
|  | } | 
|  | static inline HRESULT IOpcPackage_GetRelationshipSet(IOpcPackage* This,IOpcRelationshipSet **relationshipSet) { | 
|  | return This->lpVtbl->GetRelationshipSet(This,relationshipSet); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcPackage_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcRelationship interface | 
|  | */ | 
|  | #ifndef __IOpcRelationship_INTERFACE_DEFINED__ | 
|  | #define __IOpcRelationship_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcRelationship, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x72); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("42195949-3b79-4fc8-89c6-fc7fb979ee72") | 
|  | IOpcRelationship : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetId( | 
|  | LPWSTR *relationshipIdentifier) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelationshipType( | 
|  | LPWSTR *relationshipType) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSourceUri( | 
|  | IOpcUri **sourceUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetTargetUri( | 
|  | IUri **targetUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetTargetMode( | 
|  | OPC_URI_TARGET_MODE *targetMode) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcRelationship, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x72) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcRelationshipVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcRelationship *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcRelationship *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcRelationship *This); | 
|  |  | 
|  | /*** IOpcRelationship methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetId)( | 
|  | IOpcRelationship *This, | 
|  | LPWSTR *relationshipIdentifier); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationshipType)( | 
|  | IOpcRelationship *This, | 
|  | LPWSTR *relationshipType); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSourceUri)( | 
|  | IOpcRelationship *This, | 
|  | IOpcUri **sourceUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTargetUri)( | 
|  | IOpcRelationship *This, | 
|  | IUri **targetUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTargetMode)( | 
|  | IOpcRelationship *This, | 
|  | OPC_URI_TARGET_MODE *targetMode); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcRelationshipVtbl; | 
|  |  | 
|  | interface IOpcRelationship { | 
|  | CONST_VTBL IOpcRelationshipVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcRelationship_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcRelationship_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcRelationship_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcRelationship methods ***/ | 
|  | #define IOpcRelationship_GetId(This,relationshipIdentifier) (This)->lpVtbl->GetId(This,relationshipIdentifier) | 
|  | #define IOpcRelationship_GetRelationshipType(This,relationshipType) (This)->lpVtbl->GetRelationshipType(This,relationshipType) | 
|  | #define IOpcRelationship_GetSourceUri(This,sourceUri) (This)->lpVtbl->GetSourceUri(This,sourceUri) | 
|  | #define IOpcRelationship_GetTargetUri(This,targetUri) (This)->lpVtbl->GetTargetUri(This,targetUri) | 
|  | #define IOpcRelationship_GetTargetMode(This,targetMode) (This)->lpVtbl->GetTargetMode(This,targetMode) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcRelationship_QueryInterface(IOpcRelationship* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcRelationship_AddRef(IOpcRelationship* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcRelationship_Release(IOpcRelationship* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcRelationship methods ***/ | 
|  | static inline HRESULT IOpcRelationship_GetId(IOpcRelationship* This,LPWSTR *relationshipIdentifier) { | 
|  | return This->lpVtbl->GetId(This,relationshipIdentifier); | 
|  | } | 
|  | static inline HRESULT IOpcRelationship_GetRelationshipType(IOpcRelationship* This,LPWSTR *relationshipType) { | 
|  | return This->lpVtbl->GetRelationshipType(This,relationshipType); | 
|  | } | 
|  | static inline HRESULT IOpcRelationship_GetSourceUri(IOpcRelationship* This,IOpcUri **sourceUri) { | 
|  | return This->lpVtbl->GetSourceUri(This,sourceUri); | 
|  | } | 
|  | static inline HRESULT IOpcRelationship_GetTargetUri(IOpcRelationship* This,IUri **targetUri) { | 
|  | return This->lpVtbl->GetTargetUri(This,targetUri); | 
|  | } | 
|  | static inline HRESULT IOpcRelationship_GetTargetMode(IOpcRelationship* This,OPC_URI_TARGET_MODE *targetMode) { | 
|  | return This->lpVtbl->GetTargetMode(This,targetMode); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcRelationship_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcRelationshipEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcRelationshipEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcRelationshipEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcRelationshipEnumerator, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x76); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("42195949-3b79-4fc8-89c6-fc7fb979ee76") | 
|  | IOpcRelationshipEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | IOpcRelationship **relationship) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcRelationshipEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcRelationshipEnumerator, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x76) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcRelationshipEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcRelationshipEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcRelationshipEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcRelationshipEnumerator *This); | 
|  |  | 
|  | /*** IOpcRelationshipEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcRelationshipEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcRelationshipEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcRelationshipEnumerator *This, | 
|  | IOpcRelationship **relationship); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcRelationshipEnumerator *This, | 
|  | IOpcRelationshipEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcRelationshipEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcRelationshipEnumerator { | 
|  | CONST_VTBL IOpcRelationshipEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcRelationshipEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcRelationshipEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcRelationshipEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcRelationshipEnumerator methods ***/ | 
|  | #define IOpcRelationshipEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcRelationshipEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcRelationshipEnumerator_GetCurrent(This,relationship) (This)->lpVtbl->GetCurrent(This,relationship) | 
|  | #define IOpcRelationshipEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcRelationshipEnumerator_QueryInterface(IOpcRelationshipEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipEnumerator_AddRef(IOpcRelationshipEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipEnumerator_Release(IOpcRelationshipEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcRelationshipEnumerator methods ***/ | 
|  | static inline HRESULT IOpcRelationshipEnumerator_MoveNext(IOpcRelationshipEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipEnumerator_MovePrevious(IOpcRelationshipEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipEnumerator_GetCurrent(IOpcRelationshipEnumerator* This,IOpcRelationship **relationship) { | 
|  | return This->lpVtbl->GetCurrent(This,relationship); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipEnumerator_Clone(IOpcRelationshipEnumerator* This,IOpcRelationshipEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcRelationshipEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcRelationshipSelector interface | 
|  | */ | 
|  | #ifndef __IOpcRelationshipSelector_INTERFACE_DEFINED__ | 
|  | #define __IOpcRelationshipSelector_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcRelationshipSelector, 0xf8f26c7f, 0xb28f, 0x4899, 0x84,0xc8, 0x5d,0x56,0x39,0xed,0xe7,0x5f); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("f8f26c7f-b28f-4899-84c8-5d5639ede75f") | 
|  | IOpcRelationshipSelector : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSelectorType( | 
|  | OPC_RELATIONSHIP_SELECTOR *selector) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSelectionCriterion( | 
|  | LPWSTR *selectionCriterion) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcRelationshipSelector, 0xf8f26c7f, 0xb28f, 0x4899, 0x84,0xc8, 0x5d,0x56,0x39,0xed,0xe7,0x5f) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcRelationshipSelectorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcRelationshipSelector *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcRelationshipSelector *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcRelationshipSelector *This); | 
|  |  | 
|  | /*** IOpcRelationshipSelector methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetSelectorType)( | 
|  | IOpcRelationshipSelector *This, | 
|  | OPC_RELATIONSHIP_SELECTOR *selector); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSelectionCriterion)( | 
|  | IOpcRelationshipSelector *This, | 
|  | LPWSTR *selectionCriterion); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcRelationshipSelectorVtbl; | 
|  |  | 
|  | interface IOpcRelationshipSelector { | 
|  | CONST_VTBL IOpcRelationshipSelectorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcRelationshipSelector_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcRelationshipSelector_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcRelationshipSelector_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcRelationshipSelector methods ***/ | 
|  | #define IOpcRelationshipSelector_GetSelectorType(This,selector) (This)->lpVtbl->GetSelectorType(This,selector) | 
|  | #define IOpcRelationshipSelector_GetSelectionCriterion(This,selectionCriterion) (This)->lpVtbl->GetSelectionCriterion(This,selectionCriterion) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcRelationshipSelector_QueryInterface(IOpcRelationshipSelector* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipSelector_AddRef(IOpcRelationshipSelector* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipSelector_Release(IOpcRelationshipSelector* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcRelationshipSelector methods ***/ | 
|  | static inline HRESULT IOpcRelationshipSelector_GetSelectorType(IOpcRelationshipSelector* This,OPC_RELATIONSHIP_SELECTOR *selector) { | 
|  | return This->lpVtbl->GetSelectorType(This,selector); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSelector_GetSelectionCriterion(IOpcRelationshipSelector* This,LPWSTR *selectionCriterion) { | 
|  | return This->lpVtbl->GetSelectionCriterion(This,selectionCriterion); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcRelationshipSelector_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcRelationshipSet interface | 
|  | */ | 
|  | #ifndef __IOpcRelationshipSet_INTERFACE_DEFINED__ | 
|  | #define __IOpcRelationshipSet_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcRelationshipSet, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x74); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("42195949-3b79-4fc8-89c6-fc7fb979ee74") | 
|  | IOpcRelationshipSet : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelationship( | 
|  | LPCWSTR relationshipIdentifier, | 
|  | IOpcRelationship **relationship) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreateRelationship( | 
|  | LPCWSTR relationshipIdentifier, | 
|  | LPCWSTR relationshipType, | 
|  | IUri *targetUri, | 
|  | OPC_URI_TARGET_MODE targetMode, | 
|  | IOpcRelationship **relationship) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE DeleteRelationship( | 
|  | LPCWSTR relationshipIdentifier) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE RelationshipExists( | 
|  | LPCWSTR relationshipIdentifier, | 
|  | WINBOOL *relationshipExists) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumerator( | 
|  | IOpcRelationshipEnumerator **relationshipEnumerator) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumeratorForType( | 
|  | LPCWSTR relationshipType, | 
|  | IOpcRelationshipEnumerator **relationshipEnumerator) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelationshipsContentStream( | 
|  | IStream **contents) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcRelationshipSet, 0x42195949, 0x3b79, 0x4fc8, 0x89,0xc6, 0xfc,0x7f,0xb9,0x79,0xee,0x74) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcRelationshipSetVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcRelationshipSet *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcRelationshipSet *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcRelationshipSet *This); | 
|  |  | 
|  | /*** IOpcRelationshipSet methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationship)( | 
|  | IOpcRelationshipSet *This, | 
|  | LPCWSTR relationshipIdentifier, | 
|  | IOpcRelationship **relationship); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreateRelationship)( | 
|  | IOpcRelationshipSet *This, | 
|  | LPCWSTR relationshipIdentifier, | 
|  | LPCWSTR relationshipType, | 
|  | IUri *targetUri, | 
|  | OPC_URI_TARGET_MODE targetMode, | 
|  | IOpcRelationship **relationship); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *DeleteRelationship)( | 
|  | IOpcRelationshipSet *This, | 
|  | LPCWSTR relationshipIdentifier); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *RelationshipExists)( | 
|  | IOpcRelationshipSet *This, | 
|  | LPCWSTR relationshipIdentifier, | 
|  | WINBOOL *relationshipExists); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumerator)( | 
|  | IOpcRelationshipSet *This, | 
|  | IOpcRelationshipEnumerator **relationshipEnumerator); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumeratorForType)( | 
|  | IOpcRelationshipSet *This, | 
|  | LPCWSTR relationshipType, | 
|  | IOpcRelationshipEnumerator **relationshipEnumerator); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationshipsContentStream)( | 
|  | IOpcRelationshipSet *This, | 
|  | IStream **contents); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcRelationshipSetVtbl; | 
|  |  | 
|  | interface IOpcRelationshipSet { | 
|  | CONST_VTBL IOpcRelationshipSetVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcRelationshipSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcRelationshipSet_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcRelationshipSet_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcRelationshipSet methods ***/ | 
|  | #define IOpcRelationshipSet_GetRelationship(This,relationshipIdentifier,relationship) (This)->lpVtbl->GetRelationship(This,relationshipIdentifier,relationship) | 
|  | #define IOpcRelationshipSet_CreateRelationship(This,relationshipIdentifier,relationshipType,targetUri,targetMode,relationship) (This)->lpVtbl->CreateRelationship(This,relationshipIdentifier,relationshipType,targetUri,targetMode,relationship) | 
|  | #define IOpcRelationshipSet_DeleteRelationship(This,relationshipIdentifier) (This)->lpVtbl->DeleteRelationship(This,relationshipIdentifier) | 
|  | #define IOpcRelationshipSet_RelationshipExists(This,relationshipIdentifier,relationshipExists) (This)->lpVtbl->RelationshipExists(This,relationshipIdentifier,relationshipExists) | 
|  | #define IOpcRelationshipSet_GetEnumerator(This,relationshipEnumerator) (This)->lpVtbl->GetEnumerator(This,relationshipEnumerator) | 
|  | #define IOpcRelationshipSet_GetEnumeratorForType(This,relationshipType,relationshipEnumerator) (This)->lpVtbl->GetEnumeratorForType(This,relationshipType,relationshipEnumerator) | 
|  | #define IOpcRelationshipSet_GetRelationshipsContentStream(This,contents) (This)->lpVtbl->GetRelationshipsContentStream(This,contents) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcRelationshipSet_QueryInterface(IOpcRelationshipSet* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipSet_AddRef(IOpcRelationshipSet* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipSet_Release(IOpcRelationshipSet* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcRelationshipSet methods ***/ | 
|  | static inline HRESULT IOpcRelationshipSet_GetRelationship(IOpcRelationshipSet* This,LPCWSTR relationshipIdentifier,IOpcRelationship **relationship) { | 
|  | return This->lpVtbl->GetRelationship(This,relationshipIdentifier,relationship); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSet_CreateRelationship(IOpcRelationshipSet* This,LPCWSTR relationshipIdentifier,LPCWSTR relationshipType,IUri *targetUri,OPC_URI_TARGET_MODE targetMode,IOpcRelationship **relationship) { | 
|  | return This->lpVtbl->CreateRelationship(This,relationshipIdentifier,relationshipType,targetUri,targetMode,relationship); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSet_DeleteRelationship(IOpcRelationshipSet* This,LPCWSTR relationshipIdentifier) { | 
|  | return This->lpVtbl->DeleteRelationship(This,relationshipIdentifier); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSet_RelationshipExists(IOpcRelationshipSet* This,LPCWSTR relationshipIdentifier,WINBOOL *relationshipExists) { | 
|  | return This->lpVtbl->RelationshipExists(This,relationshipIdentifier,relationshipExists); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSet_GetEnumerator(IOpcRelationshipSet* This,IOpcRelationshipEnumerator **relationshipEnumerator) { | 
|  | return This->lpVtbl->GetEnumerator(This,relationshipEnumerator); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSet_GetEnumeratorForType(IOpcRelationshipSet* This,LPCWSTR relationshipType,IOpcRelationshipEnumerator **relationshipEnumerator) { | 
|  | return This->lpVtbl->GetEnumeratorForType(This,relationshipType,relationshipEnumerator); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSet_GetRelationshipsContentStream(IOpcRelationshipSet* This,IStream **contents) { | 
|  | return This->lpVtbl->GetRelationshipsContentStream(This,contents); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcRelationshipSet_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureCustomObject interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureCustomObject_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureCustomObject_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureCustomObject, 0x5d77a19e, 0x62c1, 0x44e7, 0xbe,0xcd, 0x45,0xda,0x5a,0xe5,0x1a,0x56); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("5d77a19e-62c1-44e7-becd-45da5ae51a56") | 
|  | IOpcSignatureCustomObject : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetXml( | 
|  | UINT8 **xmlMarkup, | 
|  | UINT32 *count) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureCustomObject, 0x5d77a19e, 0x62c1, 0x44e7, 0xbe,0xcd, 0x45,0xda,0x5a,0xe5,0x1a,0x56) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureCustomObjectVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureCustomObject *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureCustomObject *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureCustomObject *This); | 
|  |  | 
|  | /*** IOpcSignatureCustomObject methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetXml)( | 
|  | IOpcSignatureCustomObject *This, | 
|  | UINT8 **xmlMarkup, | 
|  | UINT32 *count); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureCustomObjectVtbl; | 
|  |  | 
|  | interface IOpcSignatureCustomObject { | 
|  | CONST_VTBL IOpcSignatureCustomObjectVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureCustomObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureCustomObject_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureCustomObject_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureCustomObject methods ***/ | 
|  | #define IOpcSignatureCustomObject_GetXml(This,xmlMarkup,count) (This)->lpVtbl->GetXml(This,xmlMarkup,count) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureCustomObject_QueryInterface(IOpcSignatureCustomObject* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureCustomObject_AddRef(IOpcSignatureCustomObject* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureCustomObject_Release(IOpcSignatureCustomObject* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureCustomObject methods ***/ | 
|  | static inline HRESULT IOpcSignatureCustomObject_GetXml(IOpcSignatureCustomObject* This,UINT8 **xmlMarkup,UINT32 *count) { | 
|  | return This->lpVtbl->GetXml(This,xmlMarkup,count); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureCustomObject_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureCustomObjectEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureCustomObjectEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureCustomObjectEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureCustomObjectEnumerator, 0x5ee4fe1d, 0xe1b0, 0x4683, 0x80,0x79, 0x7e,0xa0,0xfc,0xf8,0x0b,0x4c); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("5ee4fe1d-e1b0-4683-8079-7ea0fcf80b4c") | 
|  | IOpcSignatureCustomObjectEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | IOpcSignatureCustomObject **customObject) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcSignatureCustomObjectEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureCustomObjectEnumerator, 0x5ee4fe1d, 0xe1b0, 0x4683, 0x80,0x79, 0x7e,0xa0,0xfc,0xf8,0x0b,0x4c) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureCustomObjectEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureCustomObjectEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureCustomObjectEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureCustomObjectEnumerator *This); | 
|  |  | 
|  | /*** IOpcSignatureCustomObjectEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcSignatureCustomObjectEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcSignatureCustomObjectEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcSignatureCustomObjectEnumerator *This, | 
|  | IOpcSignatureCustomObject **customObject); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcSignatureCustomObjectEnumerator *This, | 
|  | IOpcSignatureCustomObjectEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureCustomObjectEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcSignatureCustomObjectEnumerator { | 
|  | CONST_VTBL IOpcSignatureCustomObjectEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureCustomObjectEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureCustomObjectEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureCustomObjectEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureCustomObjectEnumerator methods ***/ | 
|  | #define IOpcSignatureCustomObjectEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcSignatureCustomObjectEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcSignatureCustomObjectEnumerator_GetCurrent(This,customObject) (This)->lpVtbl->GetCurrent(This,customObject) | 
|  | #define IOpcSignatureCustomObjectEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureCustomObjectEnumerator_QueryInterface(IOpcSignatureCustomObjectEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureCustomObjectEnumerator_AddRef(IOpcSignatureCustomObjectEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureCustomObjectEnumerator_Release(IOpcSignatureCustomObjectEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureCustomObjectEnumerator methods ***/ | 
|  | static inline HRESULT IOpcSignatureCustomObjectEnumerator_MoveNext(IOpcSignatureCustomObjectEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureCustomObjectEnumerator_MovePrevious(IOpcSignatureCustomObjectEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureCustomObjectEnumerator_GetCurrent(IOpcSignatureCustomObjectEnumerator* This,IOpcSignatureCustomObject **customObject) { | 
|  | return This->lpVtbl->GetCurrent(This,customObject); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureCustomObjectEnumerator_Clone(IOpcSignatureCustomObjectEnumerator* This,IOpcSignatureCustomObjectEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureCustomObjectEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignaturePartReference interface | 
|  | */ | 
|  | #ifndef __IOpcSignaturePartReference_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignaturePartReference_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignaturePartReference, 0xe24231ca, 0x59f4, 0x484e, 0xb6,0x4b, 0x36,0xee,0xda,0x36,0x07,0x2c); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("e24231ca-59f4-484e-b64b-36eeda36072c") | 
|  | IOpcSignaturePartReference : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetPartName( | 
|  | IOpcPartUri **partName) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetContentType( | 
|  | LPWSTR *contentType) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetDigestMethod( | 
|  | LPWSTR *digestMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetDigestValue( | 
|  | UINT8 **digestValue, | 
|  | UINT32 *count) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetTransformMethod( | 
|  | OPC_CANONICALIZATION_METHOD *transformMethod) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignaturePartReference, 0xe24231ca, 0x59f4, 0x484e, 0xb6,0x4b, 0x36,0xee,0xda,0x36,0x07,0x2c) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignaturePartReferenceVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignaturePartReference *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignaturePartReference *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignaturePartReference *This); | 
|  |  | 
|  | /*** IOpcSignaturePartReference methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetPartName)( | 
|  | IOpcSignaturePartReference *This, | 
|  | IOpcPartUri **partName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetContentType)( | 
|  | IOpcSignaturePartReference *This, | 
|  | LPWSTR *contentType); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDigestMethod)( | 
|  | IOpcSignaturePartReference *This, | 
|  | LPWSTR *digestMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDigestValue)( | 
|  | IOpcSignaturePartReference *This, | 
|  | UINT8 **digestValue, | 
|  | UINT32 *count); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTransformMethod)( | 
|  | IOpcSignaturePartReference *This, | 
|  | OPC_CANONICALIZATION_METHOD *transformMethod); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignaturePartReferenceVtbl; | 
|  |  | 
|  | interface IOpcSignaturePartReference { | 
|  | CONST_VTBL IOpcSignaturePartReferenceVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignaturePartReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignaturePartReference_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignaturePartReference_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignaturePartReference methods ***/ | 
|  | #define IOpcSignaturePartReference_GetPartName(This,partName) (This)->lpVtbl->GetPartName(This,partName) | 
|  | #define IOpcSignaturePartReference_GetContentType(This,contentType) (This)->lpVtbl->GetContentType(This,contentType) | 
|  | #define IOpcSignaturePartReference_GetDigestMethod(This,digestMethod) (This)->lpVtbl->GetDigestMethod(This,digestMethod) | 
|  | #define IOpcSignaturePartReference_GetDigestValue(This,digestValue,count) (This)->lpVtbl->GetDigestValue(This,digestValue,count) | 
|  | #define IOpcSignaturePartReference_GetTransformMethod(This,transformMethod) (This)->lpVtbl->GetTransformMethod(This,transformMethod) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignaturePartReference_QueryInterface(IOpcSignaturePartReference* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignaturePartReference_AddRef(IOpcSignaturePartReference* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignaturePartReference_Release(IOpcSignaturePartReference* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignaturePartReference methods ***/ | 
|  | static inline HRESULT IOpcSignaturePartReference_GetPartName(IOpcSignaturePartReference* This,IOpcPartUri **partName) { | 
|  | return This->lpVtbl->GetPartName(This,partName); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReference_GetContentType(IOpcSignaturePartReference* This,LPWSTR *contentType) { | 
|  | return This->lpVtbl->GetContentType(This,contentType); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReference_GetDigestMethod(IOpcSignaturePartReference* This,LPWSTR *digestMethod) { | 
|  | return This->lpVtbl->GetDigestMethod(This,digestMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReference_GetDigestValue(IOpcSignaturePartReference* This,UINT8 **digestValue,UINT32 *count) { | 
|  | return This->lpVtbl->GetDigestValue(This,digestValue,count); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReference_GetTransformMethod(IOpcSignaturePartReference* This,OPC_CANONICALIZATION_METHOD *transformMethod) { | 
|  | return This->lpVtbl->GetTransformMethod(This,transformMethod); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignaturePartReference_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignaturePartReferenceEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcSignaturePartReferenceEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignaturePartReferenceEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignaturePartReferenceEnumerator, 0x80eb1561, 0x8c77, 0x49cf, 0x82,0x66, 0x45,0x9b,0x35,0x6e,0xe9,0x9a); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("80eb1561-8c77-49cf-8266-459b356ee99a") | 
|  | IOpcSignaturePartReferenceEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | IOpcSignaturePartReference **partReference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcSignaturePartReferenceEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignaturePartReferenceEnumerator, 0x80eb1561, 0x8c77, 0x49cf, 0x82,0x66, 0x45,0x9b,0x35,0x6e,0xe9,0x9a) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignaturePartReferenceEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignaturePartReferenceEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignaturePartReferenceEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignaturePartReferenceEnumerator *This); | 
|  |  | 
|  | /*** IOpcSignaturePartReferenceEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcSignaturePartReferenceEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcSignaturePartReferenceEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcSignaturePartReferenceEnumerator *This, | 
|  | IOpcSignaturePartReference **partReference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcSignaturePartReferenceEnumerator *This, | 
|  | IOpcSignaturePartReferenceEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignaturePartReferenceEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcSignaturePartReferenceEnumerator { | 
|  | CONST_VTBL IOpcSignaturePartReferenceEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignaturePartReferenceEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignaturePartReferenceEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignaturePartReferenceEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignaturePartReferenceEnumerator methods ***/ | 
|  | #define IOpcSignaturePartReferenceEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcSignaturePartReferenceEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcSignaturePartReferenceEnumerator_GetCurrent(This,partReference) (This)->lpVtbl->GetCurrent(This,partReference) | 
|  | #define IOpcSignaturePartReferenceEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignaturePartReferenceEnumerator_QueryInterface(IOpcSignaturePartReferenceEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignaturePartReferenceEnumerator_AddRef(IOpcSignaturePartReferenceEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignaturePartReferenceEnumerator_Release(IOpcSignaturePartReferenceEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignaturePartReferenceEnumerator methods ***/ | 
|  | static inline HRESULT IOpcSignaturePartReferenceEnumerator_MoveNext(IOpcSignaturePartReferenceEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReferenceEnumerator_MovePrevious(IOpcSignaturePartReferenceEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReferenceEnumerator_GetCurrent(IOpcSignaturePartReferenceEnumerator* This,IOpcSignaturePartReference **partReference) { | 
|  | return This->lpVtbl->GetCurrent(This,partReference); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReferenceEnumerator_Clone(IOpcSignaturePartReferenceEnumerator* This,IOpcSignaturePartReferenceEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignaturePartReferenceEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureReference interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureReference_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureReference_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureReference, 0x1b47005e, 0x3011, 0x4edc, 0xbe,0x6f, 0x0f,0x65,0xe5,0xab,0x03,0x42); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("1b47005e-3011-4edc-be6f-0f65e5ab0342") | 
|  | IOpcSignatureReference : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetId( | 
|  | LPWSTR *referenceId) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetUri( | 
|  | IUri **referenceUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetType( | 
|  | LPWSTR *type) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetTransformMethod( | 
|  | OPC_CANONICALIZATION_METHOD *transformMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetDigestMethod( | 
|  | LPWSTR *digestMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetDigestValue( | 
|  | UINT8 **digestValue, | 
|  | UINT32 *count) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureReference, 0x1b47005e, 0x3011, 0x4edc, 0xbe,0x6f, 0x0f,0x65,0xe5,0xab,0x03,0x42) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureReferenceVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureReference *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureReference *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureReference *This); | 
|  |  | 
|  | /*** IOpcSignatureReference methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetId)( | 
|  | IOpcSignatureReference *This, | 
|  | LPWSTR *referenceId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetUri)( | 
|  | IOpcSignatureReference *This, | 
|  | IUri **referenceUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetType)( | 
|  | IOpcSignatureReference *This, | 
|  | LPWSTR *type); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTransformMethod)( | 
|  | IOpcSignatureReference *This, | 
|  | OPC_CANONICALIZATION_METHOD *transformMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDigestMethod)( | 
|  | IOpcSignatureReference *This, | 
|  | LPWSTR *digestMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDigestValue)( | 
|  | IOpcSignatureReference *This, | 
|  | UINT8 **digestValue, | 
|  | UINT32 *count); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureReferenceVtbl; | 
|  |  | 
|  | interface IOpcSignatureReference { | 
|  | CONST_VTBL IOpcSignatureReferenceVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureReference_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureReference_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureReference methods ***/ | 
|  | #define IOpcSignatureReference_GetId(This,referenceId) (This)->lpVtbl->GetId(This,referenceId) | 
|  | #define IOpcSignatureReference_GetUri(This,referenceUri) (This)->lpVtbl->GetUri(This,referenceUri) | 
|  | #define IOpcSignatureReference_GetType(This,type) (This)->lpVtbl->GetType(This,type) | 
|  | #define IOpcSignatureReference_GetTransformMethod(This,transformMethod) (This)->lpVtbl->GetTransformMethod(This,transformMethod) | 
|  | #define IOpcSignatureReference_GetDigestMethod(This,digestMethod) (This)->lpVtbl->GetDigestMethod(This,digestMethod) | 
|  | #define IOpcSignatureReference_GetDigestValue(This,digestValue,count) (This)->lpVtbl->GetDigestValue(This,digestValue,count) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureReference_QueryInterface(IOpcSignatureReference* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureReference_AddRef(IOpcSignatureReference* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureReference_Release(IOpcSignatureReference* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureReference methods ***/ | 
|  | static inline HRESULT IOpcSignatureReference_GetId(IOpcSignatureReference* This,LPWSTR *referenceId) { | 
|  | return This->lpVtbl->GetId(This,referenceId); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReference_GetUri(IOpcSignatureReference* This,IUri **referenceUri) { | 
|  | return This->lpVtbl->GetUri(This,referenceUri); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReference_GetType(IOpcSignatureReference* This,LPWSTR *type) { | 
|  | return This->lpVtbl->GetType(This,type); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReference_GetTransformMethod(IOpcSignatureReference* This,OPC_CANONICALIZATION_METHOD *transformMethod) { | 
|  | return This->lpVtbl->GetTransformMethod(This,transformMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReference_GetDigestMethod(IOpcSignatureReference* This,LPWSTR *digestMethod) { | 
|  | return This->lpVtbl->GetDigestMethod(This,digestMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReference_GetDigestValue(IOpcSignatureReference* This,UINT8 **digestValue,UINT32 *count) { | 
|  | return This->lpVtbl->GetDigestValue(This,digestValue,count); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureReference_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureReferenceEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureReferenceEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureReferenceEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureReferenceEnumerator, 0xcfa59a45, 0x28b1, 0x4868, 0x96,0x9e, 0xfa,0x80,0x97,0xfd,0xc1,0x2a); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("cfa59a45-28b1-4868-969e-fa8097fdc12a") | 
|  | IOpcSignatureReferenceEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | IOpcSignatureReference **reference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcSignatureReferenceEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureReferenceEnumerator, 0xcfa59a45, 0x28b1, 0x4868, 0x96,0x9e, 0xfa,0x80,0x97,0xfd,0xc1,0x2a) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureReferenceEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureReferenceEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureReferenceEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureReferenceEnumerator *This); | 
|  |  | 
|  | /*** IOpcSignatureReferenceEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcSignatureReferenceEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcSignatureReferenceEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcSignatureReferenceEnumerator *This, | 
|  | IOpcSignatureReference **reference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcSignatureReferenceEnumerator *This, | 
|  | IOpcSignatureReferenceEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureReferenceEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcSignatureReferenceEnumerator { | 
|  | CONST_VTBL IOpcSignatureReferenceEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureReferenceEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureReferenceEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureReferenceEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureReferenceEnumerator methods ***/ | 
|  | #define IOpcSignatureReferenceEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcSignatureReferenceEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcSignatureReferenceEnumerator_GetCurrent(This,reference) (This)->lpVtbl->GetCurrent(This,reference) | 
|  | #define IOpcSignatureReferenceEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureReferenceEnumerator_QueryInterface(IOpcSignatureReferenceEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureReferenceEnumerator_AddRef(IOpcSignatureReferenceEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureReferenceEnumerator_Release(IOpcSignatureReferenceEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureReferenceEnumerator methods ***/ | 
|  | static inline HRESULT IOpcSignatureReferenceEnumerator_MoveNext(IOpcSignatureReferenceEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReferenceEnumerator_MovePrevious(IOpcSignatureReferenceEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReferenceEnumerator_GetCurrent(IOpcSignatureReferenceEnumerator* This,IOpcSignatureReference **reference) { | 
|  | return This->lpVtbl->GetCurrent(This,reference); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReferenceEnumerator_Clone(IOpcSignatureReferenceEnumerator* This,IOpcSignatureReferenceEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureReferenceEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureRelationshipReferenceEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureRelationshipReferenceEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReferenceEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureRelationshipReferenceEnumerator, 0x773ba3e4, 0xf021, 0x48e4, 0xaa,0x04, 0x98,0x16,0xdb,0x5d,0x34,0x95); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("773ba3e4-f021-48e4-aa04-9816db5d3495") | 
|  | IOpcSignatureRelationshipReferenceEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | IOpcSignatureRelationshipReference **relationshipReference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcSignatureRelationshipReferenceEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureRelationshipReferenceEnumerator, 0x773ba3e4, 0xf021, 0x48e4, 0xaa,0x04, 0x98,0x16,0xdb,0x5d,0x34,0x95) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureRelationshipReferenceEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureRelationshipReferenceEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureRelationshipReferenceEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureRelationshipReferenceEnumerator *This); | 
|  |  | 
|  | /*** IOpcSignatureRelationshipReferenceEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcSignatureRelationshipReferenceEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcSignatureRelationshipReferenceEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcSignatureRelationshipReferenceEnumerator *This, | 
|  | IOpcSignatureRelationshipReference **relationshipReference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcSignatureRelationshipReferenceEnumerator *This, | 
|  | IOpcSignatureRelationshipReferenceEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureRelationshipReferenceEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcSignatureRelationshipReferenceEnumerator { | 
|  | CONST_VTBL IOpcSignatureRelationshipReferenceEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureRelationshipReferenceEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureRelationshipReferenceEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureRelationshipReferenceEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureRelationshipReferenceEnumerator methods ***/ | 
|  | #define IOpcSignatureRelationshipReferenceEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcSignatureRelationshipReferenceEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcSignatureRelationshipReferenceEnumerator_GetCurrent(This,relationshipReference) (This)->lpVtbl->GetCurrent(This,relationshipReference) | 
|  | #define IOpcSignatureRelationshipReferenceEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceEnumerator_QueryInterface(IOpcSignatureRelationshipReferenceEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureRelationshipReferenceEnumerator_AddRef(IOpcSignatureRelationshipReferenceEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureRelationshipReferenceEnumerator_Release(IOpcSignatureRelationshipReferenceEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureRelationshipReferenceEnumerator methods ***/ | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceEnumerator_MoveNext(IOpcSignatureRelationshipReferenceEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceEnumerator_MovePrevious(IOpcSignatureRelationshipReferenceEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceEnumerator_GetCurrent(IOpcSignatureRelationshipReferenceEnumerator* This,IOpcSignatureRelationshipReference **relationshipReference) { | 
|  | return This->lpVtbl->GetCurrent(This,relationshipReference); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceEnumerator_Clone(IOpcSignatureRelationshipReferenceEnumerator* This,IOpcSignatureRelationshipReferenceEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureRelationshipReferenceEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureRelationshipReference interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureRelationshipReference_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReference_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureRelationshipReference, 0x57babac6, 0x9d4a, 0x4e50, 0x8b,0x86, 0xe5,0xd4,0x05,0x1e,0xae,0x7c); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("57babac6-9d4a-4e50-8b86-e5d4051eae7c") | 
|  | IOpcSignatureRelationshipReference : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSourceUri( | 
|  | IOpcUri **sourceUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetDigestMethod( | 
|  | LPWSTR *digestMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetDigestValue( | 
|  | UINT8 **digestValue, | 
|  | UINT32 *count) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetTransformMethod( | 
|  | OPC_CANONICALIZATION_METHOD *transformMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelationshipSigningOption( | 
|  | OPC_RELATIONSHIPS_SIGNING_OPTION *relationshipSigningOption) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetRelationshipSelectorEnumerator( | 
|  | IOpcRelationshipSelectorEnumerator **selectorEnumerator) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureRelationshipReference, 0x57babac6, 0x9d4a, 0x4e50, 0x8b,0x86, 0xe5,0xd4,0x05,0x1e,0xae,0x7c) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureRelationshipReferenceVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureRelationshipReference *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureRelationshipReference *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureRelationshipReference *This); | 
|  |  | 
|  | /*** IOpcSignatureRelationshipReference methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetSourceUri)( | 
|  | IOpcSignatureRelationshipReference *This, | 
|  | IOpcUri **sourceUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDigestMethod)( | 
|  | IOpcSignatureRelationshipReference *This, | 
|  | LPWSTR *digestMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDigestValue)( | 
|  | IOpcSignatureRelationshipReference *This, | 
|  | UINT8 **digestValue, | 
|  | UINT32 *count); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTransformMethod)( | 
|  | IOpcSignatureRelationshipReference *This, | 
|  | OPC_CANONICALIZATION_METHOD *transformMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationshipSigningOption)( | 
|  | IOpcSignatureRelationshipReference *This, | 
|  | OPC_RELATIONSHIPS_SIGNING_OPTION *relationshipSigningOption); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetRelationshipSelectorEnumerator)( | 
|  | IOpcSignatureRelationshipReference *This, | 
|  | IOpcRelationshipSelectorEnumerator **selectorEnumerator); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureRelationshipReferenceVtbl; | 
|  |  | 
|  | interface IOpcSignatureRelationshipReference { | 
|  | CONST_VTBL IOpcSignatureRelationshipReferenceVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureRelationshipReference_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureRelationshipReference_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureRelationshipReference_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureRelationshipReference methods ***/ | 
|  | #define IOpcSignatureRelationshipReference_GetSourceUri(This,sourceUri) (This)->lpVtbl->GetSourceUri(This,sourceUri) | 
|  | #define IOpcSignatureRelationshipReference_GetDigestMethod(This,digestMethod) (This)->lpVtbl->GetDigestMethod(This,digestMethod) | 
|  | #define IOpcSignatureRelationshipReference_GetDigestValue(This,digestValue,count) (This)->lpVtbl->GetDigestValue(This,digestValue,count) | 
|  | #define IOpcSignatureRelationshipReference_GetTransformMethod(This,transformMethod) (This)->lpVtbl->GetTransformMethod(This,transformMethod) | 
|  | #define IOpcSignatureRelationshipReference_GetRelationshipSigningOption(This,relationshipSigningOption) (This)->lpVtbl->GetRelationshipSigningOption(This,relationshipSigningOption) | 
|  | #define IOpcSignatureRelationshipReference_GetRelationshipSelectorEnumerator(This,selectorEnumerator) (This)->lpVtbl->GetRelationshipSelectorEnumerator(This,selectorEnumerator) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureRelationshipReference_QueryInterface(IOpcSignatureRelationshipReference* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureRelationshipReference_AddRef(IOpcSignatureRelationshipReference* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureRelationshipReference_Release(IOpcSignatureRelationshipReference* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureRelationshipReference methods ***/ | 
|  | static inline HRESULT IOpcSignatureRelationshipReference_GetSourceUri(IOpcSignatureRelationshipReference* This,IOpcUri **sourceUri) { | 
|  | return This->lpVtbl->GetSourceUri(This,sourceUri); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReference_GetDigestMethod(IOpcSignatureRelationshipReference* This,LPWSTR *digestMethod) { | 
|  | return This->lpVtbl->GetDigestMethod(This,digestMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReference_GetDigestValue(IOpcSignatureRelationshipReference* This,UINT8 **digestValue,UINT32 *count) { | 
|  | return This->lpVtbl->GetDigestValue(This,digestValue,count); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReference_GetTransformMethod(IOpcSignatureRelationshipReference* This,OPC_CANONICALIZATION_METHOD *transformMethod) { | 
|  | return This->lpVtbl->GetTransformMethod(This,transformMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReference_GetRelationshipSigningOption(IOpcSignatureRelationshipReference* This,OPC_RELATIONSHIPS_SIGNING_OPTION *relationshipSigningOption) { | 
|  | return This->lpVtbl->GetRelationshipSigningOption(This,relationshipSigningOption); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReference_GetRelationshipSelectorEnumerator(IOpcSignatureRelationshipReference* This,IOpcRelationshipSelectorEnumerator **selectorEnumerator) { | 
|  | return This->lpVtbl->GetRelationshipSelectorEnumerator(This,selectorEnumerator); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureRelationshipReference_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcRelationshipSelectorEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcRelationshipSelectorEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcRelationshipSelectorEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcRelationshipSelectorEnumerator, 0x5e50a181, 0xa91b, 0x48ac, 0x88,0xd2, 0xbc,0xa3,0xd8,0xf8,0xc0,0xb1); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("5e50a181-a91b-48ac-88d2-bca3d8f8c0b1") | 
|  | IOpcRelationshipSelectorEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | IOpcRelationshipSelector **relationshipSelector) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcRelationshipSelectorEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcRelationshipSelectorEnumerator, 0x5e50a181, 0xa91b, 0x48ac, 0x88,0xd2, 0xbc,0xa3,0xd8,0xf8,0xc0,0xb1) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcRelationshipSelectorEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcRelationshipSelectorEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcRelationshipSelectorEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcRelationshipSelectorEnumerator *This); | 
|  |  | 
|  | /*** IOpcRelationshipSelectorEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcRelationshipSelectorEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcRelationshipSelectorEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcRelationshipSelectorEnumerator *This, | 
|  | IOpcRelationshipSelector **relationshipSelector); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcRelationshipSelectorEnumerator *This, | 
|  | IOpcRelationshipSelectorEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcRelationshipSelectorEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcRelationshipSelectorEnumerator { | 
|  | CONST_VTBL IOpcRelationshipSelectorEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcRelationshipSelectorEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcRelationshipSelectorEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcRelationshipSelectorEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcRelationshipSelectorEnumerator methods ***/ | 
|  | #define IOpcRelationshipSelectorEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcRelationshipSelectorEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcRelationshipSelectorEnumerator_GetCurrent(This,relationshipSelector) (This)->lpVtbl->GetCurrent(This,relationshipSelector) | 
|  | #define IOpcRelationshipSelectorEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcRelationshipSelectorEnumerator_QueryInterface(IOpcRelationshipSelectorEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipSelectorEnumerator_AddRef(IOpcRelationshipSelectorEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipSelectorEnumerator_Release(IOpcRelationshipSelectorEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcRelationshipSelectorEnumerator methods ***/ | 
|  | static inline HRESULT IOpcRelationshipSelectorEnumerator_MoveNext(IOpcRelationshipSelectorEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSelectorEnumerator_MovePrevious(IOpcRelationshipSelectorEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSelectorEnumerator_GetCurrent(IOpcRelationshipSelectorEnumerator* This,IOpcRelationshipSelector **relationshipSelector) { | 
|  | return This->lpVtbl->GetCurrent(This,relationshipSelector); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSelectorEnumerator_Clone(IOpcRelationshipSelectorEnumerator* This,IOpcRelationshipSelectorEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcRelationshipSelectorEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcCertificateEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcCertificateEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcCertificateEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcCertificateEnumerator, 0x85131937, 0x8f24, 0x421f, 0xb4,0x39, 0x59,0xab,0x24,0xd1,0x40,0xb8); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("85131937-8f24-421f-b439-59ab24d140b8") | 
|  | IOpcCertificateEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | const CERT_CONTEXT **certificate) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcCertificateEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcCertificateEnumerator, 0x85131937, 0x8f24, 0x421f, 0xb4,0x39, 0x59,0xab,0x24,0xd1,0x40,0xb8) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcCertificateEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcCertificateEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcCertificateEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcCertificateEnumerator *This); | 
|  |  | 
|  | /*** IOpcCertificateEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcCertificateEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcCertificateEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcCertificateEnumerator *This, | 
|  | const CERT_CONTEXT **certificate); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcCertificateEnumerator *This, | 
|  | IOpcCertificateEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcCertificateEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcCertificateEnumerator { | 
|  | CONST_VTBL IOpcCertificateEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcCertificateEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcCertificateEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcCertificateEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcCertificateEnumerator methods ***/ | 
|  | #define IOpcCertificateEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcCertificateEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcCertificateEnumerator_GetCurrent(This,certificate) (This)->lpVtbl->GetCurrent(This,certificate) | 
|  | #define IOpcCertificateEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcCertificateEnumerator_QueryInterface(IOpcCertificateEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcCertificateEnumerator_AddRef(IOpcCertificateEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcCertificateEnumerator_Release(IOpcCertificateEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcCertificateEnumerator methods ***/ | 
|  | static inline HRESULT IOpcCertificateEnumerator_MoveNext(IOpcCertificateEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcCertificateEnumerator_MovePrevious(IOpcCertificateEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcCertificateEnumerator_GetCurrent(IOpcCertificateEnumerator* This,const CERT_CONTEXT **certificate) { | 
|  | return This->lpVtbl->GetCurrent(This,certificate); | 
|  | } | 
|  | static inline HRESULT IOpcCertificateEnumerator_Clone(IOpcCertificateEnumerator* This,IOpcCertificateEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcCertificateEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcCertificateSet interface | 
|  | */ | 
|  | #ifndef __IOpcCertificateSet_INTERFACE_DEFINED__ | 
|  | #define __IOpcCertificateSet_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcCertificateSet, 0x56ea4325, 0x8e2d, 0x4167, 0xb1,0xa4, 0xe4,0x86,0xd2,0x4c,0x8f,0xa7); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("56ea4325-8e2d-4167-b1a4-e486d24c8fa7") | 
|  | IOpcCertificateSet : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE Add( | 
|  | const CERT_CONTEXT *certificate) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Remove( | 
|  | const CERT_CONTEXT *certificate) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumerator( | 
|  | IOpcCertificateEnumerator **certificateEnumerator) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcCertificateSet, 0x56ea4325, 0x8e2d, 0x4167, 0xb1,0xa4, 0xe4,0x86,0xd2,0x4c,0x8f,0xa7) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcCertificateSetVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcCertificateSet *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcCertificateSet *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcCertificateSet *This); | 
|  |  | 
|  | /*** IOpcCertificateSet methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *Add)( | 
|  | IOpcCertificateSet *This, | 
|  | const CERT_CONTEXT *certificate); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Remove)( | 
|  | IOpcCertificateSet *This, | 
|  | const CERT_CONTEXT *certificate); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumerator)( | 
|  | IOpcCertificateSet *This, | 
|  | IOpcCertificateEnumerator **certificateEnumerator); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcCertificateSetVtbl; | 
|  |  | 
|  | interface IOpcCertificateSet { | 
|  | CONST_VTBL IOpcCertificateSetVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcCertificateSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcCertificateSet_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcCertificateSet_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcCertificateSet methods ***/ | 
|  | #define IOpcCertificateSet_Add(This,certificate) (This)->lpVtbl->Add(This,certificate) | 
|  | #define IOpcCertificateSet_Remove(This,certificate) (This)->lpVtbl->Remove(This,certificate) | 
|  | #define IOpcCertificateSet_GetEnumerator(This,certificateEnumerator) (This)->lpVtbl->GetEnumerator(This,certificateEnumerator) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcCertificateSet_QueryInterface(IOpcCertificateSet* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcCertificateSet_AddRef(IOpcCertificateSet* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcCertificateSet_Release(IOpcCertificateSet* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcCertificateSet methods ***/ | 
|  | static inline HRESULT IOpcCertificateSet_Add(IOpcCertificateSet* This,const CERT_CONTEXT *certificate) { | 
|  | return This->lpVtbl->Add(This,certificate); | 
|  | } | 
|  | static inline HRESULT IOpcCertificateSet_Remove(IOpcCertificateSet* This,const CERT_CONTEXT *certificate) { | 
|  | return This->lpVtbl->Remove(This,certificate); | 
|  | } | 
|  | static inline HRESULT IOpcCertificateSet_GetEnumerator(IOpcCertificateSet* This,IOpcCertificateEnumerator **certificateEnumerator) { | 
|  | return This->lpVtbl->GetEnumerator(This,certificateEnumerator); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcCertificateSet_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcDigitalSignatureEnumerator interface | 
|  | */ | 
|  | #ifndef __IOpcDigitalSignatureEnumerator_INTERFACE_DEFINED__ | 
|  | #define __IOpcDigitalSignatureEnumerator_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcDigitalSignatureEnumerator, 0x967b6882, 0x0ba3, 0x4358, 0xb9,0xe7, 0xb6,0x4c,0x75,0x06,0x3c,0x5e); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("967b6882-0ba3-4358-b9e7-b64c75063c5e") | 
|  | IOpcDigitalSignatureEnumerator : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE MoveNext( | 
|  | WINBOOL *hasNext) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE MovePrevious( | 
|  | WINBOOL *hasPrevious) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCurrent( | 
|  | IOpcDigitalSignature **digitalSignature) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Clone( | 
|  | IOpcDigitalSignatureEnumerator **copy) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcDigitalSignatureEnumerator, 0x967b6882, 0x0ba3, 0x4358, 0xb9,0xe7, 0xb6,0x4c,0x75,0x06,0x3c,0x5e) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcDigitalSignatureEnumeratorVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcDigitalSignatureEnumerator *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcDigitalSignatureEnumerator *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcDigitalSignatureEnumerator *This); | 
|  |  | 
|  | /*** IOpcDigitalSignatureEnumerator methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *MoveNext)( | 
|  | IOpcDigitalSignatureEnumerator *This, | 
|  | WINBOOL *hasNext); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *MovePrevious)( | 
|  | IOpcDigitalSignatureEnumerator *This, | 
|  | WINBOOL *hasPrevious); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCurrent)( | 
|  | IOpcDigitalSignatureEnumerator *This, | 
|  | IOpcDigitalSignature **digitalSignature); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Clone)( | 
|  | IOpcDigitalSignatureEnumerator *This, | 
|  | IOpcDigitalSignatureEnumerator **copy); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcDigitalSignatureEnumeratorVtbl; | 
|  |  | 
|  | interface IOpcDigitalSignatureEnumerator { | 
|  | CONST_VTBL IOpcDigitalSignatureEnumeratorVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcDigitalSignatureEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcDigitalSignatureEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcDigitalSignatureEnumerator_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcDigitalSignatureEnumerator methods ***/ | 
|  | #define IOpcDigitalSignatureEnumerator_MoveNext(This,hasNext) (This)->lpVtbl->MoveNext(This,hasNext) | 
|  | #define IOpcDigitalSignatureEnumerator_MovePrevious(This,hasPrevious) (This)->lpVtbl->MovePrevious(This,hasPrevious) | 
|  | #define IOpcDigitalSignatureEnumerator_GetCurrent(This,digitalSignature) (This)->lpVtbl->GetCurrent(This,digitalSignature) | 
|  | #define IOpcDigitalSignatureEnumerator_Clone(This,copy) (This)->lpVtbl->Clone(This,copy) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcDigitalSignatureEnumerator_QueryInterface(IOpcDigitalSignatureEnumerator* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcDigitalSignatureEnumerator_AddRef(IOpcDigitalSignatureEnumerator* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcDigitalSignatureEnumerator_Release(IOpcDigitalSignatureEnumerator* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcDigitalSignatureEnumerator methods ***/ | 
|  | static inline HRESULT IOpcDigitalSignatureEnumerator_MoveNext(IOpcDigitalSignatureEnumerator* This,WINBOOL *hasNext) { | 
|  | return This->lpVtbl->MoveNext(This,hasNext); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureEnumerator_MovePrevious(IOpcDigitalSignatureEnumerator* This,WINBOOL *hasPrevious) { | 
|  | return This->lpVtbl->MovePrevious(This,hasPrevious); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureEnumerator_GetCurrent(IOpcDigitalSignatureEnumerator* This,IOpcDigitalSignature **digitalSignature) { | 
|  | return This->lpVtbl->GetCurrent(This,digitalSignature); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureEnumerator_Clone(IOpcDigitalSignatureEnumerator* This,IOpcDigitalSignatureEnumerator **copy) { | 
|  | return This->lpVtbl->Clone(This,copy); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcDigitalSignatureEnumerator_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcDigitalSignatureManager interface | 
|  | */ | 
|  | #ifndef __IOpcDigitalSignatureManager_INTERFACE_DEFINED__ | 
|  | #define __IOpcDigitalSignatureManager_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcDigitalSignatureManager, 0xd5e62a0b, 0x696d, 0x462f, 0x94,0xdf, 0x72,0xe3,0x3c,0xef,0x26,0x59); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("d5e62a0b-696d-462f-94df-72e33cef2659") | 
|  | IOpcDigitalSignatureManager : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureOriginPartName( | 
|  | IOpcPartUri **signatureOriginPartName) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE SetSignatureOriginPartName( | 
|  | IOpcPartUri *signatureOriginPartName) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureEnumerator( | 
|  | IOpcDigitalSignatureEnumerator **signatureEnumerator) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE RemoveSignature( | 
|  | IOpcPartUri *signaturePartName) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreateSigningOptions( | 
|  | IOpcSigningOptions **signingOptions) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Validate( | 
|  | IOpcDigitalSignature *signature, | 
|  | const CERT_CONTEXT *certificate, | 
|  | OPC_SIGNATURE_VALIDATION_RESULT *validationResult) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Sign( | 
|  | const CERT_CONTEXT *certificate, | 
|  | IOpcSigningOptions *signingOptions, | 
|  | IOpcDigitalSignature **digitalSignature) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE ReplaceSignatureXml( | 
|  | IOpcPartUri *signaturePartName, | 
|  | const UINT8 *newSignatureXml, | 
|  | UINT32 count, | 
|  | IOpcDigitalSignature **digitalSignature) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcDigitalSignatureManager, 0xd5e62a0b, 0x696d, 0x462f, 0x94,0xdf, 0x72,0xe3,0x3c,0xef,0x26,0x59) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcDigitalSignatureManagerVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcDigitalSignatureManager *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcDigitalSignatureManager *This); | 
|  |  | 
|  | /*** IOpcDigitalSignatureManager methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureOriginPartName)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | IOpcPartUri **signatureOriginPartName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *SetSignatureOriginPartName)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | IOpcPartUri *signatureOriginPartName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureEnumerator)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | IOpcDigitalSignatureEnumerator **signatureEnumerator); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *RemoveSignature)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | IOpcPartUri *signaturePartName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreateSigningOptions)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | IOpcSigningOptions **signingOptions); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Validate)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | IOpcDigitalSignature *signature, | 
|  | const CERT_CONTEXT *certificate, | 
|  | OPC_SIGNATURE_VALIDATION_RESULT *validationResult); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Sign)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | const CERT_CONTEXT *certificate, | 
|  | IOpcSigningOptions *signingOptions, | 
|  | IOpcDigitalSignature **digitalSignature); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *ReplaceSignatureXml)( | 
|  | IOpcDigitalSignatureManager *This, | 
|  | IOpcPartUri *signaturePartName, | 
|  | const UINT8 *newSignatureXml, | 
|  | UINT32 count, | 
|  | IOpcDigitalSignature **digitalSignature); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcDigitalSignatureManagerVtbl; | 
|  |  | 
|  | interface IOpcDigitalSignatureManager { | 
|  | CONST_VTBL IOpcDigitalSignatureManagerVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcDigitalSignatureManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcDigitalSignatureManager_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcDigitalSignatureManager_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcDigitalSignatureManager methods ***/ | 
|  | #define IOpcDigitalSignatureManager_GetSignatureOriginPartName(This,signatureOriginPartName) (This)->lpVtbl->GetSignatureOriginPartName(This,signatureOriginPartName) | 
|  | #define IOpcDigitalSignatureManager_SetSignatureOriginPartName(This,signatureOriginPartName) (This)->lpVtbl->SetSignatureOriginPartName(This,signatureOriginPartName) | 
|  | #define IOpcDigitalSignatureManager_GetSignatureEnumerator(This,signatureEnumerator) (This)->lpVtbl->GetSignatureEnumerator(This,signatureEnumerator) | 
|  | #define IOpcDigitalSignatureManager_RemoveSignature(This,signaturePartName) (This)->lpVtbl->RemoveSignature(This,signaturePartName) | 
|  | #define IOpcDigitalSignatureManager_CreateSigningOptions(This,signingOptions) (This)->lpVtbl->CreateSigningOptions(This,signingOptions) | 
|  | #define IOpcDigitalSignatureManager_Validate(This,signature,certificate,validationResult) (This)->lpVtbl->Validate(This,signature,certificate,validationResult) | 
|  | #define IOpcDigitalSignatureManager_Sign(This,certificate,signingOptions,digitalSignature) (This)->lpVtbl->Sign(This,certificate,signingOptions,digitalSignature) | 
|  | #define IOpcDigitalSignatureManager_ReplaceSignatureXml(This,signaturePartName,newSignatureXml,count,digitalSignature) (This)->lpVtbl->ReplaceSignatureXml(This,signaturePartName,newSignatureXml,count,digitalSignature) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcDigitalSignatureManager_QueryInterface(IOpcDigitalSignatureManager* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcDigitalSignatureManager_AddRef(IOpcDigitalSignatureManager* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcDigitalSignatureManager_Release(IOpcDigitalSignatureManager* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcDigitalSignatureManager methods ***/ | 
|  | static inline HRESULT IOpcDigitalSignatureManager_GetSignatureOriginPartName(IOpcDigitalSignatureManager* This,IOpcPartUri **signatureOriginPartName) { | 
|  | return This->lpVtbl->GetSignatureOriginPartName(This,signatureOriginPartName); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureManager_SetSignatureOriginPartName(IOpcDigitalSignatureManager* This,IOpcPartUri *signatureOriginPartName) { | 
|  | return This->lpVtbl->SetSignatureOriginPartName(This,signatureOriginPartName); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureManager_GetSignatureEnumerator(IOpcDigitalSignatureManager* This,IOpcDigitalSignatureEnumerator **signatureEnumerator) { | 
|  | return This->lpVtbl->GetSignatureEnumerator(This,signatureEnumerator); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureManager_RemoveSignature(IOpcDigitalSignatureManager* This,IOpcPartUri *signaturePartName) { | 
|  | return This->lpVtbl->RemoveSignature(This,signaturePartName); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureManager_CreateSigningOptions(IOpcDigitalSignatureManager* This,IOpcSigningOptions **signingOptions) { | 
|  | return This->lpVtbl->CreateSigningOptions(This,signingOptions); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureManager_Validate(IOpcDigitalSignatureManager* This,IOpcDigitalSignature *signature,const CERT_CONTEXT *certificate,OPC_SIGNATURE_VALIDATION_RESULT *validationResult) { | 
|  | return This->lpVtbl->Validate(This,signature,certificate,validationResult); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureManager_Sign(IOpcDigitalSignatureManager* This,const CERT_CONTEXT *certificate,IOpcSigningOptions *signingOptions,IOpcDigitalSignature **digitalSignature) { | 
|  | return This->lpVtbl->Sign(This,certificate,signingOptions,digitalSignature); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignatureManager_ReplaceSignatureXml(IOpcDigitalSignatureManager* This,IOpcPartUri *signaturePartName,const UINT8 *newSignatureXml,UINT32 count,IOpcDigitalSignature **digitalSignature) { | 
|  | return This->lpVtbl->ReplaceSignatureXml(This,signaturePartName,newSignatureXml,count,digitalSignature); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcDigitalSignatureManager_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignaturePartReferenceSet interface | 
|  | */ | 
|  | #ifndef __IOpcSignaturePartReferenceSet_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignaturePartReferenceSet_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignaturePartReferenceSet, 0x6c9fe28c, 0xecd9, 0x4b22, 0x9d,0x36, 0x7f,0xdd,0xe6,0x70,0xfe,0xc0); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("6c9fe28c-ecd9-4b22-9d36-7fdde670fec0") | 
|  | IOpcSignaturePartReferenceSet : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE Create( | 
|  | IOpcPartUri *partUri, | 
|  | LPCWSTR digestMethod, | 
|  | OPC_CANONICALIZATION_METHOD transformMethod, | 
|  | IOpcSignaturePartReference **partReference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Delete( | 
|  | IOpcSignaturePartReference *partReference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumerator( | 
|  | IOpcSignaturePartReferenceEnumerator **partReferenceEnumerator) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignaturePartReferenceSet, 0x6c9fe28c, 0xecd9, 0x4b22, 0x9d,0x36, 0x7f,0xdd,0xe6,0x70,0xfe,0xc0) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignaturePartReferenceSetVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignaturePartReferenceSet *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignaturePartReferenceSet *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignaturePartReferenceSet *This); | 
|  |  | 
|  | /*** IOpcSignaturePartReferenceSet methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *Create)( | 
|  | IOpcSignaturePartReferenceSet *This, | 
|  | IOpcPartUri *partUri, | 
|  | LPCWSTR digestMethod, | 
|  | OPC_CANONICALIZATION_METHOD transformMethod, | 
|  | IOpcSignaturePartReference **partReference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Delete)( | 
|  | IOpcSignaturePartReferenceSet *This, | 
|  | IOpcSignaturePartReference *partReference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumerator)( | 
|  | IOpcSignaturePartReferenceSet *This, | 
|  | IOpcSignaturePartReferenceEnumerator **partReferenceEnumerator); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignaturePartReferenceSetVtbl; | 
|  |  | 
|  | interface IOpcSignaturePartReferenceSet { | 
|  | CONST_VTBL IOpcSignaturePartReferenceSetVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignaturePartReferenceSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignaturePartReferenceSet_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignaturePartReferenceSet_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignaturePartReferenceSet methods ***/ | 
|  | #define IOpcSignaturePartReferenceSet_Create(This,partUri,digestMethod,transformMethod,partReference) (This)->lpVtbl->Create(This,partUri,digestMethod,transformMethod,partReference) | 
|  | #define IOpcSignaturePartReferenceSet_Delete(This,partReference) (This)->lpVtbl->Delete(This,partReference) | 
|  | #define IOpcSignaturePartReferenceSet_GetEnumerator(This,partReferenceEnumerator) (This)->lpVtbl->GetEnumerator(This,partReferenceEnumerator) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignaturePartReferenceSet_QueryInterface(IOpcSignaturePartReferenceSet* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignaturePartReferenceSet_AddRef(IOpcSignaturePartReferenceSet* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignaturePartReferenceSet_Release(IOpcSignaturePartReferenceSet* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignaturePartReferenceSet methods ***/ | 
|  | static inline HRESULT IOpcSignaturePartReferenceSet_Create(IOpcSignaturePartReferenceSet* This,IOpcPartUri *partUri,LPCWSTR digestMethod,OPC_CANONICALIZATION_METHOD transformMethod,IOpcSignaturePartReference **partReference) { | 
|  | return This->lpVtbl->Create(This,partUri,digestMethod,transformMethod,partReference); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReferenceSet_Delete(IOpcSignaturePartReferenceSet* This,IOpcSignaturePartReference *partReference) { | 
|  | return This->lpVtbl->Delete(This,partReference); | 
|  | } | 
|  | static inline HRESULT IOpcSignaturePartReferenceSet_GetEnumerator(IOpcSignaturePartReferenceSet* This,IOpcSignaturePartReferenceEnumerator **partReferenceEnumerator) { | 
|  | return This->lpVtbl->GetEnumerator(This,partReferenceEnumerator); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignaturePartReferenceSet_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcRelationshipSelectorSet interface | 
|  | */ | 
|  | #ifndef __IOpcRelationshipSelectorSet_INTERFACE_DEFINED__ | 
|  | #define __IOpcRelationshipSelectorSet_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcRelationshipSelectorSet, 0x6e34c269, 0xa4d3, 0x47c0, 0xb5,0xc4, 0x87,0xff,0x2b,0x3b,0x61,0x36); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("6e34c269-a4d3-47c0-b5c4-87ff2b3b6136") | 
|  | IOpcRelationshipSelectorSet : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE Create( | 
|  | OPC_RELATIONSHIP_SELECTOR selector, | 
|  | LPCWSTR selectionCriterion, | 
|  | IOpcRelationshipSelector **relationshipSelector) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Delete( | 
|  | IOpcRelationshipSelector *relationshipSelector) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumerator( | 
|  | IOpcRelationshipSelectorEnumerator **relationshipSelectorEnumerator) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcRelationshipSelectorSet, 0x6e34c269, 0xa4d3, 0x47c0, 0xb5,0xc4, 0x87,0xff,0x2b,0x3b,0x61,0x36) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcRelationshipSelectorSetVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcRelationshipSelectorSet *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcRelationshipSelectorSet *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcRelationshipSelectorSet *This); | 
|  |  | 
|  | /*** IOpcRelationshipSelectorSet methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *Create)( | 
|  | IOpcRelationshipSelectorSet *This, | 
|  | OPC_RELATIONSHIP_SELECTOR selector, | 
|  | LPCWSTR selectionCriterion, | 
|  | IOpcRelationshipSelector **relationshipSelector); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Delete)( | 
|  | IOpcRelationshipSelectorSet *This, | 
|  | IOpcRelationshipSelector *relationshipSelector); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumerator)( | 
|  | IOpcRelationshipSelectorSet *This, | 
|  | IOpcRelationshipSelectorEnumerator **relationshipSelectorEnumerator); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcRelationshipSelectorSetVtbl; | 
|  |  | 
|  | interface IOpcRelationshipSelectorSet { | 
|  | CONST_VTBL IOpcRelationshipSelectorSetVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcRelationshipSelectorSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcRelationshipSelectorSet_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcRelationshipSelectorSet_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcRelationshipSelectorSet methods ***/ | 
|  | #define IOpcRelationshipSelectorSet_Create(This,selector,selectionCriterion,relationshipSelector) (This)->lpVtbl->Create(This,selector,selectionCriterion,relationshipSelector) | 
|  | #define IOpcRelationshipSelectorSet_Delete(This,relationshipSelector) (This)->lpVtbl->Delete(This,relationshipSelector) | 
|  | #define IOpcRelationshipSelectorSet_GetEnumerator(This,relationshipSelectorEnumerator) (This)->lpVtbl->GetEnumerator(This,relationshipSelectorEnumerator) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcRelationshipSelectorSet_QueryInterface(IOpcRelationshipSelectorSet* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipSelectorSet_AddRef(IOpcRelationshipSelectorSet* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcRelationshipSelectorSet_Release(IOpcRelationshipSelectorSet* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcRelationshipSelectorSet methods ***/ | 
|  | static inline HRESULT IOpcRelationshipSelectorSet_Create(IOpcRelationshipSelectorSet* This,OPC_RELATIONSHIP_SELECTOR selector,LPCWSTR selectionCriterion,IOpcRelationshipSelector **relationshipSelector) { | 
|  | return This->lpVtbl->Create(This,selector,selectionCriterion,relationshipSelector); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSelectorSet_Delete(IOpcRelationshipSelectorSet* This,IOpcRelationshipSelector *relationshipSelector) { | 
|  | return This->lpVtbl->Delete(This,relationshipSelector); | 
|  | } | 
|  | static inline HRESULT IOpcRelationshipSelectorSet_GetEnumerator(IOpcRelationshipSelectorSet* This,IOpcRelationshipSelectorEnumerator **relationshipSelectorEnumerator) { | 
|  | return This->lpVtbl->GetEnumerator(This,relationshipSelectorEnumerator); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcRelationshipSelectorSet_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureRelationshipReferenceSet interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureRelationshipReferenceSet_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureRelationshipReferenceSet_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureRelationshipReferenceSet, 0x9f863ca5, 0x3631, 0x404c, 0x82,0x8d, 0x80,0x7e,0x07,0x15,0x06,0x9b); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("9f863ca5-3631-404c-828d-807e0715069b") | 
|  | IOpcSignatureRelationshipReferenceSet : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE Create( | 
|  | IOpcUri *sourceUri, | 
|  | LPCWSTR digestMethod, | 
|  | OPC_RELATIONSHIPS_SIGNING_OPTION relationshipSigningOption, | 
|  | IOpcRelationshipSelectorSet *selectorSet, | 
|  | OPC_CANONICALIZATION_METHOD transformMethod, | 
|  | IOpcSignatureRelationshipReference **relationshipReference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreateRelationshipSelectorSet( | 
|  | IOpcRelationshipSelectorSet **selectorSet) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Delete( | 
|  | IOpcSignatureRelationshipReference *relationshipReference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumerator( | 
|  | IOpcSignatureRelationshipReferenceEnumerator **relationshipReferenceEnumerator) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureRelationshipReferenceSet, 0x9f863ca5, 0x3631, 0x404c, 0x82,0x8d, 0x80,0x7e,0x07,0x15,0x06,0x9b) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureRelationshipReferenceSetVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureRelationshipReferenceSet *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureRelationshipReferenceSet *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureRelationshipReferenceSet *This); | 
|  |  | 
|  | /*** IOpcSignatureRelationshipReferenceSet methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *Create)( | 
|  | IOpcSignatureRelationshipReferenceSet *This, | 
|  | IOpcUri *sourceUri, | 
|  | LPCWSTR digestMethod, | 
|  | OPC_RELATIONSHIPS_SIGNING_OPTION relationshipSigningOption, | 
|  | IOpcRelationshipSelectorSet *selectorSet, | 
|  | OPC_CANONICALIZATION_METHOD transformMethod, | 
|  | IOpcSignatureRelationshipReference **relationshipReference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreateRelationshipSelectorSet)( | 
|  | IOpcSignatureRelationshipReferenceSet *This, | 
|  | IOpcRelationshipSelectorSet **selectorSet); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Delete)( | 
|  | IOpcSignatureRelationshipReferenceSet *This, | 
|  | IOpcSignatureRelationshipReference *relationshipReference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumerator)( | 
|  | IOpcSignatureRelationshipReferenceSet *This, | 
|  | IOpcSignatureRelationshipReferenceEnumerator **relationshipReferenceEnumerator); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureRelationshipReferenceSetVtbl; | 
|  |  | 
|  | interface IOpcSignatureRelationshipReferenceSet { | 
|  | CONST_VTBL IOpcSignatureRelationshipReferenceSetVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureRelationshipReferenceSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureRelationshipReferenceSet_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureRelationshipReferenceSet_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureRelationshipReferenceSet methods ***/ | 
|  | #define IOpcSignatureRelationshipReferenceSet_Create(This,sourceUri,digestMethod,relationshipSigningOption,selectorSet,transformMethod,relationshipReference) (This)->lpVtbl->Create(This,sourceUri,digestMethod,relationshipSigningOption,selectorSet,transformMethod,relationshipReference) | 
|  | #define IOpcSignatureRelationshipReferenceSet_CreateRelationshipSelectorSet(This,selectorSet) (This)->lpVtbl->CreateRelationshipSelectorSet(This,selectorSet) | 
|  | #define IOpcSignatureRelationshipReferenceSet_Delete(This,relationshipReference) (This)->lpVtbl->Delete(This,relationshipReference) | 
|  | #define IOpcSignatureRelationshipReferenceSet_GetEnumerator(This,relationshipReferenceEnumerator) (This)->lpVtbl->GetEnumerator(This,relationshipReferenceEnumerator) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceSet_QueryInterface(IOpcSignatureRelationshipReferenceSet* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureRelationshipReferenceSet_AddRef(IOpcSignatureRelationshipReferenceSet* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureRelationshipReferenceSet_Release(IOpcSignatureRelationshipReferenceSet* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureRelationshipReferenceSet methods ***/ | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceSet_Create(IOpcSignatureRelationshipReferenceSet* This,IOpcUri *sourceUri,LPCWSTR digestMethod,OPC_RELATIONSHIPS_SIGNING_OPTION relationshipSigningOption,IOpcRelationshipSelectorSet *selectorSet,OPC_CANONICALIZATION_METHOD transformMethod,IOpcSignatureRelationshipReference **relationshipReference) { | 
|  | return This->lpVtbl->Create(This,sourceUri,digestMethod,relationshipSigningOption,selectorSet,transformMethod,relationshipReference); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceSet_CreateRelationshipSelectorSet(IOpcSignatureRelationshipReferenceSet* This,IOpcRelationshipSelectorSet **selectorSet) { | 
|  | return This->lpVtbl->CreateRelationshipSelectorSet(This,selectorSet); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceSet_Delete(IOpcSignatureRelationshipReferenceSet* This,IOpcSignatureRelationshipReference *relationshipReference) { | 
|  | return This->lpVtbl->Delete(This,relationshipReference); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureRelationshipReferenceSet_GetEnumerator(IOpcSignatureRelationshipReferenceSet* This,IOpcSignatureRelationshipReferenceEnumerator **relationshipReferenceEnumerator) { | 
|  | return This->lpVtbl->GetEnumerator(This,relationshipReferenceEnumerator); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureRelationshipReferenceSet_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureReferenceSet interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureReferenceSet_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureReferenceSet_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureReferenceSet, 0xf3b02d31, 0xab12, 0x42dd, 0x9e,0x2f, 0x2b,0x16,0x76,0x1c,0x3c,0x1e); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("f3b02d31-ab12-42dd-9e2f-2b16761c3c1e") | 
|  | IOpcSignatureReferenceSet : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE Create( | 
|  | IUri *referenceUri, | 
|  | LPCWSTR referenceId, | 
|  | LPCWSTR type, | 
|  | LPCWSTR digestMethod, | 
|  | OPC_CANONICALIZATION_METHOD transformMethod, | 
|  | IOpcSignatureReference **reference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Delete( | 
|  | IOpcSignatureReference *reference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumerator( | 
|  | IOpcSignatureReferenceEnumerator **referenceEnumerator) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureReferenceSet, 0xf3b02d31, 0xab12, 0x42dd, 0x9e,0x2f, 0x2b,0x16,0x76,0x1c,0x3c,0x1e) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureReferenceSetVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureReferenceSet *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureReferenceSet *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureReferenceSet *This); | 
|  |  | 
|  | /*** IOpcSignatureReferenceSet methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *Create)( | 
|  | IOpcSignatureReferenceSet *This, | 
|  | IUri *referenceUri, | 
|  | LPCWSTR referenceId, | 
|  | LPCWSTR type, | 
|  | LPCWSTR digestMethod, | 
|  | OPC_CANONICALIZATION_METHOD transformMethod, | 
|  | IOpcSignatureReference **reference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Delete)( | 
|  | IOpcSignatureReferenceSet *This, | 
|  | IOpcSignatureReference *reference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumerator)( | 
|  | IOpcSignatureReferenceSet *This, | 
|  | IOpcSignatureReferenceEnumerator **referenceEnumerator); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureReferenceSetVtbl; | 
|  |  | 
|  | interface IOpcSignatureReferenceSet { | 
|  | CONST_VTBL IOpcSignatureReferenceSetVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureReferenceSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureReferenceSet_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureReferenceSet_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureReferenceSet methods ***/ | 
|  | #define IOpcSignatureReferenceSet_Create(This,referenceUri,referenceId,type,digestMethod,transformMethod,reference) (This)->lpVtbl->Create(This,referenceUri,referenceId,type,digestMethod,transformMethod,reference) | 
|  | #define IOpcSignatureReferenceSet_Delete(This,reference) (This)->lpVtbl->Delete(This,reference) | 
|  | #define IOpcSignatureReferenceSet_GetEnumerator(This,referenceEnumerator) (This)->lpVtbl->GetEnumerator(This,referenceEnumerator) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureReferenceSet_QueryInterface(IOpcSignatureReferenceSet* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureReferenceSet_AddRef(IOpcSignatureReferenceSet* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureReferenceSet_Release(IOpcSignatureReferenceSet* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureReferenceSet methods ***/ | 
|  | static inline HRESULT IOpcSignatureReferenceSet_Create(IOpcSignatureReferenceSet* This,IUri *referenceUri,LPCWSTR referenceId,LPCWSTR type,LPCWSTR digestMethod,OPC_CANONICALIZATION_METHOD transformMethod,IOpcSignatureReference **reference) { | 
|  | return This->lpVtbl->Create(This,referenceUri,referenceId,type,digestMethod,transformMethod,reference); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReferenceSet_Delete(IOpcSignatureReferenceSet* This,IOpcSignatureReference *reference) { | 
|  | return This->lpVtbl->Delete(This,reference); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureReferenceSet_GetEnumerator(IOpcSignatureReferenceSet* This,IOpcSignatureReferenceEnumerator **referenceEnumerator) { | 
|  | return This->lpVtbl->GetEnumerator(This,referenceEnumerator); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureReferenceSet_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSignatureCustomObjectSet interface | 
|  | */ | 
|  | #ifndef __IOpcSignatureCustomObjectSet_INTERFACE_DEFINED__ | 
|  | #define __IOpcSignatureCustomObjectSet_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSignatureCustomObjectSet, 0x8f792ac5, 0x7947, 0x4e11, 0xbc,0x3d, 0x26,0x59,0xff,0x04,0x6a,0xe1); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("8f792ac5-7947-4e11-bc3d-2659ff046ae1") | 
|  | IOpcSignatureCustomObjectSet : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE Create( | 
|  | const UINT8 *xmlMarkup, | 
|  | UINT32 count, | 
|  | IOpcSignatureCustomObject **customObject) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE Delete( | 
|  | IOpcSignatureCustomObject *customObject) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetEnumerator( | 
|  | IOpcSignatureCustomObjectEnumerator **customObjectEnumerator) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSignatureCustomObjectSet, 0x8f792ac5, 0x7947, 0x4e11, 0xbc,0x3d, 0x26,0x59,0xff,0x04,0x6a,0xe1) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSignatureCustomObjectSetVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSignatureCustomObjectSet *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSignatureCustomObjectSet *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSignatureCustomObjectSet *This); | 
|  |  | 
|  | /*** IOpcSignatureCustomObjectSet methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *Create)( | 
|  | IOpcSignatureCustomObjectSet *This, | 
|  | const UINT8 *xmlMarkup, | 
|  | UINT32 count, | 
|  | IOpcSignatureCustomObject **customObject); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *Delete)( | 
|  | IOpcSignatureCustomObjectSet *This, | 
|  | IOpcSignatureCustomObject *customObject); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetEnumerator)( | 
|  | IOpcSignatureCustomObjectSet *This, | 
|  | IOpcSignatureCustomObjectEnumerator **customObjectEnumerator); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSignatureCustomObjectSetVtbl; | 
|  |  | 
|  | interface IOpcSignatureCustomObjectSet { | 
|  | CONST_VTBL IOpcSignatureCustomObjectSetVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSignatureCustomObjectSet_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSignatureCustomObjectSet_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSignatureCustomObjectSet_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSignatureCustomObjectSet methods ***/ | 
|  | #define IOpcSignatureCustomObjectSet_Create(This,xmlMarkup,count,customObject) (This)->lpVtbl->Create(This,xmlMarkup,count,customObject) | 
|  | #define IOpcSignatureCustomObjectSet_Delete(This,customObject) (This)->lpVtbl->Delete(This,customObject) | 
|  | #define IOpcSignatureCustomObjectSet_GetEnumerator(This,customObjectEnumerator) (This)->lpVtbl->GetEnumerator(This,customObjectEnumerator) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSignatureCustomObjectSet_QueryInterface(IOpcSignatureCustomObjectSet* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSignatureCustomObjectSet_AddRef(IOpcSignatureCustomObjectSet* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSignatureCustomObjectSet_Release(IOpcSignatureCustomObjectSet* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSignatureCustomObjectSet methods ***/ | 
|  | static inline HRESULT IOpcSignatureCustomObjectSet_Create(IOpcSignatureCustomObjectSet* This,const UINT8 *xmlMarkup,UINT32 count,IOpcSignatureCustomObject **customObject) { | 
|  | return This->lpVtbl->Create(This,xmlMarkup,count,customObject); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureCustomObjectSet_Delete(IOpcSignatureCustomObjectSet* This,IOpcSignatureCustomObject *customObject) { | 
|  | return This->lpVtbl->Delete(This,customObject); | 
|  | } | 
|  | static inline HRESULT IOpcSignatureCustomObjectSet_GetEnumerator(IOpcSignatureCustomObjectSet* This,IOpcSignatureCustomObjectEnumerator **customObjectEnumerator) { | 
|  | return This->lpVtbl->GetEnumerator(This,customObjectEnumerator); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSignatureCustomObjectSet_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcDigitalSignature interface | 
|  | */ | 
|  | #ifndef __IOpcDigitalSignature_INTERFACE_DEFINED__ | 
|  | #define __IOpcDigitalSignature_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcDigitalSignature, 0x52ab21dd, 0x1cd0, 0x4949, 0xbc,0x80, 0x0c,0x12,0x32,0xd0,0x0c,0xb4); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("52ab21dd-1cd0-4949-bc80-0c1232d00cb4") | 
|  | IOpcDigitalSignature : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetNamespaces( | 
|  | LPWSTR **prefixes, | 
|  | LPWSTR **namespaces, | 
|  | UINT32 *count) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureId( | 
|  | LPWSTR *signatureId) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignaturePartName( | 
|  | IOpcPartUri **signaturePartName) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureMethod( | 
|  | LPWSTR *signatureMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCanonicalizationMethod( | 
|  | OPC_CANONICALIZATION_METHOD *canonicalizationMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureValue( | 
|  | UINT8 **signatureValue, | 
|  | UINT32 *count) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignaturePartReferenceEnumerator( | 
|  | IOpcSignaturePartReferenceEnumerator **partReferenceEnumerator) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureRelationshipReferenceEnumerator( | 
|  | IOpcSignatureRelationshipReferenceEnumerator **relationshipReferenceEnumerator) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSigningTime( | 
|  | LPWSTR *signingTime) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetTimeFormat( | 
|  | OPC_SIGNATURE_TIME_FORMAT *timeFormat) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetPackageObjectReference( | 
|  | IOpcSignatureReference **packageObjectReference) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCertificateEnumerator( | 
|  | IOpcCertificateEnumerator **certificateEnumerator) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCustomReferenceEnumerator( | 
|  | IOpcSignatureReferenceEnumerator **customReferenceEnumerator) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCustomObjectEnumerator( | 
|  | IOpcSignatureCustomObjectEnumerator **customObjectEnumerator) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureXml( | 
|  | UINT8 **signatureXml, | 
|  | UINT32 *count) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcDigitalSignature, 0x52ab21dd, 0x1cd0, 0x4949, 0xbc,0x80, 0x0c,0x12,0x32,0xd0,0x0c,0xb4) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcDigitalSignatureVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcDigitalSignature *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcDigitalSignature *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcDigitalSignature *This); | 
|  |  | 
|  | /*** IOpcDigitalSignature methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetNamespaces)( | 
|  | IOpcDigitalSignature *This, | 
|  | LPWSTR **prefixes, | 
|  | LPWSTR **namespaces, | 
|  | UINT32 *count); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureId)( | 
|  | IOpcDigitalSignature *This, | 
|  | LPWSTR *signatureId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignaturePartName)( | 
|  | IOpcDigitalSignature *This, | 
|  | IOpcPartUri **signaturePartName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureMethod)( | 
|  | IOpcDigitalSignature *This, | 
|  | LPWSTR *signatureMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCanonicalizationMethod)( | 
|  | IOpcDigitalSignature *This, | 
|  | OPC_CANONICALIZATION_METHOD *canonicalizationMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureValue)( | 
|  | IOpcDigitalSignature *This, | 
|  | UINT8 **signatureValue, | 
|  | UINT32 *count); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignaturePartReferenceEnumerator)( | 
|  | IOpcDigitalSignature *This, | 
|  | IOpcSignaturePartReferenceEnumerator **partReferenceEnumerator); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureRelationshipReferenceEnumerator)( | 
|  | IOpcDigitalSignature *This, | 
|  | IOpcSignatureRelationshipReferenceEnumerator **relationshipReferenceEnumerator); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSigningTime)( | 
|  | IOpcDigitalSignature *This, | 
|  | LPWSTR *signingTime); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTimeFormat)( | 
|  | IOpcDigitalSignature *This, | 
|  | OPC_SIGNATURE_TIME_FORMAT *timeFormat); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetPackageObjectReference)( | 
|  | IOpcDigitalSignature *This, | 
|  | IOpcSignatureReference **packageObjectReference); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCertificateEnumerator)( | 
|  | IOpcDigitalSignature *This, | 
|  | IOpcCertificateEnumerator **certificateEnumerator); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCustomReferenceEnumerator)( | 
|  | IOpcDigitalSignature *This, | 
|  | IOpcSignatureReferenceEnumerator **customReferenceEnumerator); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCustomObjectEnumerator)( | 
|  | IOpcDigitalSignature *This, | 
|  | IOpcSignatureCustomObjectEnumerator **customObjectEnumerator); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureXml)( | 
|  | IOpcDigitalSignature *This, | 
|  | UINT8 **signatureXml, | 
|  | UINT32 *count); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcDigitalSignatureVtbl; | 
|  |  | 
|  | interface IOpcDigitalSignature { | 
|  | CONST_VTBL IOpcDigitalSignatureVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcDigitalSignature_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcDigitalSignature_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcDigitalSignature_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcDigitalSignature methods ***/ | 
|  | #define IOpcDigitalSignature_GetNamespaces(This,prefixes,namespaces,count) (This)->lpVtbl->GetNamespaces(This,prefixes,namespaces,count) | 
|  | #define IOpcDigitalSignature_GetSignatureId(This,signatureId) (This)->lpVtbl->GetSignatureId(This,signatureId) | 
|  | #define IOpcDigitalSignature_GetSignaturePartName(This,signaturePartName) (This)->lpVtbl->GetSignaturePartName(This,signaturePartName) | 
|  | #define IOpcDigitalSignature_GetSignatureMethod(This,signatureMethod) (This)->lpVtbl->GetSignatureMethod(This,signatureMethod) | 
|  | #define IOpcDigitalSignature_GetCanonicalizationMethod(This,canonicalizationMethod) (This)->lpVtbl->GetCanonicalizationMethod(This,canonicalizationMethod) | 
|  | #define IOpcDigitalSignature_GetSignatureValue(This,signatureValue,count) (This)->lpVtbl->GetSignatureValue(This,signatureValue,count) | 
|  | #define IOpcDigitalSignature_GetSignaturePartReferenceEnumerator(This,partReferenceEnumerator) (This)->lpVtbl->GetSignaturePartReferenceEnumerator(This,partReferenceEnumerator) | 
|  | #define IOpcDigitalSignature_GetSignatureRelationshipReferenceEnumerator(This,relationshipReferenceEnumerator) (This)->lpVtbl->GetSignatureRelationshipReferenceEnumerator(This,relationshipReferenceEnumerator) | 
|  | #define IOpcDigitalSignature_GetSigningTime(This,signingTime) (This)->lpVtbl->GetSigningTime(This,signingTime) | 
|  | #define IOpcDigitalSignature_GetTimeFormat(This,timeFormat) (This)->lpVtbl->GetTimeFormat(This,timeFormat) | 
|  | #define IOpcDigitalSignature_GetPackageObjectReference(This,packageObjectReference) (This)->lpVtbl->GetPackageObjectReference(This,packageObjectReference) | 
|  | #define IOpcDigitalSignature_GetCertificateEnumerator(This,certificateEnumerator) (This)->lpVtbl->GetCertificateEnumerator(This,certificateEnumerator) | 
|  | #define IOpcDigitalSignature_GetCustomReferenceEnumerator(This,customReferenceEnumerator) (This)->lpVtbl->GetCustomReferenceEnumerator(This,customReferenceEnumerator) | 
|  | #define IOpcDigitalSignature_GetCustomObjectEnumerator(This,customObjectEnumerator) (This)->lpVtbl->GetCustomObjectEnumerator(This,customObjectEnumerator) | 
|  | #define IOpcDigitalSignature_GetSignatureXml(This,signatureXml,count) (This)->lpVtbl->GetSignatureXml(This,signatureXml,count) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcDigitalSignature_QueryInterface(IOpcDigitalSignature* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcDigitalSignature_AddRef(IOpcDigitalSignature* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcDigitalSignature_Release(IOpcDigitalSignature* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcDigitalSignature methods ***/ | 
|  | static inline HRESULT IOpcDigitalSignature_GetNamespaces(IOpcDigitalSignature* This,LPWSTR **prefixes,LPWSTR **namespaces,UINT32 *count) { | 
|  | return This->lpVtbl->GetNamespaces(This,prefixes,namespaces,count); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetSignatureId(IOpcDigitalSignature* This,LPWSTR *signatureId) { | 
|  | return This->lpVtbl->GetSignatureId(This,signatureId); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetSignaturePartName(IOpcDigitalSignature* This,IOpcPartUri **signaturePartName) { | 
|  | return This->lpVtbl->GetSignaturePartName(This,signaturePartName); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetSignatureMethod(IOpcDigitalSignature* This,LPWSTR *signatureMethod) { | 
|  | return This->lpVtbl->GetSignatureMethod(This,signatureMethod); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetCanonicalizationMethod(IOpcDigitalSignature* This,OPC_CANONICALIZATION_METHOD *canonicalizationMethod) { | 
|  | return This->lpVtbl->GetCanonicalizationMethod(This,canonicalizationMethod); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetSignatureValue(IOpcDigitalSignature* This,UINT8 **signatureValue,UINT32 *count) { | 
|  | return This->lpVtbl->GetSignatureValue(This,signatureValue,count); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetSignaturePartReferenceEnumerator(IOpcDigitalSignature* This,IOpcSignaturePartReferenceEnumerator **partReferenceEnumerator) { | 
|  | return This->lpVtbl->GetSignaturePartReferenceEnumerator(This,partReferenceEnumerator); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetSignatureRelationshipReferenceEnumerator(IOpcDigitalSignature* This,IOpcSignatureRelationshipReferenceEnumerator **relationshipReferenceEnumerator) { | 
|  | return This->lpVtbl->GetSignatureRelationshipReferenceEnumerator(This,relationshipReferenceEnumerator); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetSigningTime(IOpcDigitalSignature* This,LPWSTR *signingTime) { | 
|  | return This->lpVtbl->GetSigningTime(This,signingTime); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetTimeFormat(IOpcDigitalSignature* This,OPC_SIGNATURE_TIME_FORMAT *timeFormat) { | 
|  | return This->lpVtbl->GetTimeFormat(This,timeFormat); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetPackageObjectReference(IOpcDigitalSignature* This,IOpcSignatureReference **packageObjectReference) { | 
|  | return This->lpVtbl->GetPackageObjectReference(This,packageObjectReference); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetCertificateEnumerator(IOpcDigitalSignature* This,IOpcCertificateEnumerator **certificateEnumerator) { | 
|  | return This->lpVtbl->GetCertificateEnumerator(This,certificateEnumerator); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetCustomReferenceEnumerator(IOpcDigitalSignature* This,IOpcSignatureReferenceEnumerator **customReferenceEnumerator) { | 
|  | return This->lpVtbl->GetCustomReferenceEnumerator(This,customReferenceEnumerator); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetCustomObjectEnumerator(IOpcDigitalSignature* This,IOpcSignatureCustomObjectEnumerator **customObjectEnumerator) { | 
|  | return This->lpVtbl->GetCustomObjectEnumerator(This,customObjectEnumerator); | 
|  | } | 
|  | static inline HRESULT IOpcDigitalSignature_GetSignatureXml(IOpcDigitalSignature* This,UINT8 **signatureXml,UINT32 *count) { | 
|  | return This->lpVtbl->GetSignatureXml(This,signatureXml,count); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcDigitalSignature_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcSigningOptions interface | 
|  | */ | 
|  | #ifndef __IOpcSigningOptions_INTERFACE_DEFINED__ | 
|  | #define __IOpcSigningOptions_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcSigningOptions, 0x50d2d6a5, 0x7aeb, 0x46c0, 0xb2,0x41, 0x43,0xab,0x0e,0x9b,0x40,0x7e); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("50d2d6a5-7aeb-46c0-b241-43ab0e9b407e") | 
|  | IOpcSigningOptions : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureId( | 
|  | LPWSTR *signatureId) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE SetSignatureId( | 
|  | LPCWSTR signatureId) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureMethod( | 
|  | LPWSTR *signatureMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE SetSignatureMethod( | 
|  | LPCWSTR signatureMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetDefaultDigestMethod( | 
|  | LPWSTR *digestMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE SetDefaultDigestMethod( | 
|  | LPCWSTR digestMethod) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCertificateEmbeddingOption( | 
|  | OPC_CERTIFICATE_EMBEDDING_OPTION *embeddingOption) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE SetCertificateEmbeddingOption( | 
|  | OPC_CERTIFICATE_EMBEDDING_OPTION embeddingOption) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetTimeFormat( | 
|  | OPC_SIGNATURE_TIME_FORMAT *timeFormat) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE SetTimeFormat( | 
|  | OPC_SIGNATURE_TIME_FORMAT timeFormat) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignaturePartReferenceSet( | 
|  | IOpcSignaturePartReferenceSet **partReferenceSet) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignatureRelationshipReferenceSet( | 
|  | IOpcSignatureRelationshipReferenceSet **relationshipReferenceSet) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCustomObjectSet( | 
|  | IOpcSignatureCustomObjectSet **customObjectSet) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCustomReferenceSet( | 
|  | IOpcSignatureReferenceSet **customReferenceSet) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetCertificateSet( | 
|  | IOpcCertificateSet **certificateSet) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE GetSignaturePartName( | 
|  | IOpcPartUri **signaturePartName) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE SetSignaturePartName( | 
|  | IOpcPartUri *signaturePartName) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcSigningOptions, 0x50d2d6a5, 0x7aeb, 0x46c0, 0xb2,0x41, 0x43,0xab,0x0e,0x9b,0x40,0x7e) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcSigningOptionsVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcSigningOptions *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcSigningOptions *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcSigningOptions *This); | 
|  |  | 
|  | /*** IOpcSigningOptions methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureId)( | 
|  | IOpcSigningOptions *This, | 
|  | LPWSTR *signatureId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *SetSignatureId)( | 
|  | IOpcSigningOptions *This, | 
|  | LPCWSTR signatureId); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureMethod)( | 
|  | IOpcSigningOptions *This, | 
|  | LPWSTR *signatureMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *SetSignatureMethod)( | 
|  | IOpcSigningOptions *This, | 
|  | LPCWSTR signatureMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetDefaultDigestMethod)( | 
|  | IOpcSigningOptions *This, | 
|  | LPWSTR *digestMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *SetDefaultDigestMethod)( | 
|  | IOpcSigningOptions *This, | 
|  | LPCWSTR digestMethod); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCertificateEmbeddingOption)( | 
|  | IOpcSigningOptions *This, | 
|  | OPC_CERTIFICATE_EMBEDDING_OPTION *embeddingOption); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *SetCertificateEmbeddingOption)( | 
|  | IOpcSigningOptions *This, | 
|  | OPC_CERTIFICATE_EMBEDDING_OPTION embeddingOption); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetTimeFormat)( | 
|  | IOpcSigningOptions *This, | 
|  | OPC_SIGNATURE_TIME_FORMAT *timeFormat); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *SetTimeFormat)( | 
|  | IOpcSigningOptions *This, | 
|  | OPC_SIGNATURE_TIME_FORMAT timeFormat); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignaturePartReferenceSet)( | 
|  | IOpcSigningOptions *This, | 
|  | IOpcSignaturePartReferenceSet **partReferenceSet); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignatureRelationshipReferenceSet)( | 
|  | IOpcSigningOptions *This, | 
|  | IOpcSignatureRelationshipReferenceSet **relationshipReferenceSet); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCustomObjectSet)( | 
|  | IOpcSigningOptions *This, | 
|  | IOpcSignatureCustomObjectSet **customObjectSet); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCustomReferenceSet)( | 
|  | IOpcSigningOptions *This, | 
|  | IOpcSignatureReferenceSet **customReferenceSet); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetCertificateSet)( | 
|  | IOpcSigningOptions *This, | 
|  | IOpcCertificateSet **certificateSet); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *GetSignaturePartName)( | 
|  | IOpcSigningOptions *This, | 
|  | IOpcPartUri **signaturePartName); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *SetSignaturePartName)( | 
|  | IOpcSigningOptions *This, | 
|  | IOpcPartUri *signaturePartName); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcSigningOptionsVtbl; | 
|  |  | 
|  | interface IOpcSigningOptions { | 
|  | CONST_VTBL IOpcSigningOptionsVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcSigningOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcSigningOptions_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcSigningOptions_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcSigningOptions methods ***/ | 
|  | #define IOpcSigningOptions_GetSignatureId(This,signatureId) (This)->lpVtbl->GetSignatureId(This,signatureId) | 
|  | #define IOpcSigningOptions_SetSignatureId(This,signatureId) (This)->lpVtbl->SetSignatureId(This,signatureId) | 
|  | #define IOpcSigningOptions_GetSignatureMethod(This,signatureMethod) (This)->lpVtbl->GetSignatureMethod(This,signatureMethod) | 
|  | #define IOpcSigningOptions_SetSignatureMethod(This,signatureMethod) (This)->lpVtbl->SetSignatureMethod(This,signatureMethod) | 
|  | #define IOpcSigningOptions_GetDefaultDigestMethod(This,digestMethod) (This)->lpVtbl->GetDefaultDigestMethod(This,digestMethod) | 
|  | #define IOpcSigningOptions_SetDefaultDigestMethod(This,digestMethod) (This)->lpVtbl->SetDefaultDigestMethod(This,digestMethod) | 
|  | #define IOpcSigningOptions_GetCertificateEmbeddingOption(This,embeddingOption) (This)->lpVtbl->GetCertificateEmbeddingOption(This,embeddingOption) | 
|  | #define IOpcSigningOptions_SetCertificateEmbeddingOption(This,embeddingOption) (This)->lpVtbl->SetCertificateEmbeddingOption(This,embeddingOption) | 
|  | #define IOpcSigningOptions_GetTimeFormat(This,timeFormat) (This)->lpVtbl->GetTimeFormat(This,timeFormat) | 
|  | #define IOpcSigningOptions_SetTimeFormat(This,timeFormat) (This)->lpVtbl->SetTimeFormat(This,timeFormat) | 
|  | #define IOpcSigningOptions_GetSignaturePartReferenceSet(This,partReferenceSet) (This)->lpVtbl->GetSignaturePartReferenceSet(This,partReferenceSet) | 
|  | #define IOpcSigningOptions_GetSignatureRelationshipReferenceSet(This,relationshipReferenceSet) (This)->lpVtbl->GetSignatureRelationshipReferenceSet(This,relationshipReferenceSet) | 
|  | #define IOpcSigningOptions_GetCustomObjectSet(This,customObjectSet) (This)->lpVtbl->GetCustomObjectSet(This,customObjectSet) | 
|  | #define IOpcSigningOptions_GetCustomReferenceSet(This,customReferenceSet) (This)->lpVtbl->GetCustomReferenceSet(This,customReferenceSet) | 
|  | #define IOpcSigningOptions_GetCertificateSet(This,certificateSet) (This)->lpVtbl->GetCertificateSet(This,certificateSet) | 
|  | #define IOpcSigningOptions_GetSignaturePartName(This,signaturePartName) (This)->lpVtbl->GetSignaturePartName(This,signaturePartName) | 
|  | #define IOpcSigningOptions_SetSignaturePartName(This,signaturePartName) (This)->lpVtbl->SetSignaturePartName(This,signaturePartName) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcSigningOptions_QueryInterface(IOpcSigningOptions* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcSigningOptions_AddRef(IOpcSigningOptions* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcSigningOptions_Release(IOpcSigningOptions* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcSigningOptions methods ***/ | 
|  | static inline HRESULT IOpcSigningOptions_GetSignatureId(IOpcSigningOptions* This,LPWSTR *signatureId) { | 
|  | return This->lpVtbl->GetSignatureId(This,signatureId); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_SetSignatureId(IOpcSigningOptions* This,LPCWSTR signatureId) { | 
|  | return This->lpVtbl->SetSignatureId(This,signatureId); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetSignatureMethod(IOpcSigningOptions* This,LPWSTR *signatureMethod) { | 
|  | return This->lpVtbl->GetSignatureMethod(This,signatureMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_SetSignatureMethod(IOpcSigningOptions* This,LPCWSTR signatureMethod) { | 
|  | return This->lpVtbl->SetSignatureMethod(This,signatureMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetDefaultDigestMethod(IOpcSigningOptions* This,LPWSTR *digestMethod) { | 
|  | return This->lpVtbl->GetDefaultDigestMethod(This,digestMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_SetDefaultDigestMethod(IOpcSigningOptions* This,LPCWSTR digestMethod) { | 
|  | return This->lpVtbl->SetDefaultDigestMethod(This,digestMethod); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetCertificateEmbeddingOption(IOpcSigningOptions* This,OPC_CERTIFICATE_EMBEDDING_OPTION *embeddingOption) { | 
|  | return This->lpVtbl->GetCertificateEmbeddingOption(This,embeddingOption); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_SetCertificateEmbeddingOption(IOpcSigningOptions* This,OPC_CERTIFICATE_EMBEDDING_OPTION embeddingOption) { | 
|  | return This->lpVtbl->SetCertificateEmbeddingOption(This,embeddingOption); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetTimeFormat(IOpcSigningOptions* This,OPC_SIGNATURE_TIME_FORMAT *timeFormat) { | 
|  | return This->lpVtbl->GetTimeFormat(This,timeFormat); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_SetTimeFormat(IOpcSigningOptions* This,OPC_SIGNATURE_TIME_FORMAT timeFormat) { | 
|  | return This->lpVtbl->SetTimeFormat(This,timeFormat); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetSignaturePartReferenceSet(IOpcSigningOptions* This,IOpcSignaturePartReferenceSet **partReferenceSet) { | 
|  | return This->lpVtbl->GetSignaturePartReferenceSet(This,partReferenceSet); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetSignatureRelationshipReferenceSet(IOpcSigningOptions* This,IOpcSignatureRelationshipReferenceSet **relationshipReferenceSet) { | 
|  | return This->lpVtbl->GetSignatureRelationshipReferenceSet(This,relationshipReferenceSet); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetCustomObjectSet(IOpcSigningOptions* This,IOpcSignatureCustomObjectSet **customObjectSet) { | 
|  | return This->lpVtbl->GetCustomObjectSet(This,customObjectSet); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetCustomReferenceSet(IOpcSigningOptions* This,IOpcSignatureReferenceSet **customReferenceSet) { | 
|  | return This->lpVtbl->GetCustomReferenceSet(This,customReferenceSet); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetCertificateSet(IOpcSigningOptions* This,IOpcCertificateSet **certificateSet) { | 
|  | return This->lpVtbl->GetCertificateSet(This,certificateSet); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_GetSignaturePartName(IOpcSigningOptions* This,IOpcPartUri **signaturePartName) { | 
|  | return This->lpVtbl->GetSignaturePartName(This,signaturePartName); | 
|  | } | 
|  | static inline HRESULT IOpcSigningOptions_SetSignaturePartName(IOpcSigningOptions* This,IOpcPartUri *signaturePartName) { | 
|  | return This->lpVtbl->SetSignaturePartName(This,signaturePartName); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcSigningOptions_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * IOpcFactory interface | 
|  | */ | 
|  | #ifndef __IOpcFactory_INTERFACE_DEFINED__ | 
|  | #define __IOpcFactory_INTERFACE_DEFINED__ | 
|  |  | 
|  | DEFINE_GUID(IID_IOpcFactory, 0x6d0b4446, 0xcd73, 0x4ab3, 0x94,0xf4, 0x8c,0xcd,0xf6,0x11,0x61,0x54); | 
|  | #if defined(__cplusplus) && !defined(CINTERFACE) | 
|  | MIDL_INTERFACE("6d0b4446-cd73-4ab3-94f4-8ccdf6116154") | 
|  | IOpcFactory : public IUnknown | 
|  | { | 
|  | virtual HRESULT STDMETHODCALLTYPE CreatePackageRootUri( | 
|  | IOpcUri **rootUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreatePartUri( | 
|  | LPCWSTR pwzUri, | 
|  | IOpcPartUri **partUri) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreateStreamOnFile( | 
|  | LPCWSTR filename, | 
|  | OPC_STREAM_IO_MODE ioMode, | 
|  | LPSECURITY_ATTRIBUTES securityAttributes, | 
|  | DWORD dwFlagsAndAttributes, | 
|  | IStream **stream) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreatePackage( | 
|  | IOpcPackage **package) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE ReadPackageFromStream( | 
|  | IStream *stream, | 
|  | OPC_READ_FLAGS flags, | 
|  | IOpcPackage **package) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE WritePackageToStream( | 
|  | IOpcPackage *package, | 
|  | OPC_WRITE_FLAGS flags, | 
|  | IStream *stream) = 0; | 
|  |  | 
|  | virtual HRESULT STDMETHODCALLTYPE CreateDigitalSignatureManager( | 
|  | IOpcPackage *package, | 
|  | IOpcDigitalSignatureManager **signatureManager) = 0; | 
|  |  | 
|  | }; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(IOpcFactory, 0x6d0b4446, 0xcd73, 0x4ab3, 0x94,0xf4, 0x8c,0xcd,0xf6,0x11,0x61,0x54) | 
|  | #endif | 
|  | #else | 
|  | typedef struct IOpcFactoryVtbl { | 
|  | BEGIN_INTERFACE | 
|  |  | 
|  | /*** IUnknown methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *QueryInterface)( | 
|  | IOpcFactory *This, | 
|  | REFIID riid, | 
|  | void **ppvObject); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *AddRef)( | 
|  | IOpcFactory *This); | 
|  |  | 
|  | ULONG (STDMETHODCALLTYPE *Release)( | 
|  | IOpcFactory *This); | 
|  |  | 
|  | /*** IOpcFactory methods ***/ | 
|  | HRESULT (STDMETHODCALLTYPE *CreatePackageRootUri)( | 
|  | IOpcFactory *This, | 
|  | IOpcUri **rootUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreatePartUri)( | 
|  | IOpcFactory *This, | 
|  | LPCWSTR pwzUri, | 
|  | IOpcPartUri **partUri); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreateStreamOnFile)( | 
|  | IOpcFactory *This, | 
|  | LPCWSTR filename, | 
|  | OPC_STREAM_IO_MODE ioMode, | 
|  | LPSECURITY_ATTRIBUTES securityAttributes, | 
|  | DWORD dwFlagsAndAttributes, | 
|  | IStream **stream); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreatePackage)( | 
|  | IOpcFactory *This, | 
|  | IOpcPackage **package); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *ReadPackageFromStream)( | 
|  | IOpcFactory *This, | 
|  | IStream *stream, | 
|  | OPC_READ_FLAGS flags, | 
|  | IOpcPackage **package); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *WritePackageToStream)( | 
|  | IOpcFactory *This, | 
|  | IOpcPackage *package, | 
|  | OPC_WRITE_FLAGS flags, | 
|  | IStream *stream); | 
|  |  | 
|  | HRESULT (STDMETHODCALLTYPE *CreateDigitalSignatureManager)( | 
|  | IOpcFactory *This, | 
|  | IOpcPackage *package, | 
|  | IOpcDigitalSignatureManager **signatureManager); | 
|  |  | 
|  | END_INTERFACE | 
|  | } IOpcFactoryVtbl; | 
|  |  | 
|  | interface IOpcFactory { | 
|  | CONST_VTBL IOpcFactoryVtbl* lpVtbl; | 
|  | }; | 
|  |  | 
|  | #ifdef COBJMACROS | 
|  | #ifndef WIDL_C_INLINE_WRAPPERS | 
|  | /*** IUnknown methods ***/ | 
|  | #define IOpcFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) | 
|  | #define IOpcFactory_AddRef(This) (This)->lpVtbl->AddRef(This) | 
|  | #define IOpcFactory_Release(This) (This)->lpVtbl->Release(This) | 
|  | /*** IOpcFactory methods ***/ | 
|  | #define IOpcFactory_CreatePackageRootUri(This,rootUri) (This)->lpVtbl->CreatePackageRootUri(This,rootUri) | 
|  | #define IOpcFactory_CreatePartUri(This,pwzUri,partUri) (This)->lpVtbl->CreatePartUri(This,pwzUri,partUri) | 
|  | #define IOpcFactory_CreateStreamOnFile(This,filename,ioMode,securityAttributes,dwFlagsAndAttributes,stream) (This)->lpVtbl->CreateStreamOnFile(This,filename,ioMode,securityAttributes,dwFlagsAndAttributes,stream) | 
|  | #define IOpcFactory_CreatePackage(This,package) (This)->lpVtbl->CreatePackage(This,package) | 
|  | #define IOpcFactory_ReadPackageFromStream(This,stream,flags,package) (This)->lpVtbl->ReadPackageFromStream(This,stream,flags,package) | 
|  | #define IOpcFactory_WritePackageToStream(This,package,flags,stream) (This)->lpVtbl->WritePackageToStream(This,package,flags,stream) | 
|  | #define IOpcFactory_CreateDigitalSignatureManager(This,package,signatureManager) (This)->lpVtbl->CreateDigitalSignatureManager(This,package,signatureManager) | 
|  | #else | 
|  | /*** IUnknown methods ***/ | 
|  | static inline HRESULT IOpcFactory_QueryInterface(IOpcFactory* This,REFIID riid,void **ppvObject) { | 
|  | return This->lpVtbl->QueryInterface(This,riid,ppvObject); | 
|  | } | 
|  | static inline ULONG IOpcFactory_AddRef(IOpcFactory* This) { | 
|  | return This->lpVtbl->AddRef(This); | 
|  | } | 
|  | static inline ULONG IOpcFactory_Release(IOpcFactory* This) { | 
|  | return This->lpVtbl->Release(This); | 
|  | } | 
|  | /*** IOpcFactory methods ***/ | 
|  | static inline HRESULT IOpcFactory_CreatePackageRootUri(IOpcFactory* This,IOpcUri **rootUri) { | 
|  | return This->lpVtbl->CreatePackageRootUri(This,rootUri); | 
|  | } | 
|  | static inline HRESULT IOpcFactory_CreatePartUri(IOpcFactory* This,LPCWSTR pwzUri,IOpcPartUri **partUri) { | 
|  | return This->lpVtbl->CreatePartUri(This,pwzUri,partUri); | 
|  | } | 
|  | static inline HRESULT IOpcFactory_CreateStreamOnFile(IOpcFactory* This,LPCWSTR filename,OPC_STREAM_IO_MODE ioMode,LPSECURITY_ATTRIBUTES securityAttributes,DWORD dwFlagsAndAttributes,IStream **stream) { | 
|  | return This->lpVtbl->CreateStreamOnFile(This,filename,ioMode,securityAttributes,dwFlagsAndAttributes,stream); | 
|  | } | 
|  | static inline HRESULT IOpcFactory_CreatePackage(IOpcFactory* This,IOpcPackage **package) { | 
|  | return This->lpVtbl->CreatePackage(This,package); | 
|  | } | 
|  | static inline HRESULT IOpcFactory_ReadPackageFromStream(IOpcFactory* This,IStream *stream,OPC_READ_FLAGS flags,IOpcPackage **package) { | 
|  | return This->lpVtbl->ReadPackageFromStream(This,stream,flags,package); | 
|  | } | 
|  | static inline HRESULT IOpcFactory_WritePackageToStream(IOpcFactory* This,IOpcPackage *package,OPC_WRITE_FLAGS flags,IStream *stream) { | 
|  | return This->lpVtbl->WritePackageToStream(This,package,flags,stream); | 
|  | } | 
|  | static inline HRESULT IOpcFactory_CreateDigitalSignatureManager(IOpcFactory* This,IOpcPackage *package,IOpcDigitalSignatureManager **signatureManager) { | 
|  | return This->lpVtbl->CreateDigitalSignatureManager(This,package,signatureManager); | 
|  | } | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif | 
|  |  | 
|  |  | 
|  | #endif  /* __IOpcFactory_INTERFACE_DEFINED__ */ | 
|  |  | 
|  | /***************************************************************************** | 
|  | * OpcFactory coclass | 
|  | */ | 
|  |  | 
|  | DEFINE_GUID(CLSID_OpcFactory, 0x6b2d6ba0, 0x9f3e, 0x4f27, 0x92,0x0b, 0x31,0x3c,0xc4,0x26,0xa3,0x9e); | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | class DECLSPEC_UUID("6b2d6ba0-9f3e-4f27-920b-313cc426a39e") OpcFactory; | 
|  | #ifdef __CRT_UUID_DECL | 
|  | __CRT_UUID_DECL(OpcFactory, 0x6b2d6ba0, 0x9f3e, 0x4f27, 0x92,0x0b, 0x31,0x3c,0xc4,0x26,0xa3,0x9e) | 
|  | #endif | 
|  | #endif | 
|  |  | 
|  | #endif /* __MSOPC_LIBRARY_DEFINED__ */ | 
|  | #endif | 
|  | #endif | 
|  | /* Begin additional prototypes for all interfaces */ | 
|  |  | 
|  |  | 
|  | /* End additional prototypes */ | 
|  |  | 
|  | #ifdef __cplusplus | 
|  | } | 
|  | #endif | 
|  |  | 
|  | #endif /* __msopc_h__ */ |