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