master
   1/*** Autogenerated by WIDL 10.4 from include/xpsdigitalsignature.idl - Do not edit ***/
   2
   3#ifdef _WIN32
   4#ifndef __REQUIRED_RPCNDR_H_VERSION__
   5#define __REQUIRED_RPCNDR_H_VERSION__ 475
   6#endif
   7#include <rpc.h>
   8#include <rpcndr.h>
   9#endif
  10
  11#ifndef COM_NO_WINDOWS_H
  12#include <windows.h>
  13#include <ole2.h>
  14#endif
  15
  16#ifndef __xpsdigitalsignature_h__
  17#define __xpsdigitalsignature_h__
  18
  19/* Forward declarations */
  20
  21#ifndef __IXpsSigningOptions_FWD_DEFINED__
  22#define __IXpsSigningOptions_FWD_DEFINED__
  23typedef interface IXpsSigningOptions IXpsSigningOptions;
  24#ifdef __cplusplus
  25interface IXpsSigningOptions;
  26#endif /* __cplusplus */
  27#endif
  28
  29#ifndef __IXpsSignature_FWD_DEFINED__
  30#define __IXpsSignature_FWD_DEFINED__
  31typedef interface IXpsSignature IXpsSignature;
  32#ifdef __cplusplus
  33interface IXpsSignature;
  34#endif /* __cplusplus */
  35#endif
  36
  37#ifndef __IXpsSignatureBlock_FWD_DEFINED__
  38#define __IXpsSignatureBlock_FWD_DEFINED__
  39typedef interface IXpsSignatureBlock IXpsSignatureBlock;
  40#ifdef __cplusplus
  41interface IXpsSignatureBlock;
  42#endif /* __cplusplus */
  43#endif
  44
  45#ifndef __IXpsSignatureBlockCollection_FWD_DEFINED__
  46#define __IXpsSignatureBlockCollection_FWD_DEFINED__
  47typedef interface IXpsSignatureBlockCollection IXpsSignatureBlockCollection;
  48#ifdef __cplusplus
  49interface IXpsSignatureBlockCollection;
  50#endif /* __cplusplus */
  51#endif
  52
  53#ifndef __IXpsSignatureCollection_FWD_DEFINED__
  54#define __IXpsSignatureCollection_FWD_DEFINED__
  55typedef interface IXpsSignatureCollection IXpsSignatureCollection;
  56#ifdef __cplusplus
  57interface IXpsSignatureCollection;
  58#endif /* __cplusplus */
  59#endif
  60
  61#ifndef __IXpsSignatureManager_FWD_DEFINED__
  62#define __IXpsSignatureManager_FWD_DEFINED__
  63typedef interface IXpsSignatureManager IXpsSignatureManager;
  64#ifdef __cplusplus
  65interface IXpsSignatureManager;
  66#endif /* __cplusplus */
  67#endif
  68
  69#ifndef __IXpsSignatureRequest_FWD_DEFINED__
  70#define __IXpsSignatureRequest_FWD_DEFINED__
  71typedef interface IXpsSignatureRequest IXpsSignatureRequest;
  72#ifdef __cplusplus
  73interface IXpsSignatureRequest;
  74#endif /* __cplusplus */
  75#endif
  76
  77#ifndef __IXpsSignatureRequestCollection_FWD_DEFINED__
  78#define __IXpsSignatureRequestCollection_FWD_DEFINED__
  79typedef interface IXpsSignatureRequestCollection IXpsSignatureRequestCollection;
  80#ifdef __cplusplus
  81interface IXpsSignatureRequestCollection;
  82#endif /* __cplusplus */
  83#endif
  84
  85#ifndef __XpsSignatureManager_FWD_DEFINED__
  86#define __XpsSignatureManager_FWD_DEFINED__
  87#ifdef __cplusplus
  88typedef class XpsSignatureManager XpsSignatureManager;
  89#else
  90typedef struct XpsSignatureManager XpsSignatureManager;
  91#endif /* defined __cplusplus */
  92#endif /* defined __XpsSignatureManager_FWD_DEFINED__ */
  93
  94/* Headers for imported files */
  95
  96#include <oaidl.h>
  97#include <wincrypt.h>
  98#include <msopc.h>
  99
 100#ifdef __cplusplus
 101extern "C" {
 102#endif
 103
 104#include <winapifamily.h>
 105
 106#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
 107#if NTDDI_VERSION >= 0x06010000
 108#define XPS_E_SIGREQUESTID_DUP  MAKE_HRESULT(1, FACILITY_XPS, 901)
 109#define XPS_E_PACKAGE_NOT_OPENED MAKE_HRESULT(1, FACILITY_XPS, 902)
 110#define XPS_E_PACKAGE_ALREADY_OPENED MAKE_HRESULT(1, FACILITY_XPS, 903)
 111#define XPS_E_SIGNATUREID_DUP MAKE_HRESULT(1, FACILITY_XPS, 904)
 112#define XPS_E_MARKUP_COMPATIBILITY_ELEMENTS MAKE_HRESULT(1, FACILITY_XPS, 905)
 113#define XPS_E_OBJECT_DETACHED MAKE_HRESULT(1, FACILITY_XPS, 906)
 114#define XPS_E_INVALID_SIGNATUREBLOCK_MARKUP MAKE_HRESULT(1, FACILITY_XPS, 907)
 115#ifndef __MSXPSSIG_LIBRARY_DEFINED__
 116#define __MSXPSSIG_LIBRARY_DEFINED__
 117
 118DEFINE_GUID(LIBID_MSXPSSIG, 0x8223a7eb, 0xc4d5, 0x474d, 0x9b,0xcc, 0xff,0x67,0x18,0x5e,0x64,0xa0);
 119
 120#ifndef __IXpsSigningOptions_FWD_DEFINED__
 121#define __IXpsSigningOptions_FWD_DEFINED__
 122typedef interface IXpsSigningOptions IXpsSigningOptions;
 123#ifdef __cplusplus
 124interface IXpsSigningOptions;
 125#endif /* __cplusplus */
 126#endif
 127
 128#ifndef __IXpsSignatureCollection_FWD_DEFINED__
 129#define __IXpsSignatureCollection_FWD_DEFINED__
 130typedef interface IXpsSignatureCollection IXpsSignatureCollection;
 131#ifdef __cplusplus
 132interface IXpsSignatureCollection;
 133#endif /* __cplusplus */
 134#endif
 135
 136#ifndef __IXpsSignature_FWD_DEFINED__
 137#define __IXpsSignature_FWD_DEFINED__
 138typedef interface IXpsSignature IXpsSignature;
 139#ifdef __cplusplus
 140interface IXpsSignature;
 141#endif /* __cplusplus */
 142#endif
 143
 144#ifndef __IXpsSignatureBlockCollection_FWD_DEFINED__
 145#define __IXpsSignatureBlockCollection_FWD_DEFINED__
 146typedef interface IXpsSignatureBlockCollection IXpsSignatureBlockCollection;
 147#ifdef __cplusplus
 148interface IXpsSignatureBlockCollection;
 149#endif /* __cplusplus */
 150#endif
 151
 152#ifndef __IXpsSignatureBlock_FWD_DEFINED__
 153#define __IXpsSignatureBlock_FWD_DEFINED__
 154typedef interface IXpsSignatureBlock IXpsSignatureBlock;
 155#ifdef __cplusplus
 156interface IXpsSignatureBlock;
 157#endif /* __cplusplus */
 158#endif
 159
 160#ifndef __IXpsSignatureRequestCollection_FWD_DEFINED__
 161#define __IXpsSignatureRequestCollection_FWD_DEFINED__
 162typedef interface IXpsSignatureRequestCollection IXpsSignatureRequestCollection;
 163#ifdef __cplusplus
 164interface IXpsSignatureRequestCollection;
 165#endif /* __cplusplus */
 166#endif
 167
 168#ifndef __IXpsSignatureRequest_FWD_DEFINED__
 169#define __IXpsSignatureRequest_FWD_DEFINED__
 170typedef interface IXpsSignatureRequest IXpsSignatureRequest;
 171#ifdef __cplusplus
 172interface IXpsSignatureRequest;
 173#endif /* __cplusplus */
 174#endif
 175
 176typedef enum __WIDL_xpsdigitalsignature_generated_name_00000031 {
 177    XPS_SIGN_FLAGS_NONE = 0x0,
 178    XPS_SIGN_FLAGS_IGNORE_MARKUP_COMPATIBILITY = 0x1
 179} XPS_SIGN_FLAGS;
 180typedef enum __WIDL_xpsdigitalsignature_generated_name_00000032 {
 181    XPS_SIGN_POLICY_NONE = 0x0,
 182    XPS_SIGN_POLICY_CORE_PROPERTIES = 0x1,
 183    XPS_SIGN_POLICY_SIGNATURE_RELATIONSHIPS = 0x2,
 184    XPS_SIGN_POLICY_PRINT_TICKET = 0x4,
 185    XPS_SIGN_POLICY_DISCARD_CONTROL = 0x8,
 186    XPS_SIGN_POLICY_ALL = 0xf
 187} XPS_SIGN_POLICY;
 188typedef enum __WIDL_xpsdigitalsignature_generated_name_00000033 {
 189    XPS_SIGNATURE_STATUS_INCOMPLIANT = 1,
 190    XPS_SIGNATURE_STATUS_INCOMPLETE = 2,
 191    XPS_SIGNATURE_STATUS_BROKEN = 3,
 192    XPS_SIGNATURE_STATUS_QUESTIONABLE = 4,
 193    XPS_SIGNATURE_STATUS_VALID = 5
 194} XPS_SIGNATURE_STATUS;
 195DEFINE_ENUM_FLAG_OPERATORS(XPS_SIGN_FLAGS)
 196DEFINE_ENUM_FLAG_OPERATORS(XPS_SIGN_POLICY)
 197/*****************************************************************************
 198 * IXpsSigningOptions interface
 199 */
 200#ifndef __IXpsSigningOptions_INTERFACE_DEFINED__
 201#define __IXpsSigningOptions_INTERFACE_DEFINED__
 202
 203DEFINE_GUID(IID_IXpsSigningOptions, 0x7718eae4, 0x3215, 0x49be, 0xaf,0x5b, 0x59,0x4f,0xef,0x7f,0xcf,0xa6);
 204#if defined(__cplusplus) && !defined(CINTERFACE)
 205MIDL_INTERFACE("7718eae4-3215-49be-af5b-594fef7fcfa6")
 206IXpsSigningOptions : public IUnknown
 207{
 208    virtual HRESULT STDMETHODCALLTYPE GetSignatureId(
 209        LPWSTR *signatureId) = 0;
 210
 211    virtual HRESULT STDMETHODCALLTYPE SetSignatureId(
 212        LPCWSTR signatureId) = 0;
 213
 214    virtual HRESULT STDMETHODCALLTYPE GetSignatureMethod(
 215        LPWSTR *signatureMethod) = 0;
 216
 217    virtual HRESULT STDMETHODCALLTYPE SetSignatureMethod(
 218        LPCWSTR signatureMethod) = 0;
 219
 220    virtual HRESULT STDMETHODCALLTYPE GetDigestMethod(
 221        LPWSTR *digestMethod) = 0;
 222
 223    virtual HRESULT STDMETHODCALLTYPE SetDigestMethod(
 224        LPCWSTR digestMethod) = 0;
 225
 226    virtual HRESULT STDMETHODCALLTYPE GetSignaturePartName(
 227        IOpcPartUri **signaturePartName) = 0;
 228
 229    virtual HRESULT STDMETHODCALLTYPE SetSignaturePartName(
 230        IOpcPartUri *signaturePartName) = 0;
 231
 232    virtual HRESULT STDMETHODCALLTYPE GetPolicy(
 233        XPS_SIGN_POLICY *policy) = 0;
 234
 235    virtual HRESULT STDMETHODCALLTYPE SetPolicy(
 236        XPS_SIGN_POLICY policy) = 0;
 237
 238    virtual HRESULT STDMETHODCALLTYPE GetSigningTimeFormat(
 239        OPC_SIGNATURE_TIME_FORMAT *timeFormat) = 0;
 240
 241    virtual HRESULT STDMETHODCALLTYPE SetSigningTimeFormat(
 242        OPC_SIGNATURE_TIME_FORMAT timeFormat) = 0;
 243
 244    virtual HRESULT STDMETHODCALLTYPE GetCustomObjects(
 245        IOpcSignatureCustomObjectSet **customObjectSet) = 0;
 246
 247    virtual HRESULT STDMETHODCALLTYPE GetCustomReferences(
 248        IOpcSignatureReferenceSet **customReferenceSet) = 0;
 249
 250    virtual HRESULT STDMETHODCALLTYPE GetCertificateSet(
 251        IOpcCertificateSet **certificateSet) = 0;
 252
 253    virtual HRESULT STDMETHODCALLTYPE GetFlags(
 254        XPS_SIGN_FLAGS *flags) = 0;
 255
 256    virtual HRESULT STDMETHODCALLTYPE SetFlags(
 257        XPS_SIGN_FLAGS flags) = 0;
 258
 259};
 260#ifdef __CRT_UUID_DECL
 261__CRT_UUID_DECL(IXpsSigningOptions, 0x7718eae4, 0x3215, 0x49be, 0xaf,0x5b, 0x59,0x4f,0xef,0x7f,0xcf,0xa6)
 262#endif
 263#else
 264typedef struct IXpsSigningOptionsVtbl {
 265    BEGIN_INTERFACE
 266
 267    /*** IUnknown methods ***/
 268    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 269        IXpsSigningOptions *This,
 270        REFIID riid,
 271        void **ppvObject);
 272
 273    ULONG (STDMETHODCALLTYPE *AddRef)(
 274        IXpsSigningOptions *This);
 275
 276    ULONG (STDMETHODCALLTYPE *Release)(
 277        IXpsSigningOptions *This);
 278
 279    /*** IXpsSigningOptions methods ***/
 280    HRESULT (STDMETHODCALLTYPE *GetSignatureId)(
 281        IXpsSigningOptions *This,
 282        LPWSTR *signatureId);
 283
 284    HRESULT (STDMETHODCALLTYPE *SetSignatureId)(
 285        IXpsSigningOptions *This,
 286        LPCWSTR signatureId);
 287
 288    HRESULT (STDMETHODCALLTYPE *GetSignatureMethod)(
 289        IXpsSigningOptions *This,
 290        LPWSTR *signatureMethod);
 291
 292    HRESULT (STDMETHODCALLTYPE *SetSignatureMethod)(
 293        IXpsSigningOptions *This,
 294        LPCWSTR signatureMethod);
 295
 296    HRESULT (STDMETHODCALLTYPE *GetDigestMethod)(
 297        IXpsSigningOptions *This,
 298        LPWSTR *digestMethod);
 299
 300    HRESULT (STDMETHODCALLTYPE *SetDigestMethod)(
 301        IXpsSigningOptions *This,
 302        LPCWSTR digestMethod);
 303
 304    HRESULT (STDMETHODCALLTYPE *GetSignaturePartName)(
 305        IXpsSigningOptions *This,
 306        IOpcPartUri **signaturePartName);
 307
 308    HRESULT (STDMETHODCALLTYPE *SetSignaturePartName)(
 309        IXpsSigningOptions *This,
 310        IOpcPartUri *signaturePartName);
 311
 312    HRESULT (STDMETHODCALLTYPE *GetPolicy)(
 313        IXpsSigningOptions *This,
 314        XPS_SIGN_POLICY *policy);
 315
 316    HRESULT (STDMETHODCALLTYPE *SetPolicy)(
 317        IXpsSigningOptions *This,
 318        XPS_SIGN_POLICY policy);
 319
 320    HRESULT (STDMETHODCALLTYPE *GetSigningTimeFormat)(
 321        IXpsSigningOptions *This,
 322        OPC_SIGNATURE_TIME_FORMAT *timeFormat);
 323
 324    HRESULT (STDMETHODCALLTYPE *SetSigningTimeFormat)(
 325        IXpsSigningOptions *This,
 326        OPC_SIGNATURE_TIME_FORMAT timeFormat);
 327
 328    HRESULT (STDMETHODCALLTYPE *GetCustomObjects)(
 329        IXpsSigningOptions *This,
 330        IOpcSignatureCustomObjectSet **customObjectSet);
 331
 332    HRESULT (STDMETHODCALLTYPE *GetCustomReferences)(
 333        IXpsSigningOptions *This,
 334        IOpcSignatureReferenceSet **customReferenceSet);
 335
 336    HRESULT (STDMETHODCALLTYPE *GetCertificateSet)(
 337        IXpsSigningOptions *This,
 338        IOpcCertificateSet **certificateSet);
 339
 340    HRESULT (STDMETHODCALLTYPE *GetFlags)(
 341        IXpsSigningOptions *This,
 342        XPS_SIGN_FLAGS *flags);
 343
 344    HRESULT (STDMETHODCALLTYPE *SetFlags)(
 345        IXpsSigningOptions *This,
 346        XPS_SIGN_FLAGS flags);
 347
 348    END_INTERFACE
 349} IXpsSigningOptionsVtbl;
 350
 351interface IXpsSigningOptions {
 352    CONST_VTBL IXpsSigningOptionsVtbl* lpVtbl;
 353};
 354
 355#ifdef COBJMACROS
 356#ifndef WIDL_C_INLINE_WRAPPERS
 357/*** IUnknown methods ***/
 358#define IXpsSigningOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 359#define IXpsSigningOptions_AddRef(This) (This)->lpVtbl->AddRef(This)
 360#define IXpsSigningOptions_Release(This) (This)->lpVtbl->Release(This)
 361/*** IXpsSigningOptions methods ***/
 362#define IXpsSigningOptions_GetSignatureId(This,signatureId) (This)->lpVtbl->GetSignatureId(This,signatureId)
 363#define IXpsSigningOptions_SetSignatureId(This,signatureId) (This)->lpVtbl->SetSignatureId(This,signatureId)
 364#define IXpsSigningOptions_GetSignatureMethod(This,signatureMethod) (This)->lpVtbl->GetSignatureMethod(This,signatureMethod)
 365#define IXpsSigningOptions_SetSignatureMethod(This,signatureMethod) (This)->lpVtbl->SetSignatureMethod(This,signatureMethod)
 366#define IXpsSigningOptions_GetDigestMethod(This,digestMethod) (This)->lpVtbl->GetDigestMethod(This,digestMethod)
 367#define IXpsSigningOptions_SetDigestMethod(This,digestMethod) (This)->lpVtbl->SetDigestMethod(This,digestMethod)
 368#define IXpsSigningOptions_GetSignaturePartName(This,signaturePartName) (This)->lpVtbl->GetSignaturePartName(This,signaturePartName)
 369#define IXpsSigningOptions_SetSignaturePartName(This,signaturePartName) (This)->lpVtbl->SetSignaturePartName(This,signaturePartName)
 370#define IXpsSigningOptions_GetPolicy(This,policy) (This)->lpVtbl->GetPolicy(This,policy)
 371#define IXpsSigningOptions_SetPolicy(This,policy) (This)->lpVtbl->SetPolicy(This,policy)
 372#define IXpsSigningOptions_GetSigningTimeFormat(This,timeFormat) (This)->lpVtbl->GetSigningTimeFormat(This,timeFormat)
 373#define IXpsSigningOptions_SetSigningTimeFormat(This,timeFormat) (This)->lpVtbl->SetSigningTimeFormat(This,timeFormat)
 374#define IXpsSigningOptions_GetCustomObjects(This,customObjectSet) (This)->lpVtbl->GetCustomObjects(This,customObjectSet)
 375#define IXpsSigningOptions_GetCustomReferences(This,customReferenceSet) (This)->lpVtbl->GetCustomReferences(This,customReferenceSet)
 376#define IXpsSigningOptions_GetCertificateSet(This,certificateSet) (This)->lpVtbl->GetCertificateSet(This,certificateSet)
 377#define IXpsSigningOptions_GetFlags(This,flags) (This)->lpVtbl->GetFlags(This,flags)
 378#define IXpsSigningOptions_SetFlags(This,flags) (This)->lpVtbl->SetFlags(This,flags)
 379#else
 380/*** IUnknown methods ***/
 381static inline HRESULT IXpsSigningOptions_QueryInterface(IXpsSigningOptions* This,REFIID riid,void **ppvObject) {
 382    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 383}
 384static inline ULONG IXpsSigningOptions_AddRef(IXpsSigningOptions* This) {
 385    return This->lpVtbl->AddRef(This);
 386}
 387static inline ULONG IXpsSigningOptions_Release(IXpsSigningOptions* This) {
 388    return This->lpVtbl->Release(This);
 389}
 390/*** IXpsSigningOptions methods ***/
 391static inline HRESULT IXpsSigningOptions_GetSignatureId(IXpsSigningOptions* This,LPWSTR *signatureId) {
 392    return This->lpVtbl->GetSignatureId(This,signatureId);
 393}
 394static inline HRESULT IXpsSigningOptions_SetSignatureId(IXpsSigningOptions* This,LPCWSTR signatureId) {
 395    return This->lpVtbl->SetSignatureId(This,signatureId);
 396}
 397static inline HRESULT IXpsSigningOptions_GetSignatureMethod(IXpsSigningOptions* This,LPWSTR *signatureMethod) {
 398    return This->lpVtbl->GetSignatureMethod(This,signatureMethod);
 399}
 400static inline HRESULT IXpsSigningOptions_SetSignatureMethod(IXpsSigningOptions* This,LPCWSTR signatureMethod) {
 401    return This->lpVtbl->SetSignatureMethod(This,signatureMethod);
 402}
 403static inline HRESULT IXpsSigningOptions_GetDigestMethod(IXpsSigningOptions* This,LPWSTR *digestMethod) {
 404    return This->lpVtbl->GetDigestMethod(This,digestMethod);
 405}
 406static inline HRESULT IXpsSigningOptions_SetDigestMethod(IXpsSigningOptions* This,LPCWSTR digestMethod) {
 407    return This->lpVtbl->SetDigestMethod(This,digestMethod);
 408}
 409static inline HRESULT IXpsSigningOptions_GetSignaturePartName(IXpsSigningOptions* This,IOpcPartUri **signaturePartName) {
 410    return This->lpVtbl->GetSignaturePartName(This,signaturePartName);
 411}
 412static inline HRESULT IXpsSigningOptions_SetSignaturePartName(IXpsSigningOptions* This,IOpcPartUri *signaturePartName) {
 413    return This->lpVtbl->SetSignaturePartName(This,signaturePartName);
 414}
 415static inline HRESULT IXpsSigningOptions_GetPolicy(IXpsSigningOptions* This,XPS_SIGN_POLICY *policy) {
 416    return This->lpVtbl->GetPolicy(This,policy);
 417}
 418static inline HRESULT IXpsSigningOptions_SetPolicy(IXpsSigningOptions* This,XPS_SIGN_POLICY policy) {
 419    return This->lpVtbl->SetPolicy(This,policy);
 420}
 421static inline HRESULT IXpsSigningOptions_GetSigningTimeFormat(IXpsSigningOptions* This,OPC_SIGNATURE_TIME_FORMAT *timeFormat) {
 422    return This->lpVtbl->GetSigningTimeFormat(This,timeFormat);
 423}
 424static inline HRESULT IXpsSigningOptions_SetSigningTimeFormat(IXpsSigningOptions* This,OPC_SIGNATURE_TIME_FORMAT timeFormat) {
 425    return This->lpVtbl->SetSigningTimeFormat(This,timeFormat);
 426}
 427static inline HRESULT IXpsSigningOptions_GetCustomObjects(IXpsSigningOptions* This,IOpcSignatureCustomObjectSet **customObjectSet) {
 428    return This->lpVtbl->GetCustomObjects(This,customObjectSet);
 429}
 430static inline HRESULT IXpsSigningOptions_GetCustomReferences(IXpsSigningOptions* This,IOpcSignatureReferenceSet **customReferenceSet) {
 431    return This->lpVtbl->GetCustomReferences(This,customReferenceSet);
 432}
 433static inline HRESULT IXpsSigningOptions_GetCertificateSet(IXpsSigningOptions* This,IOpcCertificateSet **certificateSet) {
 434    return This->lpVtbl->GetCertificateSet(This,certificateSet);
 435}
 436static inline HRESULT IXpsSigningOptions_GetFlags(IXpsSigningOptions* This,XPS_SIGN_FLAGS *flags) {
 437    return This->lpVtbl->GetFlags(This,flags);
 438}
 439static inline HRESULT IXpsSigningOptions_SetFlags(IXpsSigningOptions* This,XPS_SIGN_FLAGS flags) {
 440    return This->lpVtbl->SetFlags(This,flags);
 441}
 442#endif
 443#endif
 444
 445#endif
 446
 447
 448#endif  /* __IXpsSigningOptions_INTERFACE_DEFINED__ */
 449
 450/*****************************************************************************
 451 * IXpsSignature interface
 452 */
 453#ifndef __IXpsSignature_INTERFACE_DEFINED__
 454#define __IXpsSignature_INTERFACE_DEFINED__
 455
 456DEFINE_GUID(IID_IXpsSignature, 0x6ae4c93e, 0x1ade, 0x42fb, 0x89,0x8b, 0x3a,0x56,0x58,0x28,0x48,0x57);
 457#if defined(__cplusplus) && !defined(CINTERFACE)
 458MIDL_INTERFACE("6ae4c93e-1ade-42fb-898b-3a5658284857")
 459IXpsSignature : public IUnknown
 460{
 461    virtual HRESULT STDMETHODCALLTYPE GetSignatureId(
 462        LPWSTR *sigId) = 0;
 463
 464    virtual HRESULT STDMETHODCALLTYPE GetSignatureValue(
 465        UINT8 **signatureHashValue,
 466        UINT32 *count) = 0;
 467
 468    virtual HRESULT STDMETHODCALLTYPE GetCertificateEnumerator(
 469        IOpcCertificateEnumerator **certificateEnumerator) = 0;
 470
 471    virtual HRESULT STDMETHODCALLTYPE GetSigningTime(
 472        LPWSTR *sigDateTimeString) = 0;
 473
 474    virtual HRESULT STDMETHODCALLTYPE GetSigningTimeFormat(
 475        OPC_SIGNATURE_TIME_FORMAT *timeFormat) = 0;
 476
 477    virtual HRESULT STDMETHODCALLTYPE GetSignaturePartName(
 478        IOpcPartUri **signaturePartName) = 0;
 479
 480    virtual HRESULT STDMETHODCALLTYPE Verify(
 481        const CERT_CONTEXT *x509Certificate,
 482        XPS_SIGNATURE_STATUS *sigStatus) = 0;
 483
 484    virtual HRESULT STDMETHODCALLTYPE GetPolicy(
 485        XPS_SIGN_POLICY *policy) = 0;
 486
 487    virtual HRESULT STDMETHODCALLTYPE GetCustomObjectEnumerator(
 488        IOpcSignatureCustomObjectEnumerator **customObjectEnumerator) = 0;
 489
 490    virtual HRESULT STDMETHODCALLTYPE GetCustomReferenceEnumerator(
 491        IOpcSignatureReferenceEnumerator **customReferenceEnumerator) = 0;
 492
 493    virtual HRESULT STDMETHODCALLTYPE GetSignatureXml(
 494        UINT8 **signatureXml,
 495        UINT32 *count) = 0;
 496
 497    virtual HRESULT STDMETHODCALLTYPE SetSignatureXml(
 498        const UINT8 *signatureXml,
 499        UINT32 count) = 0;
 500
 501};
 502#ifdef __CRT_UUID_DECL
 503__CRT_UUID_DECL(IXpsSignature, 0x6ae4c93e, 0x1ade, 0x42fb, 0x89,0x8b, 0x3a,0x56,0x58,0x28,0x48,0x57)
 504#endif
 505#else
 506typedef struct IXpsSignatureVtbl {
 507    BEGIN_INTERFACE
 508
 509    /*** IUnknown methods ***/
 510    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 511        IXpsSignature *This,
 512        REFIID riid,
 513        void **ppvObject);
 514
 515    ULONG (STDMETHODCALLTYPE *AddRef)(
 516        IXpsSignature *This);
 517
 518    ULONG (STDMETHODCALLTYPE *Release)(
 519        IXpsSignature *This);
 520
 521    /*** IXpsSignature methods ***/
 522    HRESULT (STDMETHODCALLTYPE *GetSignatureId)(
 523        IXpsSignature *This,
 524        LPWSTR *sigId);
 525
 526    HRESULT (STDMETHODCALLTYPE *GetSignatureValue)(
 527        IXpsSignature *This,
 528        UINT8 **signatureHashValue,
 529        UINT32 *count);
 530
 531    HRESULT (STDMETHODCALLTYPE *GetCertificateEnumerator)(
 532        IXpsSignature *This,
 533        IOpcCertificateEnumerator **certificateEnumerator);
 534
 535    HRESULT (STDMETHODCALLTYPE *GetSigningTime)(
 536        IXpsSignature *This,
 537        LPWSTR *sigDateTimeString);
 538
 539    HRESULT (STDMETHODCALLTYPE *GetSigningTimeFormat)(
 540        IXpsSignature *This,
 541        OPC_SIGNATURE_TIME_FORMAT *timeFormat);
 542
 543    HRESULT (STDMETHODCALLTYPE *GetSignaturePartName)(
 544        IXpsSignature *This,
 545        IOpcPartUri **signaturePartName);
 546
 547    HRESULT (STDMETHODCALLTYPE *Verify)(
 548        IXpsSignature *This,
 549        const CERT_CONTEXT *x509Certificate,
 550        XPS_SIGNATURE_STATUS *sigStatus);
 551
 552    HRESULT (STDMETHODCALLTYPE *GetPolicy)(
 553        IXpsSignature *This,
 554        XPS_SIGN_POLICY *policy);
 555
 556    HRESULT (STDMETHODCALLTYPE *GetCustomObjectEnumerator)(
 557        IXpsSignature *This,
 558        IOpcSignatureCustomObjectEnumerator **customObjectEnumerator);
 559
 560    HRESULT (STDMETHODCALLTYPE *GetCustomReferenceEnumerator)(
 561        IXpsSignature *This,
 562        IOpcSignatureReferenceEnumerator **customReferenceEnumerator);
 563
 564    HRESULT (STDMETHODCALLTYPE *GetSignatureXml)(
 565        IXpsSignature *This,
 566        UINT8 **signatureXml,
 567        UINT32 *count);
 568
 569    HRESULT (STDMETHODCALLTYPE *SetSignatureXml)(
 570        IXpsSignature *This,
 571        const UINT8 *signatureXml,
 572        UINT32 count);
 573
 574    END_INTERFACE
 575} IXpsSignatureVtbl;
 576
 577interface IXpsSignature {
 578    CONST_VTBL IXpsSignatureVtbl* lpVtbl;
 579};
 580
 581#ifdef COBJMACROS
 582#ifndef WIDL_C_INLINE_WRAPPERS
 583/*** IUnknown methods ***/
 584#define IXpsSignature_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 585#define IXpsSignature_AddRef(This) (This)->lpVtbl->AddRef(This)
 586#define IXpsSignature_Release(This) (This)->lpVtbl->Release(This)
 587/*** IXpsSignature methods ***/
 588#define IXpsSignature_GetSignatureId(This,sigId) (This)->lpVtbl->GetSignatureId(This,sigId)
 589#define IXpsSignature_GetSignatureValue(This,signatureHashValue,count) (This)->lpVtbl->GetSignatureValue(This,signatureHashValue,count)
 590#define IXpsSignature_GetCertificateEnumerator(This,certificateEnumerator) (This)->lpVtbl->GetCertificateEnumerator(This,certificateEnumerator)
 591#define IXpsSignature_GetSigningTime(This,sigDateTimeString) (This)->lpVtbl->GetSigningTime(This,sigDateTimeString)
 592#define IXpsSignature_GetSigningTimeFormat(This,timeFormat) (This)->lpVtbl->GetSigningTimeFormat(This,timeFormat)
 593#define IXpsSignature_GetSignaturePartName(This,signaturePartName) (This)->lpVtbl->GetSignaturePartName(This,signaturePartName)
 594#define IXpsSignature_Verify(This,x509Certificate,sigStatus) (This)->lpVtbl->Verify(This,x509Certificate,sigStatus)
 595#define IXpsSignature_GetPolicy(This,policy) (This)->lpVtbl->GetPolicy(This,policy)
 596#define IXpsSignature_GetCustomObjectEnumerator(This,customObjectEnumerator) (This)->lpVtbl->GetCustomObjectEnumerator(This,customObjectEnumerator)
 597#define IXpsSignature_GetCustomReferenceEnumerator(This,customReferenceEnumerator) (This)->lpVtbl->GetCustomReferenceEnumerator(This,customReferenceEnumerator)
 598#define IXpsSignature_GetSignatureXml(This,signatureXml,count) (This)->lpVtbl->GetSignatureXml(This,signatureXml,count)
 599#define IXpsSignature_SetSignatureXml(This,signatureXml,count) (This)->lpVtbl->SetSignatureXml(This,signatureXml,count)
 600#else
 601/*** IUnknown methods ***/
 602static inline HRESULT IXpsSignature_QueryInterface(IXpsSignature* This,REFIID riid,void **ppvObject) {
 603    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 604}
 605static inline ULONG IXpsSignature_AddRef(IXpsSignature* This) {
 606    return This->lpVtbl->AddRef(This);
 607}
 608static inline ULONG IXpsSignature_Release(IXpsSignature* This) {
 609    return This->lpVtbl->Release(This);
 610}
 611/*** IXpsSignature methods ***/
 612static inline HRESULT IXpsSignature_GetSignatureId(IXpsSignature* This,LPWSTR *sigId) {
 613    return This->lpVtbl->GetSignatureId(This,sigId);
 614}
 615static inline HRESULT IXpsSignature_GetSignatureValue(IXpsSignature* This,UINT8 **signatureHashValue,UINT32 *count) {
 616    return This->lpVtbl->GetSignatureValue(This,signatureHashValue,count);
 617}
 618static inline HRESULT IXpsSignature_GetCertificateEnumerator(IXpsSignature* This,IOpcCertificateEnumerator **certificateEnumerator) {
 619    return This->lpVtbl->GetCertificateEnumerator(This,certificateEnumerator);
 620}
 621static inline HRESULT IXpsSignature_GetSigningTime(IXpsSignature* This,LPWSTR *sigDateTimeString) {
 622    return This->lpVtbl->GetSigningTime(This,sigDateTimeString);
 623}
 624static inline HRESULT IXpsSignature_GetSigningTimeFormat(IXpsSignature* This,OPC_SIGNATURE_TIME_FORMAT *timeFormat) {
 625    return This->lpVtbl->GetSigningTimeFormat(This,timeFormat);
 626}
 627static inline HRESULT IXpsSignature_GetSignaturePartName(IXpsSignature* This,IOpcPartUri **signaturePartName) {
 628    return This->lpVtbl->GetSignaturePartName(This,signaturePartName);
 629}
 630static inline HRESULT IXpsSignature_Verify(IXpsSignature* This,const CERT_CONTEXT *x509Certificate,XPS_SIGNATURE_STATUS *sigStatus) {
 631    return This->lpVtbl->Verify(This,x509Certificate,sigStatus);
 632}
 633static inline HRESULT IXpsSignature_GetPolicy(IXpsSignature* This,XPS_SIGN_POLICY *policy) {
 634    return This->lpVtbl->GetPolicy(This,policy);
 635}
 636static inline HRESULT IXpsSignature_GetCustomObjectEnumerator(IXpsSignature* This,IOpcSignatureCustomObjectEnumerator **customObjectEnumerator) {
 637    return This->lpVtbl->GetCustomObjectEnumerator(This,customObjectEnumerator);
 638}
 639static inline HRESULT IXpsSignature_GetCustomReferenceEnumerator(IXpsSignature* This,IOpcSignatureReferenceEnumerator **customReferenceEnumerator) {
 640    return This->lpVtbl->GetCustomReferenceEnumerator(This,customReferenceEnumerator);
 641}
 642static inline HRESULT IXpsSignature_GetSignatureXml(IXpsSignature* This,UINT8 **signatureXml,UINT32 *count) {
 643    return This->lpVtbl->GetSignatureXml(This,signatureXml,count);
 644}
 645static inline HRESULT IXpsSignature_SetSignatureXml(IXpsSignature* This,const UINT8 *signatureXml,UINT32 count) {
 646    return This->lpVtbl->SetSignatureXml(This,signatureXml,count);
 647}
 648#endif
 649#endif
 650
 651#endif
 652
 653
 654#endif  /* __IXpsSignature_INTERFACE_DEFINED__ */
 655
 656/*****************************************************************************
 657 * IXpsSignatureBlock interface
 658 */
 659#ifndef __IXpsSignatureBlock_INTERFACE_DEFINED__
 660#define __IXpsSignatureBlock_INTERFACE_DEFINED__
 661
 662DEFINE_GUID(IID_IXpsSignatureBlock, 0x151fac09, 0x0b97, 0x4ac6, 0xa3,0x23, 0x5e,0x42,0x97,0xd4,0x32,0x2b);
 663#if defined(__cplusplus) && !defined(CINTERFACE)
 664MIDL_INTERFACE("151fac09-0b97-4ac6-a323-5e4297d4322b")
 665IXpsSignatureBlock : public IUnknown
 666{
 667    virtual HRESULT STDMETHODCALLTYPE GetRequests(
 668        IXpsSignatureRequestCollection **requests) = 0;
 669
 670    virtual HRESULT STDMETHODCALLTYPE GetPartName(
 671        IOpcPartUri **partName) = 0;
 672
 673    virtual HRESULT STDMETHODCALLTYPE GetDocumentIndex(
 674        UINT32 *fixedDocumentIndex) = 0;
 675
 676    virtual HRESULT STDMETHODCALLTYPE GetDocumentName(
 677        IOpcPartUri **fixedDocumentName) = 0;
 678
 679    virtual HRESULT STDMETHODCALLTYPE CreateRequest(
 680        LPCWSTR requestId,
 681        IXpsSignatureRequest **signatureRequest) = 0;
 682
 683};
 684#ifdef __CRT_UUID_DECL
 685__CRT_UUID_DECL(IXpsSignatureBlock, 0x151fac09, 0x0b97, 0x4ac6, 0xa3,0x23, 0x5e,0x42,0x97,0xd4,0x32,0x2b)
 686#endif
 687#else
 688typedef struct IXpsSignatureBlockVtbl {
 689    BEGIN_INTERFACE
 690
 691    /*** IUnknown methods ***/
 692    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 693        IXpsSignatureBlock *This,
 694        REFIID riid,
 695        void **ppvObject);
 696
 697    ULONG (STDMETHODCALLTYPE *AddRef)(
 698        IXpsSignatureBlock *This);
 699
 700    ULONG (STDMETHODCALLTYPE *Release)(
 701        IXpsSignatureBlock *This);
 702
 703    /*** IXpsSignatureBlock methods ***/
 704    HRESULT (STDMETHODCALLTYPE *GetRequests)(
 705        IXpsSignatureBlock *This,
 706        IXpsSignatureRequestCollection **requests);
 707
 708    HRESULT (STDMETHODCALLTYPE *GetPartName)(
 709        IXpsSignatureBlock *This,
 710        IOpcPartUri **partName);
 711
 712    HRESULT (STDMETHODCALLTYPE *GetDocumentIndex)(
 713        IXpsSignatureBlock *This,
 714        UINT32 *fixedDocumentIndex);
 715
 716    HRESULT (STDMETHODCALLTYPE *GetDocumentName)(
 717        IXpsSignatureBlock *This,
 718        IOpcPartUri **fixedDocumentName);
 719
 720    HRESULT (STDMETHODCALLTYPE *CreateRequest)(
 721        IXpsSignatureBlock *This,
 722        LPCWSTR requestId,
 723        IXpsSignatureRequest **signatureRequest);
 724
 725    END_INTERFACE
 726} IXpsSignatureBlockVtbl;
 727
 728interface IXpsSignatureBlock {
 729    CONST_VTBL IXpsSignatureBlockVtbl* lpVtbl;
 730};
 731
 732#ifdef COBJMACROS
 733#ifndef WIDL_C_INLINE_WRAPPERS
 734/*** IUnknown methods ***/
 735#define IXpsSignatureBlock_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 736#define IXpsSignatureBlock_AddRef(This) (This)->lpVtbl->AddRef(This)
 737#define IXpsSignatureBlock_Release(This) (This)->lpVtbl->Release(This)
 738/*** IXpsSignatureBlock methods ***/
 739#define IXpsSignatureBlock_GetRequests(This,requests) (This)->lpVtbl->GetRequests(This,requests)
 740#define IXpsSignatureBlock_GetPartName(This,partName) (This)->lpVtbl->GetPartName(This,partName)
 741#define IXpsSignatureBlock_GetDocumentIndex(This,fixedDocumentIndex) (This)->lpVtbl->GetDocumentIndex(This,fixedDocumentIndex)
 742#define IXpsSignatureBlock_GetDocumentName(This,fixedDocumentName) (This)->lpVtbl->GetDocumentName(This,fixedDocumentName)
 743#define IXpsSignatureBlock_CreateRequest(This,requestId,signatureRequest) (This)->lpVtbl->CreateRequest(This,requestId,signatureRequest)
 744#else
 745/*** IUnknown methods ***/
 746static inline HRESULT IXpsSignatureBlock_QueryInterface(IXpsSignatureBlock* This,REFIID riid,void **ppvObject) {
 747    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 748}
 749static inline ULONG IXpsSignatureBlock_AddRef(IXpsSignatureBlock* This) {
 750    return This->lpVtbl->AddRef(This);
 751}
 752static inline ULONG IXpsSignatureBlock_Release(IXpsSignatureBlock* This) {
 753    return This->lpVtbl->Release(This);
 754}
 755/*** IXpsSignatureBlock methods ***/
 756static inline HRESULT IXpsSignatureBlock_GetRequests(IXpsSignatureBlock* This,IXpsSignatureRequestCollection **requests) {
 757    return This->lpVtbl->GetRequests(This,requests);
 758}
 759static inline HRESULT IXpsSignatureBlock_GetPartName(IXpsSignatureBlock* This,IOpcPartUri **partName) {
 760    return This->lpVtbl->GetPartName(This,partName);
 761}
 762static inline HRESULT IXpsSignatureBlock_GetDocumentIndex(IXpsSignatureBlock* This,UINT32 *fixedDocumentIndex) {
 763    return This->lpVtbl->GetDocumentIndex(This,fixedDocumentIndex);
 764}
 765static inline HRESULT IXpsSignatureBlock_GetDocumentName(IXpsSignatureBlock* This,IOpcPartUri **fixedDocumentName) {
 766    return This->lpVtbl->GetDocumentName(This,fixedDocumentName);
 767}
 768static inline HRESULT IXpsSignatureBlock_CreateRequest(IXpsSignatureBlock* This,LPCWSTR requestId,IXpsSignatureRequest **signatureRequest) {
 769    return This->lpVtbl->CreateRequest(This,requestId,signatureRequest);
 770}
 771#endif
 772#endif
 773
 774#endif
 775
 776
 777#endif  /* __IXpsSignatureBlock_INTERFACE_DEFINED__ */
 778
 779/*****************************************************************************
 780 * IXpsSignatureBlockCollection interface
 781 */
 782#ifndef __IXpsSignatureBlockCollection_INTERFACE_DEFINED__
 783#define __IXpsSignatureBlockCollection_INTERFACE_DEFINED__
 784
 785DEFINE_GUID(IID_IXpsSignatureBlockCollection, 0x23397050, 0xfe99, 0x467a, 0x8d,0xce, 0x92,0x37,0xf0,0x74,0xff,0xe4);
 786#if defined(__cplusplus) && !defined(CINTERFACE)
 787MIDL_INTERFACE("23397050-fe99-467a-8dce-9237f074ffe4")
 788IXpsSignatureBlockCollection : public IUnknown
 789{
 790    virtual HRESULT STDMETHODCALLTYPE GetCount(
 791        UINT32 *count) = 0;
 792
 793    virtual HRESULT STDMETHODCALLTYPE GetAt(
 794        UINT32 index,
 795        IXpsSignatureBlock **signatureBlock) = 0;
 796
 797    virtual HRESULT STDMETHODCALLTYPE RemoveAt(
 798        UINT32 index) = 0;
 799
 800};
 801#ifdef __CRT_UUID_DECL
 802__CRT_UUID_DECL(IXpsSignatureBlockCollection, 0x23397050, 0xfe99, 0x467a, 0x8d,0xce, 0x92,0x37,0xf0,0x74,0xff,0xe4)
 803#endif
 804#else
 805typedef struct IXpsSignatureBlockCollectionVtbl {
 806    BEGIN_INTERFACE
 807
 808    /*** IUnknown methods ***/
 809    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 810        IXpsSignatureBlockCollection *This,
 811        REFIID riid,
 812        void **ppvObject);
 813
 814    ULONG (STDMETHODCALLTYPE *AddRef)(
 815        IXpsSignatureBlockCollection *This);
 816
 817    ULONG (STDMETHODCALLTYPE *Release)(
 818        IXpsSignatureBlockCollection *This);
 819
 820    /*** IXpsSignatureBlockCollection methods ***/
 821    HRESULT (STDMETHODCALLTYPE *GetCount)(
 822        IXpsSignatureBlockCollection *This,
 823        UINT32 *count);
 824
 825    HRESULT (STDMETHODCALLTYPE *GetAt)(
 826        IXpsSignatureBlockCollection *This,
 827        UINT32 index,
 828        IXpsSignatureBlock **signatureBlock);
 829
 830    HRESULT (STDMETHODCALLTYPE *RemoveAt)(
 831        IXpsSignatureBlockCollection *This,
 832        UINT32 index);
 833
 834    END_INTERFACE
 835} IXpsSignatureBlockCollectionVtbl;
 836
 837interface IXpsSignatureBlockCollection {
 838    CONST_VTBL IXpsSignatureBlockCollectionVtbl* lpVtbl;
 839};
 840
 841#ifdef COBJMACROS
 842#ifndef WIDL_C_INLINE_WRAPPERS
 843/*** IUnknown methods ***/
 844#define IXpsSignatureBlockCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 845#define IXpsSignatureBlockCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 846#define IXpsSignatureBlockCollection_Release(This) (This)->lpVtbl->Release(This)
 847/*** IXpsSignatureBlockCollection methods ***/
 848#define IXpsSignatureBlockCollection_GetCount(This,count) (This)->lpVtbl->GetCount(This,count)
 849#define IXpsSignatureBlockCollection_GetAt(This,index,signatureBlock) (This)->lpVtbl->GetAt(This,index,signatureBlock)
 850#define IXpsSignatureBlockCollection_RemoveAt(This,index) (This)->lpVtbl->RemoveAt(This,index)
 851#else
 852/*** IUnknown methods ***/
 853static inline HRESULT IXpsSignatureBlockCollection_QueryInterface(IXpsSignatureBlockCollection* This,REFIID riid,void **ppvObject) {
 854    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 855}
 856static inline ULONG IXpsSignatureBlockCollection_AddRef(IXpsSignatureBlockCollection* This) {
 857    return This->lpVtbl->AddRef(This);
 858}
 859static inline ULONG IXpsSignatureBlockCollection_Release(IXpsSignatureBlockCollection* This) {
 860    return This->lpVtbl->Release(This);
 861}
 862/*** IXpsSignatureBlockCollection methods ***/
 863static inline HRESULT IXpsSignatureBlockCollection_GetCount(IXpsSignatureBlockCollection* This,UINT32 *count) {
 864    return This->lpVtbl->GetCount(This,count);
 865}
 866static inline HRESULT IXpsSignatureBlockCollection_GetAt(IXpsSignatureBlockCollection* This,UINT32 index,IXpsSignatureBlock **signatureBlock) {
 867    return This->lpVtbl->GetAt(This,index,signatureBlock);
 868}
 869static inline HRESULT IXpsSignatureBlockCollection_RemoveAt(IXpsSignatureBlockCollection* This,UINT32 index) {
 870    return This->lpVtbl->RemoveAt(This,index);
 871}
 872#endif
 873#endif
 874
 875#endif
 876
 877
 878#endif  /* __IXpsSignatureBlockCollection_INTERFACE_DEFINED__ */
 879
 880/*****************************************************************************
 881 * IXpsSignatureCollection interface
 882 */
 883#ifndef __IXpsSignatureCollection_INTERFACE_DEFINED__
 884#define __IXpsSignatureCollection_INTERFACE_DEFINED__
 885
 886DEFINE_GUID(IID_IXpsSignatureCollection, 0xa2d1d95d, 0xadd2, 0x4dff, 0xab,0x27, 0x6b,0x9c,0x64,0x5f,0xf3,0x22);
 887#if defined(__cplusplus) && !defined(CINTERFACE)
 888MIDL_INTERFACE("a2d1d95d-add2-4dff-ab27-6b9c645ff322")
 889IXpsSignatureCollection : public IUnknown
 890{
 891    virtual HRESULT STDMETHODCALLTYPE GetCount(
 892        UINT32 *count) = 0;
 893
 894    virtual HRESULT STDMETHODCALLTYPE GetAt(
 895        UINT32 index,
 896        IXpsSignature **signature) = 0;
 897
 898    virtual HRESULT STDMETHODCALLTYPE RemoveAt(
 899        UINT32 index) = 0;
 900
 901};
 902#ifdef __CRT_UUID_DECL
 903__CRT_UUID_DECL(IXpsSignatureCollection, 0xa2d1d95d, 0xadd2, 0x4dff, 0xab,0x27, 0x6b,0x9c,0x64,0x5f,0xf3,0x22)
 904#endif
 905#else
 906typedef struct IXpsSignatureCollectionVtbl {
 907    BEGIN_INTERFACE
 908
 909    /*** IUnknown methods ***/
 910    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 911        IXpsSignatureCollection *This,
 912        REFIID riid,
 913        void **ppvObject);
 914
 915    ULONG (STDMETHODCALLTYPE *AddRef)(
 916        IXpsSignatureCollection *This);
 917
 918    ULONG (STDMETHODCALLTYPE *Release)(
 919        IXpsSignatureCollection *This);
 920
 921    /*** IXpsSignatureCollection methods ***/
 922    HRESULT (STDMETHODCALLTYPE *GetCount)(
 923        IXpsSignatureCollection *This,
 924        UINT32 *count);
 925
 926    HRESULT (STDMETHODCALLTYPE *GetAt)(
 927        IXpsSignatureCollection *This,
 928        UINT32 index,
 929        IXpsSignature **signature);
 930
 931    HRESULT (STDMETHODCALLTYPE *RemoveAt)(
 932        IXpsSignatureCollection *This,
 933        UINT32 index);
 934
 935    END_INTERFACE
 936} IXpsSignatureCollectionVtbl;
 937
 938interface IXpsSignatureCollection {
 939    CONST_VTBL IXpsSignatureCollectionVtbl* lpVtbl;
 940};
 941
 942#ifdef COBJMACROS
 943#ifndef WIDL_C_INLINE_WRAPPERS
 944/*** IUnknown methods ***/
 945#define IXpsSignatureCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
 946#define IXpsSignatureCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
 947#define IXpsSignatureCollection_Release(This) (This)->lpVtbl->Release(This)
 948/*** IXpsSignatureCollection methods ***/
 949#define IXpsSignatureCollection_GetCount(This,count) (This)->lpVtbl->GetCount(This,count)
 950#define IXpsSignatureCollection_GetAt(This,index,signature) (This)->lpVtbl->GetAt(This,index,signature)
 951#define IXpsSignatureCollection_RemoveAt(This,index) (This)->lpVtbl->RemoveAt(This,index)
 952#else
 953/*** IUnknown methods ***/
 954static inline HRESULT IXpsSignatureCollection_QueryInterface(IXpsSignatureCollection* This,REFIID riid,void **ppvObject) {
 955    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
 956}
 957static inline ULONG IXpsSignatureCollection_AddRef(IXpsSignatureCollection* This) {
 958    return This->lpVtbl->AddRef(This);
 959}
 960static inline ULONG IXpsSignatureCollection_Release(IXpsSignatureCollection* This) {
 961    return This->lpVtbl->Release(This);
 962}
 963/*** IXpsSignatureCollection methods ***/
 964static inline HRESULT IXpsSignatureCollection_GetCount(IXpsSignatureCollection* This,UINT32 *count) {
 965    return This->lpVtbl->GetCount(This,count);
 966}
 967static inline HRESULT IXpsSignatureCollection_GetAt(IXpsSignatureCollection* This,UINT32 index,IXpsSignature **signature) {
 968    return This->lpVtbl->GetAt(This,index,signature);
 969}
 970static inline HRESULT IXpsSignatureCollection_RemoveAt(IXpsSignatureCollection* This,UINT32 index) {
 971    return This->lpVtbl->RemoveAt(This,index);
 972}
 973#endif
 974#endif
 975
 976#endif
 977
 978
 979#endif  /* __IXpsSignatureCollection_INTERFACE_DEFINED__ */
 980
 981/*****************************************************************************
 982 * IXpsSignatureManager interface
 983 */
 984#ifndef __IXpsSignatureManager_INTERFACE_DEFINED__
 985#define __IXpsSignatureManager_INTERFACE_DEFINED__
 986
 987DEFINE_GUID(IID_IXpsSignatureManager, 0xd3e8d338, 0xfdc4, 0x4afc, 0x80,0xb5, 0xd5,0x32,0xa1,0x78,0x2e,0xe1);
 988#if defined(__cplusplus) && !defined(CINTERFACE)
 989MIDL_INTERFACE("d3e8d338-fdc4-4afc-80b5-d532a1782ee1")
 990IXpsSignatureManager : public IUnknown
 991{
 992    virtual HRESULT STDMETHODCALLTYPE LoadPackageFile(
 993        LPCWSTR fileName) = 0;
 994
 995    virtual HRESULT STDMETHODCALLTYPE LoadPackageStream(
 996        IStream *stream) = 0;
 997
 998    virtual HRESULT STDMETHODCALLTYPE Sign(
 999        IXpsSigningOptions *signOptions,
1000        const CERT_CONTEXT *x509Certificate,
1001        IXpsSignature **signature) = 0;
1002
1003    virtual HRESULT STDMETHODCALLTYPE GetSignatureOriginPartName(
1004        IOpcPartUri **signatureOriginPartName) = 0;
1005
1006    virtual HRESULT STDMETHODCALLTYPE SetSignatureOriginPartName(
1007        IOpcPartUri *signatureOriginPartName) = 0;
1008
1009    virtual HRESULT STDMETHODCALLTYPE GetSignatures(
1010        IXpsSignatureCollection **signatures) = 0;
1011
1012    virtual HRESULT STDMETHODCALLTYPE AddSignatureBlock(
1013        IOpcPartUri *partName,
1014        UINT32 fixedDocumentIndex,
1015        IXpsSignatureBlock **signatureBlock) = 0;
1016
1017    virtual HRESULT STDMETHODCALLTYPE GetSignatureBlocks(
1018        IXpsSignatureBlockCollection **signatureBlocks) = 0;
1019
1020    virtual HRESULT STDMETHODCALLTYPE CreateSigningOptions(
1021        IXpsSigningOptions **signingOptions) = 0;
1022
1023    virtual HRESULT STDMETHODCALLTYPE SavePackageToFile(
1024        LPCWSTR fileName,
1025        LPSECURITY_ATTRIBUTES securityAttributes,
1026        DWORD flagsAndAttributes) = 0;
1027
1028    virtual HRESULT STDMETHODCALLTYPE SavePackageToStream(
1029        IStream *stream) = 0;
1030
1031};
1032#ifdef __CRT_UUID_DECL
1033__CRT_UUID_DECL(IXpsSignatureManager, 0xd3e8d338, 0xfdc4, 0x4afc, 0x80,0xb5, 0xd5,0x32,0xa1,0x78,0x2e,0xe1)
1034#endif
1035#else
1036typedef struct IXpsSignatureManagerVtbl {
1037    BEGIN_INTERFACE
1038
1039    /*** IUnknown methods ***/
1040    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1041        IXpsSignatureManager *This,
1042        REFIID riid,
1043        void **ppvObject);
1044
1045    ULONG (STDMETHODCALLTYPE *AddRef)(
1046        IXpsSignatureManager *This);
1047
1048    ULONG (STDMETHODCALLTYPE *Release)(
1049        IXpsSignatureManager *This);
1050
1051    /*** IXpsSignatureManager methods ***/
1052    HRESULT (STDMETHODCALLTYPE *LoadPackageFile)(
1053        IXpsSignatureManager *This,
1054        LPCWSTR fileName);
1055
1056    HRESULT (STDMETHODCALLTYPE *LoadPackageStream)(
1057        IXpsSignatureManager *This,
1058        IStream *stream);
1059
1060    HRESULT (STDMETHODCALLTYPE *Sign)(
1061        IXpsSignatureManager *This,
1062        IXpsSigningOptions *signOptions,
1063        const CERT_CONTEXT *x509Certificate,
1064        IXpsSignature **signature);
1065
1066    HRESULT (STDMETHODCALLTYPE *GetSignatureOriginPartName)(
1067        IXpsSignatureManager *This,
1068        IOpcPartUri **signatureOriginPartName);
1069
1070    HRESULT (STDMETHODCALLTYPE *SetSignatureOriginPartName)(
1071        IXpsSignatureManager *This,
1072        IOpcPartUri *signatureOriginPartName);
1073
1074    HRESULT (STDMETHODCALLTYPE *GetSignatures)(
1075        IXpsSignatureManager *This,
1076        IXpsSignatureCollection **signatures);
1077
1078    HRESULT (STDMETHODCALLTYPE *AddSignatureBlock)(
1079        IXpsSignatureManager *This,
1080        IOpcPartUri *partName,
1081        UINT32 fixedDocumentIndex,
1082        IXpsSignatureBlock **signatureBlock);
1083
1084    HRESULT (STDMETHODCALLTYPE *GetSignatureBlocks)(
1085        IXpsSignatureManager *This,
1086        IXpsSignatureBlockCollection **signatureBlocks);
1087
1088    HRESULT (STDMETHODCALLTYPE *CreateSigningOptions)(
1089        IXpsSignatureManager *This,
1090        IXpsSigningOptions **signingOptions);
1091
1092    HRESULT (STDMETHODCALLTYPE *SavePackageToFile)(
1093        IXpsSignatureManager *This,
1094        LPCWSTR fileName,
1095        LPSECURITY_ATTRIBUTES securityAttributes,
1096        DWORD flagsAndAttributes);
1097
1098    HRESULT (STDMETHODCALLTYPE *SavePackageToStream)(
1099        IXpsSignatureManager *This,
1100        IStream *stream);
1101
1102    END_INTERFACE
1103} IXpsSignatureManagerVtbl;
1104
1105interface IXpsSignatureManager {
1106    CONST_VTBL IXpsSignatureManagerVtbl* lpVtbl;
1107};
1108
1109#ifdef COBJMACROS
1110#ifndef WIDL_C_INLINE_WRAPPERS
1111/*** IUnknown methods ***/
1112#define IXpsSignatureManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1113#define IXpsSignatureManager_AddRef(This) (This)->lpVtbl->AddRef(This)
1114#define IXpsSignatureManager_Release(This) (This)->lpVtbl->Release(This)
1115/*** IXpsSignatureManager methods ***/
1116#define IXpsSignatureManager_LoadPackageFile(This,fileName) (This)->lpVtbl->LoadPackageFile(This,fileName)
1117#define IXpsSignatureManager_LoadPackageStream(This,stream) (This)->lpVtbl->LoadPackageStream(This,stream)
1118#define IXpsSignatureManager_Sign(This,signOptions,x509Certificate,signature) (This)->lpVtbl->Sign(This,signOptions,x509Certificate,signature)
1119#define IXpsSignatureManager_GetSignatureOriginPartName(This,signatureOriginPartName) (This)->lpVtbl->GetSignatureOriginPartName(This,signatureOriginPartName)
1120#define IXpsSignatureManager_SetSignatureOriginPartName(This,signatureOriginPartName) (This)->lpVtbl->SetSignatureOriginPartName(This,signatureOriginPartName)
1121#define IXpsSignatureManager_GetSignatures(This,signatures) (This)->lpVtbl->GetSignatures(This,signatures)
1122#define IXpsSignatureManager_AddSignatureBlock(This,partName,fixedDocumentIndex,signatureBlock) (This)->lpVtbl->AddSignatureBlock(This,partName,fixedDocumentIndex,signatureBlock)
1123#define IXpsSignatureManager_GetSignatureBlocks(This,signatureBlocks) (This)->lpVtbl->GetSignatureBlocks(This,signatureBlocks)
1124#define IXpsSignatureManager_CreateSigningOptions(This,signingOptions) (This)->lpVtbl->CreateSigningOptions(This,signingOptions)
1125#define IXpsSignatureManager_SavePackageToFile(This,fileName,securityAttributes,flagsAndAttributes) (This)->lpVtbl->SavePackageToFile(This,fileName,securityAttributes,flagsAndAttributes)
1126#define IXpsSignatureManager_SavePackageToStream(This,stream) (This)->lpVtbl->SavePackageToStream(This,stream)
1127#else
1128/*** IUnknown methods ***/
1129static inline HRESULT IXpsSignatureManager_QueryInterface(IXpsSignatureManager* This,REFIID riid,void **ppvObject) {
1130    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1131}
1132static inline ULONG IXpsSignatureManager_AddRef(IXpsSignatureManager* This) {
1133    return This->lpVtbl->AddRef(This);
1134}
1135static inline ULONG IXpsSignatureManager_Release(IXpsSignatureManager* This) {
1136    return This->lpVtbl->Release(This);
1137}
1138/*** IXpsSignatureManager methods ***/
1139static inline HRESULT IXpsSignatureManager_LoadPackageFile(IXpsSignatureManager* This,LPCWSTR fileName) {
1140    return This->lpVtbl->LoadPackageFile(This,fileName);
1141}
1142static inline HRESULT IXpsSignatureManager_LoadPackageStream(IXpsSignatureManager* This,IStream *stream) {
1143    return This->lpVtbl->LoadPackageStream(This,stream);
1144}
1145static inline HRESULT IXpsSignatureManager_Sign(IXpsSignatureManager* This,IXpsSigningOptions *signOptions,const CERT_CONTEXT *x509Certificate,IXpsSignature **signature) {
1146    return This->lpVtbl->Sign(This,signOptions,x509Certificate,signature);
1147}
1148static inline HRESULT IXpsSignatureManager_GetSignatureOriginPartName(IXpsSignatureManager* This,IOpcPartUri **signatureOriginPartName) {
1149    return This->lpVtbl->GetSignatureOriginPartName(This,signatureOriginPartName);
1150}
1151static inline HRESULT IXpsSignatureManager_SetSignatureOriginPartName(IXpsSignatureManager* This,IOpcPartUri *signatureOriginPartName) {
1152    return This->lpVtbl->SetSignatureOriginPartName(This,signatureOriginPartName);
1153}
1154static inline HRESULT IXpsSignatureManager_GetSignatures(IXpsSignatureManager* This,IXpsSignatureCollection **signatures) {
1155    return This->lpVtbl->GetSignatures(This,signatures);
1156}
1157static inline HRESULT IXpsSignatureManager_AddSignatureBlock(IXpsSignatureManager* This,IOpcPartUri *partName,UINT32 fixedDocumentIndex,IXpsSignatureBlock **signatureBlock) {
1158    return This->lpVtbl->AddSignatureBlock(This,partName,fixedDocumentIndex,signatureBlock);
1159}
1160static inline HRESULT IXpsSignatureManager_GetSignatureBlocks(IXpsSignatureManager* This,IXpsSignatureBlockCollection **signatureBlocks) {
1161    return This->lpVtbl->GetSignatureBlocks(This,signatureBlocks);
1162}
1163static inline HRESULT IXpsSignatureManager_CreateSigningOptions(IXpsSignatureManager* This,IXpsSigningOptions **signingOptions) {
1164    return This->lpVtbl->CreateSigningOptions(This,signingOptions);
1165}
1166static inline HRESULT IXpsSignatureManager_SavePackageToFile(IXpsSignatureManager* This,LPCWSTR fileName,LPSECURITY_ATTRIBUTES securityAttributes,DWORD flagsAndAttributes) {
1167    return This->lpVtbl->SavePackageToFile(This,fileName,securityAttributes,flagsAndAttributes);
1168}
1169static inline HRESULT IXpsSignatureManager_SavePackageToStream(IXpsSignatureManager* This,IStream *stream) {
1170    return This->lpVtbl->SavePackageToStream(This,stream);
1171}
1172#endif
1173#endif
1174
1175#endif
1176
1177
1178#endif  /* __IXpsSignatureManager_INTERFACE_DEFINED__ */
1179
1180/*****************************************************************************
1181 * IXpsSignatureRequest interface
1182 */
1183#ifndef __IXpsSignatureRequest_INTERFACE_DEFINED__
1184#define __IXpsSignatureRequest_INTERFACE_DEFINED__
1185
1186DEFINE_GUID(IID_IXpsSignatureRequest, 0xac58950b, 0x7208, 0x4b2d, 0xb2,0xc4, 0x95,0x10,0x83,0xd3,0xb8,0xeb);
1187#if defined(__cplusplus) && !defined(CINTERFACE)
1188MIDL_INTERFACE("ac58950b-7208-4b2d-b2c4-951083d3b8eb")
1189IXpsSignatureRequest : public IUnknown
1190{
1191    virtual HRESULT STDMETHODCALLTYPE GetIntent(
1192        LPWSTR *intent) = 0;
1193
1194    virtual HRESULT STDMETHODCALLTYPE SetIntent(
1195        LPCWSTR intent) = 0;
1196
1197    virtual HRESULT STDMETHODCALLTYPE GetRequestedSigner(
1198        LPWSTR *signerName) = 0;
1199
1200    virtual HRESULT STDMETHODCALLTYPE SetRequestedSigner(
1201        LPCWSTR signerName) = 0;
1202
1203    virtual HRESULT STDMETHODCALLTYPE GetRequestSignByDate(
1204        LPWSTR *dateString) = 0;
1205
1206    virtual HRESULT STDMETHODCALLTYPE SetRequestSignByDate(
1207        LPCWSTR dateString) = 0;
1208
1209    virtual HRESULT STDMETHODCALLTYPE GetSigningLocale(
1210        LPWSTR *place) = 0;
1211
1212    virtual HRESULT STDMETHODCALLTYPE SetSigningLocale(
1213        LPCWSTR place) = 0;
1214
1215    virtual HRESULT STDMETHODCALLTYPE GetSpotLocation(
1216        INT32 *pageIndex,
1217        IOpcPartUri **pagePartName,
1218        float *x,
1219        float *y) = 0;
1220
1221    virtual HRESULT STDMETHODCALLTYPE SetSpotLocation(
1222        INT32 pageIndex,
1223        float x,
1224        float y) = 0;
1225
1226    virtual HRESULT STDMETHODCALLTYPE GetRequestId(
1227        LPWSTR *requestId) = 0;
1228
1229    virtual HRESULT STDMETHODCALLTYPE GetSignature(
1230        IXpsSignature **signature) = 0;
1231
1232};
1233#ifdef __CRT_UUID_DECL
1234__CRT_UUID_DECL(IXpsSignatureRequest, 0xac58950b, 0x7208, 0x4b2d, 0xb2,0xc4, 0x95,0x10,0x83,0xd3,0xb8,0xeb)
1235#endif
1236#else
1237typedef struct IXpsSignatureRequestVtbl {
1238    BEGIN_INTERFACE
1239
1240    /*** IUnknown methods ***/
1241    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1242        IXpsSignatureRequest *This,
1243        REFIID riid,
1244        void **ppvObject);
1245
1246    ULONG (STDMETHODCALLTYPE *AddRef)(
1247        IXpsSignatureRequest *This);
1248
1249    ULONG (STDMETHODCALLTYPE *Release)(
1250        IXpsSignatureRequest *This);
1251
1252    /*** IXpsSignatureRequest methods ***/
1253    HRESULT (STDMETHODCALLTYPE *GetIntent)(
1254        IXpsSignatureRequest *This,
1255        LPWSTR *intent);
1256
1257    HRESULT (STDMETHODCALLTYPE *SetIntent)(
1258        IXpsSignatureRequest *This,
1259        LPCWSTR intent);
1260
1261    HRESULT (STDMETHODCALLTYPE *GetRequestedSigner)(
1262        IXpsSignatureRequest *This,
1263        LPWSTR *signerName);
1264
1265    HRESULT (STDMETHODCALLTYPE *SetRequestedSigner)(
1266        IXpsSignatureRequest *This,
1267        LPCWSTR signerName);
1268
1269    HRESULT (STDMETHODCALLTYPE *GetRequestSignByDate)(
1270        IXpsSignatureRequest *This,
1271        LPWSTR *dateString);
1272
1273    HRESULT (STDMETHODCALLTYPE *SetRequestSignByDate)(
1274        IXpsSignatureRequest *This,
1275        LPCWSTR dateString);
1276
1277    HRESULT (STDMETHODCALLTYPE *GetSigningLocale)(
1278        IXpsSignatureRequest *This,
1279        LPWSTR *place);
1280
1281    HRESULT (STDMETHODCALLTYPE *SetSigningLocale)(
1282        IXpsSignatureRequest *This,
1283        LPCWSTR place);
1284
1285    HRESULT (STDMETHODCALLTYPE *GetSpotLocation)(
1286        IXpsSignatureRequest *This,
1287        INT32 *pageIndex,
1288        IOpcPartUri **pagePartName,
1289        float *x,
1290        float *y);
1291
1292    HRESULT (STDMETHODCALLTYPE *SetSpotLocation)(
1293        IXpsSignatureRequest *This,
1294        INT32 pageIndex,
1295        float x,
1296        float y);
1297
1298    HRESULT (STDMETHODCALLTYPE *GetRequestId)(
1299        IXpsSignatureRequest *This,
1300        LPWSTR *requestId);
1301
1302    HRESULT (STDMETHODCALLTYPE *GetSignature)(
1303        IXpsSignatureRequest *This,
1304        IXpsSignature **signature);
1305
1306    END_INTERFACE
1307} IXpsSignatureRequestVtbl;
1308
1309interface IXpsSignatureRequest {
1310    CONST_VTBL IXpsSignatureRequestVtbl* lpVtbl;
1311};
1312
1313#ifdef COBJMACROS
1314#ifndef WIDL_C_INLINE_WRAPPERS
1315/*** IUnknown methods ***/
1316#define IXpsSignatureRequest_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1317#define IXpsSignatureRequest_AddRef(This) (This)->lpVtbl->AddRef(This)
1318#define IXpsSignatureRequest_Release(This) (This)->lpVtbl->Release(This)
1319/*** IXpsSignatureRequest methods ***/
1320#define IXpsSignatureRequest_GetIntent(This,intent) (This)->lpVtbl->GetIntent(This,intent)
1321#define IXpsSignatureRequest_SetIntent(This,intent) (This)->lpVtbl->SetIntent(This,intent)
1322#define IXpsSignatureRequest_GetRequestedSigner(This,signerName) (This)->lpVtbl->GetRequestedSigner(This,signerName)
1323#define IXpsSignatureRequest_SetRequestedSigner(This,signerName) (This)->lpVtbl->SetRequestedSigner(This,signerName)
1324#define IXpsSignatureRequest_GetRequestSignByDate(This,dateString) (This)->lpVtbl->GetRequestSignByDate(This,dateString)
1325#define IXpsSignatureRequest_SetRequestSignByDate(This,dateString) (This)->lpVtbl->SetRequestSignByDate(This,dateString)
1326#define IXpsSignatureRequest_GetSigningLocale(This,place) (This)->lpVtbl->GetSigningLocale(This,place)
1327#define IXpsSignatureRequest_SetSigningLocale(This,place) (This)->lpVtbl->SetSigningLocale(This,place)
1328#define IXpsSignatureRequest_GetSpotLocation(This,pageIndex,pagePartName,x,y) (This)->lpVtbl->GetSpotLocation(This,pageIndex,pagePartName,x,y)
1329#define IXpsSignatureRequest_SetSpotLocation(This,pageIndex,x,y) (This)->lpVtbl->SetSpotLocation(This,pageIndex,x,y)
1330#define IXpsSignatureRequest_GetRequestId(This,requestId) (This)->lpVtbl->GetRequestId(This,requestId)
1331#define IXpsSignatureRequest_GetSignature(This,signature) (This)->lpVtbl->GetSignature(This,signature)
1332#else
1333/*** IUnknown methods ***/
1334static inline HRESULT IXpsSignatureRequest_QueryInterface(IXpsSignatureRequest* This,REFIID riid,void **ppvObject) {
1335    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1336}
1337static inline ULONG IXpsSignatureRequest_AddRef(IXpsSignatureRequest* This) {
1338    return This->lpVtbl->AddRef(This);
1339}
1340static inline ULONG IXpsSignatureRequest_Release(IXpsSignatureRequest* This) {
1341    return This->lpVtbl->Release(This);
1342}
1343/*** IXpsSignatureRequest methods ***/
1344static inline HRESULT IXpsSignatureRequest_GetIntent(IXpsSignatureRequest* This,LPWSTR *intent) {
1345    return This->lpVtbl->GetIntent(This,intent);
1346}
1347static inline HRESULT IXpsSignatureRequest_SetIntent(IXpsSignatureRequest* This,LPCWSTR intent) {
1348    return This->lpVtbl->SetIntent(This,intent);
1349}
1350static inline HRESULT IXpsSignatureRequest_GetRequestedSigner(IXpsSignatureRequest* This,LPWSTR *signerName) {
1351    return This->lpVtbl->GetRequestedSigner(This,signerName);
1352}
1353static inline HRESULT IXpsSignatureRequest_SetRequestedSigner(IXpsSignatureRequest* This,LPCWSTR signerName) {
1354    return This->lpVtbl->SetRequestedSigner(This,signerName);
1355}
1356static inline HRESULT IXpsSignatureRequest_GetRequestSignByDate(IXpsSignatureRequest* This,LPWSTR *dateString) {
1357    return This->lpVtbl->GetRequestSignByDate(This,dateString);
1358}
1359static inline HRESULT IXpsSignatureRequest_SetRequestSignByDate(IXpsSignatureRequest* This,LPCWSTR dateString) {
1360    return This->lpVtbl->SetRequestSignByDate(This,dateString);
1361}
1362static inline HRESULT IXpsSignatureRequest_GetSigningLocale(IXpsSignatureRequest* This,LPWSTR *place) {
1363    return This->lpVtbl->GetSigningLocale(This,place);
1364}
1365static inline HRESULT IXpsSignatureRequest_SetSigningLocale(IXpsSignatureRequest* This,LPCWSTR place) {
1366    return This->lpVtbl->SetSigningLocale(This,place);
1367}
1368static inline HRESULT IXpsSignatureRequest_GetSpotLocation(IXpsSignatureRequest* This,INT32 *pageIndex,IOpcPartUri **pagePartName,float *x,float *y) {
1369    return This->lpVtbl->GetSpotLocation(This,pageIndex,pagePartName,x,y);
1370}
1371static inline HRESULT IXpsSignatureRequest_SetSpotLocation(IXpsSignatureRequest* This,INT32 pageIndex,float x,float y) {
1372    return This->lpVtbl->SetSpotLocation(This,pageIndex,x,y);
1373}
1374static inline HRESULT IXpsSignatureRequest_GetRequestId(IXpsSignatureRequest* This,LPWSTR *requestId) {
1375    return This->lpVtbl->GetRequestId(This,requestId);
1376}
1377static inline HRESULT IXpsSignatureRequest_GetSignature(IXpsSignatureRequest* This,IXpsSignature **signature) {
1378    return This->lpVtbl->GetSignature(This,signature);
1379}
1380#endif
1381#endif
1382
1383#endif
1384
1385
1386#endif  /* __IXpsSignatureRequest_INTERFACE_DEFINED__ */
1387
1388/*****************************************************************************
1389 * IXpsSignatureRequestCollection interface
1390 */
1391#ifndef __IXpsSignatureRequestCollection_INTERFACE_DEFINED__
1392#define __IXpsSignatureRequestCollection_INTERFACE_DEFINED__
1393
1394DEFINE_GUID(IID_IXpsSignatureRequestCollection, 0xf0253e68, 0x9f19, 0x412e, 0x9b,0x4f, 0x54,0xd3,0xb0,0xac,0x6c,0xd9);
1395#if defined(__cplusplus) && !defined(CINTERFACE)
1396MIDL_INTERFACE("f0253e68-9f19-412e-9b4f-54d3b0ac6cd9")
1397IXpsSignatureRequestCollection : public IUnknown
1398{
1399    virtual HRESULT STDMETHODCALLTYPE GetCount(
1400        UINT32 *count) = 0;
1401
1402    virtual HRESULT STDMETHODCALLTYPE GetAt(
1403        UINT32 index,
1404        IXpsSignatureRequest **signatureRequest) = 0;
1405
1406    virtual HRESULT STDMETHODCALLTYPE RemoveAt(
1407        UINT32 index) = 0;
1408
1409};
1410#ifdef __CRT_UUID_DECL
1411__CRT_UUID_DECL(IXpsSignatureRequestCollection, 0xf0253e68, 0x9f19, 0x412e, 0x9b,0x4f, 0x54,0xd3,0xb0,0xac,0x6c,0xd9)
1412#endif
1413#else
1414typedef struct IXpsSignatureRequestCollectionVtbl {
1415    BEGIN_INTERFACE
1416
1417    /*** IUnknown methods ***/
1418    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1419        IXpsSignatureRequestCollection *This,
1420        REFIID riid,
1421        void **ppvObject);
1422
1423    ULONG (STDMETHODCALLTYPE *AddRef)(
1424        IXpsSignatureRequestCollection *This);
1425
1426    ULONG (STDMETHODCALLTYPE *Release)(
1427        IXpsSignatureRequestCollection *This);
1428
1429    /*** IXpsSignatureRequestCollection methods ***/
1430    HRESULT (STDMETHODCALLTYPE *GetCount)(
1431        IXpsSignatureRequestCollection *This,
1432        UINT32 *count);
1433
1434    HRESULT (STDMETHODCALLTYPE *GetAt)(
1435        IXpsSignatureRequestCollection *This,
1436        UINT32 index,
1437        IXpsSignatureRequest **signatureRequest);
1438
1439    HRESULT (STDMETHODCALLTYPE *RemoveAt)(
1440        IXpsSignatureRequestCollection *This,
1441        UINT32 index);
1442
1443    END_INTERFACE
1444} IXpsSignatureRequestCollectionVtbl;
1445
1446interface IXpsSignatureRequestCollection {
1447    CONST_VTBL IXpsSignatureRequestCollectionVtbl* lpVtbl;
1448};
1449
1450#ifdef COBJMACROS
1451#ifndef WIDL_C_INLINE_WRAPPERS
1452/*** IUnknown methods ***/
1453#define IXpsSignatureRequestCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1454#define IXpsSignatureRequestCollection_AddRef(This) (This)->lpVtbl->AddRef(This)
1455#define IXpsSignatureRequestCollection_Release(This) (This)->lpVtbl->Release(This)
1456/*** IXpsSignatureRequestCollection methods ***/
1457#define IXpsSignatureRequestCollection_GetCount(This,count) (This)->lpVtbl->GetCount(This,count)
1458#define IXpsSignatureRequestCollection_GetAt(This,index,signatureRequest) (This)->lpVtbl->GetAt(This,index,signatureRequest)
1459#define IXpsSignatureRequestCollection_RemoveAt(This,index) (This)->lpVtbl->RemoveAt(This,index)
1460#else
1461/*** IUnknown methods ***/
1462static inline HRESULT IXpsSignatureRequestCollection_QueryInterface(IXpsSignatureRequestCollection* This,REFIID riid,void **ppvObject) {
1463    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1464}
1465static inline ULONG IXpsSignatureRequestCollection_AddRef(IXpsSignatureRequestCollection* This) {
1466    return This->lpVtbl->AddRef(This);
1467}
1468static inline ULONG IXpsSignatureRequestCollection_Release(IXpsSignatureRequestCollection* This) {
1469    return This->lpVtbl->Release(This);
1470}
1471/*** IXpsSignatureRequestCollection methods ***/
1472static inline HRESULT IXpsSignatureRequestCollection_GetCount(IXpsSignatureRequestCollection* This,UINT32 *count) {
1473    return This->lpVtbl->GetCount(This,count);
1474}
1475static inline HRESULT IXpsSignatureRequestCollection_GetAt(IXpsSignatureRequestCollection* This,UINT32 index,IXpsSignatureRequest **signatureRequest) {
1476    return This->lpVtbl->GetAt(This,index,signatureRequest);
1477}
1478static inline HRESULT IXpsSignatureRequestCollection_RemoveAt(IXpsSignatureRequestCollection* This,UINT32 index) {
1479    return This->lpVtbl->RemoveAt(This,index);
1480}
1481#endif
1482#endif
1483
1484#endif
1485
1486
1487#endif  /* __IXpsSignatureRequestCollection_INTERFACE_DEFINED__ */
1488
1489/*****************************************************************************
1490 * XpsSignatureManager coclass
1491 */
1492
1493DEFINE_GUID(CLSID_XpsSignatureManager, 0xb0c43320, 0x2315, 0x44a2, 0xb7,0x0a, 0x09,0x43,0xa1,0x40,0xa8,0xee);
1494
1495#ifdef __cplusplus
1496class DECLSPEC_UUID("b0c43320-2315-44a2-b70a-0943a140a8ee") XpsSignatureManager;
1497#ifdef __CRT_UUID_DECL
1498__CRT_UUID_DECL(XpsSignatureManager, 0xb0c43320, 0x2315, 0x44a2, 0xb7,0x0a, 0x09,0x43,0xa1,0x40,0xa8,0xee)
1499#endif
1500#endif
1501
1502#endif /* __MSXPSSIG_LIBRARY_DEFINED__ */
1503#endif
1504#endif
1505/* Begin additional prototypes for all interfaces */
1506
1507
1508/* End additional prototypes */
1509
1510#ifdef __cplusplus
1511}
1512#endif
1513
1514#endif /* __xpsdigitalsignature_h__ */