blob: 17ef8dfce04053bb7de1d99a40449a572f3af72a [file] [log] [blame]
/**
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
import "objidl.idl";
import "oaidl.idl";
import "ocidl.idl";
import "xpsobjectmodel.idl";
cpp_quote("#include <winapifamily.h>")
cpp_quote("")
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
cpp_quote("#if NTDDI_VERSION >= 0x06010000")
typedef enum {
XPS_JOB_IN_PROGRESS = 0,
XPS_JOB_COMPLETED = 1,
XPS_JOB_CANCELLED = 2,
XPS_JOB_FAILED = 3
} XPS_JOB_COMPLETION;
typedef struct {
UINT32 jobId;
INT32 currentDocument;
INT32 currentPage;
INT32 currentPageTotal;
XPS_JOB_COMPLETION completion;
HRESULT jobStatus;
} XPS_JOB_STATUS;
[object, uuid (7a77dc5f-45d6-4dff-9307-d8cb846347ca), pointer_default (unique)]
interface IXpsPrintJobStream : ISequentialStream {
[local] HRESULT Close ();
}
[object, uuid (5ab89b06-8194-425f-ab3b-d7a96e350161), pointer_default (unique)]
interface IXpsPrintJob : IUnknown {
[local] HRESULT Cancel ();
[local] HRESULT GetJobStatus ([out, retval] XPS_JOB_STATUS *jobStatus);
}
cpp_quote("HRESULT WINAPI StartXpsPrintJob (LPCWSTR printerName, LPCWSTR jobName, LPCWSTR outputFileName, HANDLE progressEvent, HANDLE completionEvent, UINT8 *printablePagesOn, UINT32 printablePagesOnCount, IXpsPrintJob **xpsPrintJob, IXpsPrintJobStream **documentStream, IXpsPrintJobStream **printTicketStream);")
cpp_quote("HRESULT WINAPI StartXpsPrintJob1 (LPCWSTR printerName, LPCWSTR jobName, LPCWSTR outputFileName, HANDLE progressEvent, HANDLE completionEvent, IXpsPrintJob **xpsPrintJob, IXpsOMPackageTarget **printContentReceiver);")
cpp_quote("#endif")
cpp_quote("#endif")