Home | History | Annotate | Download | only in include
      1 /*** Autogenerated by WIDL 1.6 from include/xpsprint.idl - Do not edit ***/
      2 
      3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      5 #endif
      6 
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 
     10 #ifndef COM_NO_WINDOWS_H
     11 #include <windows.h>
     12 #include <ole2.h>
     13 #endif
     14 
     15 #ifndef __xpsprint_h__
     16 #define __xpsprint_h__
     17 
     18 /* Forward declarations */
     19 
     20 #ifndef __IXpsPrintJobStream_FWD_DEFINED__
     21 #define __IXpsPrintJobStream_FWD_DEFINED__
     22 typedef interface IXpsPrintJobStream IXpsPrintJobStream;
     23 #endif
     24 
     25 #ifndef __IXpsPrintJob_FWD_DEFINED__
     26 #define __IXpsPrintJob_FWD_DEFINED__
     27 typedef interface IXpsPrintJob IXpsPrintJob;
     28 #endif
     29 
     30 /* Headers for imported files */
     31 
     32 #include <objidl.h>
     33 #include <oaidl.h>
     34 #include <ocidl.h>
     35 #include <xpsobjectmodel.h>
     36 
     37 #ifdef __cplusplus
     38 extern "C" {
     39 #endif
     40 
     41 #include <winapifamily.h>
     42 
     43 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
     44 #if NTDDI_VERSION >= 0x06010000
     45 typedef enum __WIDL_xpsprint_generated_name_00000038 {
     46     XPS_JOB_IN_PROGRESS = 0,
     47     XPS_JOB_COMPLETED = 1,
     48     XPS_JOB_CANCELLED = 2,
     49     XPS_JOB_FAILED = 3
     50 } XPS_JOB_COMPLETION;
     51 typedef struct __WIDL_xpsprint_generated_name_00000039 {
     52     UINT32 jobId;
     53     INT32 currentDocument;
     54     INT32 currentPage;
     55     INT32 currentPageTotal;
     56     XPS_JOB_COMPLETION completion;
     57     HRESULT jobStatus;
     58 } XPS_JOB_STATUS;
     59 /*****************************************************************************
     60  * IXpsPrintJobStream interface
     61  */
     62 #ifndef __IXpsPrintJobStream_INTERFACE_DEFINED__
     63 #define __IXpsPrintJobStream_INTERFACE_DEFINED__
     64 
     65 DEFINE_GUID(IID_IXpsPrintJobStream, 0x7a77dc5f, 0x45d6, 0x4dff, 0x93,0x07, 0xd8,0xcb,0x84,0x63,0x47,0xca);
     66 #if defined(__cplusplus) && !defined(CINTERFACE)
     67 MIDL_INTERFACE("7a77dc5f-45d6-4dff-9307-d8cb846347ca")
     68 IXpsPrintJobStream : public ISequentialStream
     69 {
     70     virtual HRESULT STDMETHODCALLTYPE Close(
     71         ) = 0;
     72 
     73 };
     74 #ifdef __CRT_UUID_DECL
     75 __CRT_UUID_DECL(IXpsPrintJobStream, 0x7a77dc5f, 0x45d6, 0x4dff, 0x93,0x07, 0xd8,0xcb,0x84,0x63,0x47,0xca)
     76 #endif
     77 #else
     78 typedef struct IXpsPrintJobStreamVtbl {
     79     BEGIN_INTERFACE
     80 
     81     /*** IUnknown methods ***/
     82     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
     83         IXpsPrintJobStream* This,
     84         REFIID riid,
     85         void **ppvObject);
     86 
     87     ULONG (STDMETHODCALLTYPE *AddRef)(
     88         IXpsPrintJobStream* This);
     89 
     90     ULONG (STDMETHODCALLTYPE *Release)(
     91         IXpsPrintJobStream* This);
     92 
     93     /*** ISequentialStream methods ***/
     94     HRESULT (STDMETHODCALLTYPE *Read)(
     95         IXpsPrintJobStream* This,
     96         void *pv,
     97         ULONG cb,
     98         ULONG *pcbRead);
     99 
    100     HRESULT (STDMETHODCALLTYPE *Write)(
    101         IXpsPrintJobStream* This,
    102         const void *pv,
    103         ULONG cb,
    104         ULONG *pcbWritten);
    105 
    106     /*** IXpsPrintJobStream methods ***/
    107     HRESULT (STDMETHODCALLTYPE *Close)(
    108         IXpsPrintJobStream* This);
    109 
    110     END_INTERFACE
    111 } IXpsPrintJobStreamVtbl;
    112 interface IXpsPrintJobStream {
    113     CONST_VTBL IXpsPrintJobStreamVtbl* lpVtbl;
    114 };
    115 
    116 #ifdef COBJMACROS
    117 #ifndef WIDL_C_INLINE_WRAPPERS
    118 /*** IUnknown methods ***/
    119 #define IXpsPrintJobStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    120 #define IXpsPrintJobStream_AddRef(This) (This)->lpVtbl->AddRef(This)
    121 #define IXpsPrintJobStream_Release(This) (This)->lpVtbl->Release(This)
    122 /*** ISequentialStream methods ***/
    123 #define IXpsPrintJobStream_Read(This,pv,cb,pcbRead) (This)->lpVtbl->Read(This,pv,cb,pcbRead)
    124 #define IXpsPrintJobStream_Write(This,pv,cb,pcbWritten) (This)->lpVtbl->Write(This,pv,cb,pcbWritten)
    125 /*** IXpsPrintJobStream methods ***/
    126 #define IXpsPrintJobStream_Close(This) (This)->lpVtbl->Close(This)
    127 #else
    128 /*** IUnknown methods ***/
    129 static FORCEINLINE HRESULT IXpsPrintJobStream_QueryInterface(IXpsPrintJobStream* This,REFIID riid,void **ppvObject) {
    130     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    131 }
    132 static FORCEINLINE ULONG IXpsPrintJobStream_AddRef(IXpsPrintJobStream* This) {
    133     return This->lpVtbl->AddRef(This);
    134 }
    135 static FORCEINLINE ULONG IXpsPrintJobStream_Release(IXpsPrintJobStream* This) {
    136     return This->lpVtbl->Release(This);
    137 }
    138 /*** ISequentialStream methods ***/
    139 static FORCEINLINE HRESULT IXpsPrintJobStream_Read(IXpsPrintJobStream* This,void *pv,ULONG cb,ULONG *pcbRead) {
    140     return This->lpVtbl->Read(This,pv,cb,pcbRead);
    141 }
    142 static FORCEINLINE HRESULT IXpsPrintJobStream_Write(IXpsPrintJobStream* This,const void *pv,ULONG cb,ULONG *pcbWritten) {
    143     return This->lpVtbl->Write(This,pv,cb,pcbWritten);
    144 }
    145 /*** IXpsPrintJobStream methods ***/
    146 static FORCEINLINE HRESULT IXpsPrintJobStream_Close(IXpsPrintJobStream* This) {
    147     return This->lpVtbl->Close(This);
    148 }
    149 #endif
    150 #endif
    151 
    152 #endif
    153 
    154 
    155 #endif  /* __IXpsPrintJobStream_INTERFACE_DEFINED__ */
    156 
    157 /*****************************************************************************
    158  * IXpsPrintJob interface
    159  */
    160 #ifndef __IXpsPrintJob_INTERFACE_DEFINED__
    161 #define __IXpsPrintJob_INTERFACE_DEFINED__
    162 
    163 DEFINE_GUID(IID_IXpsPrintJob, 0x5ab89b06, 0x8194, 0x425f, 0xab,0x3b, 0xd7,0xa9,0x6e,0x35,0x01,0x61);
    164 #if defined(__cplusplus) && !defined(CINTERFACE)
    165 MIDL_INTERFACE("5ab89b06-8194-425f-ab3b-d7a96e350161")
    166 IXpsPrintJob : public IUnknown
    167 {
    168     virtual HRESULT STDMETHODCALLTYPE Cancel(
    169         ) = 0;
    170 
    171     virtual HRESULT STDMETHODCALLTYPE GetJobStatus(
    172         XPS_JOB_STATUS *jobStatus) = 0;
    173 
    174 };
    175 #ifdef __CRT_UUID_DECL
    176 __CRT_UUID_DECL(IXpsPrintJob, 0x5ab89b06, 0x8194, 0x425f, 0xab,0x3b, 0xd7,0xa9,0x6e,0x35,0x01,0x61)
    177 #endif
    178 #else
    179 typedef struct IXpsPrintJobVtbl {
    180     BEGIN_INTERFACE
    181 
    182     /*** IUnknown methods ***/
    183     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    184         IXpsPrintJob* This,
    185         REFIID riid,
    186         void **ppvObject);
    187 
    188     ULONG (STDMETHODCALLTYPE *AddRef)(
    189         IXpsPrintJob* This);
    190 
    191     ULONG (STDMETHODCALLTYPE *Release)(
    192         IXpsPrintJob* This);
    193 
    194     /*** IXpsPrintJob methods ***/
    195     HRESULT (STDMETHODCALLTYPE *Cancel)(
    196         IXpsPrintJob* This);
    197 
    198     HRESULT (STDMETHODCALLTYPE *GetJobStatus)(
    199         IXpsPrintJob* This,
    200         XPS_JOB_STATUS *jobStatus);
    201 
    202     END_INTERFACE
    203 } IXpsPrintJobVtbl;
    204 interface IXpsPrintJob {
    205     CONST_VTBL IXpsPrintJobVtbl* lpVtbl;
    206 };
    207 
    208 #ifdef COBJMACROS
    209 #ifndef WIDL_C_INLINE_WRAPPERS
    210 /*** IUnknown methods ***/
    211 #define IXpsPrintJob_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    212 #define IXpsPrintJob_AddRef(This) (This)->lpVtbl->AddRef(This)
    213 #define IXpsPrintJob_Release(This) (This)->lpVtbl->Release(This)
    214 /*** IXpsPrintJob methods ***/
    215 #define IXpsPrintJob_Cancel(This) (This)->lpVtbl->Cancel(This)
    216 #define IXpsPrintJob_GetJobStatus(This,jobStatus) (This)->lpVtbl->GetJobStatus(This,jobStatus)
    217 #else
    218 /*** IUnknown methods ***/
    219 static FORCEINLINE HRESULT IXpsPrintJob_QueryInterface(IXpsPrintJob* This,REFIID riid,void **ppvObject) {
    220     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    221 }
    222 static FORCEINLINE ULONG IXpsPrintJob_AddRef(IXpsPrintJob* This) {
    223     return This->lpVtbl->AddRef(This);
    224 }
    225 static FORCEINLINE ULONG IXpsPrintJob_Release(IXpsPrintJob* This) {
    226     return This->lpVtbl->Release(This);
    227 }
    228 /*** IXpsPrintJob methods ***/
    229 static FORCEINLINE HRESULT IXpsPrintJob_Cancel(IXpsPrintJob* This) {
    230     return This->lpVtbl->Cancel(This);
    231 }
    232 static FORCEINLINE HRESULT IXpsPrintJob_GetJobStatus(IXpsPrintJob* This,XPS_JOB_STATUS *jobStatus) {
    233     return This->lpVtbl->GetJobStatus(This,jobStatus);
    234 }
    235 #endif
    236 #endif
    237 
    238 #endif
    239 
    240 
    241 #endif  /* __IXpsPrintJob_INTERFACE_DEFINED__ */
    242 
    243 HRESULT WINAPI StartXpsPrintJob (LPCWSTR printerName, LPCWSTR jobName, LPCWSTR outputFileName, HANDLE progressEvent, HANDLE completionEvent, UINT8 *printablePagesOn, UINT32 printablePagesOnCount, IXpsPrintJob **xpsPrintJob, IXpsPrintJobStream **documentStream, IXpsPrintJobStream **printTicketStream);
    244 HRESULT WINAPI StartXpsPrintJob1 (LPCWSTR printerName, LPCWSTR jobName, LPCWSTR outputFileName, HANDLE progressEvent, HANDLE completionEvent, IXpsPrintJob **xpsPrintJob, IXpsOMPackageTarget **printContentReceiver);
    245 #endif
    246 #endif
    247 /* Begin additional prototypes for all interfaces */
    248 
    249 
    250 /* End additional prototypes */
    251 
    252 #ifdef __cplusplus
    253 }
    254 #endif
    255 
    256 #endif /* __xpsprint_h__ */
    257