|  | cpp_quote("/**") | 
|  | cpp_quote(" * This file is part of the mingw-w64 runtime package.") | 
|  | cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.") | 
|  | cpp_quote(" */") | 
|  |  | 
|  | import "oaidl.idl"; | 
|  | import "ocidl.idl"; | 
|  |  | 
|  | cpp_quote("") | 
|  | cpp_quote("#include <winapifamily.h>") | 
|  | cpp_quote("") | 
|  | cpp_quote("DEFINE_GUID (ID_DOCUMENTPACKAGETARGET_MSXPS, 0x9cae40a8, 0xded1, 0x41c9, 0xa9, 0xfd, 0xd7, 0x35, 0xef, 0x33, 0xae, 0xda);") | 
|  | cpp_quote("DEFINE_GUID (ID_DOCUMENTPACKAGETARGET_OPENXPS, 0x0056bb72, 0x8c9c, 0x4612, 0xbd, 0x0f, 0x93, 0x01, 0x2a, 0x87, 0x09, 0x9d);") | 
|  | cpp_quote("") | 
|  | cpp_quote("#if NTDDI_VERSION >= 0x06010000") | 
|  | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") | 
|  | [object, uuid (1b8efec4-3019-4c27-964e-367202156906)] | 
|  | interface IPrintDocumentPackageTarget : IUnknown { | 
|  | HRESULT GetPackageTargetTypes ([out] UINT32 *targetCount,[out, size_is (,*targetCount)] GUID **targetTypes); | 
|  | HRESULT GetPackageTarget ([in] REFGUID guidTargetType,[in] REFIID riid,[out, iid_is (riid)] void **ppvTarget); | 
|  | HRESULT Cancel (); | 
|  | }; | 
|  | cpp_quote("#endif") | 
|  | cpp_quote("") | 
|  | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") | 
|  | typedef [v1_enum] enum PrintDocumentPackageCompletion { | 
|  | PrintDocumentPackageCompletion_InProgress = 0, | 
|  | PrintDocumentPackageCompletion_Completed, | 
|  | PrintDocumentPackageCompletion_Canceled, | 
|  | PrintDocumentPackageCompletion_Failed | 
|  | } PrintDocumentPackageCompletion; | 
|  |  | 
|  | typedef struct { | 
|  | UINT32 JobId; | 
|  | INT32 CurrentDocument; | 
|  | INT32 CurrentPage; | 
|  | INT32 CurrentPageTotal; | 
|  | PrintDocumentPackageCompletion Completion; | 
|  | HRESULT PackageStatus; | 
|  | } PrintDocumentPackageStatus; | 
|  |  | 
|  | [object, uuid (ed90c8ad-5c34-4d05-a1ec-0e8a9b3ad7af), dual, nonextensible] | 
|  | interface IPrintDocumentPackageStatusEvent : IDispatch { | 
|  | [id (1)] HRESULT PackageStatusUpdated ([in] PrintDocumentPackageStatus *packageStatus); | 
|  | }; | 
|  |  | 
|  | [object, uuid (d2959bf7-b31b-4a3d-9600-712eb1335ba4)] | 
|  | interface IPrintDocumentPackageTargetFactory : IUnknown { | 
|  | HRESULT CreateDocumentPackageTargetForPrintJob ([in, string] LPCWSTR printerName,[in, string] LPCWSTR jobName,[in] IStream *jobOutputStream,[in] IStream *jobPrintTicketStream,[out] IPrintDocumentPackageTarget **docPackageTarget); | 
|  | }; | 
|  | cpp_quote("#endif") | 
|  |  | 
|  | [uuid (410d76f7-8bb5-4a7d-9d37-9c71b1b14d14), version (1.0)] | 
|  | library PrintDocumentTargetLib { | 
|  | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)") | 
|  | interface IPrintDocumentPackageTarget; | 
|  | cpp_quote("#endif") | 
|  | cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)") | 
|  | interface IPrintDocumentPackageStatusEvent; | 
|  | interface IPrintDocumentPackageTargetFactory; | 
|  |  | 
|  | [uuid (4842669e-9947-46ea-8ba2-d8cce432c2ca), noncreatable] | 
|  | coclass PrintDocumentPackageTarget { | 
|  | [default] interface IPrintDocumentPackageTarget; | 
|  | [source] dispinterface IPrintDocumentPackageStatusEvent; | 
|  | }; | 
|  |  | 
|  | [uuid (348ef17d-6c81-4982-92b4-ee188a43867a)] | 
|  | coclass PrintDocumentPackageTargetFactory { | 
|  | [default] interface IPrintDocumentPackageTargetFactory; | 
|  | }; | 
|  | cpp_quote("#endif") | 
|  | }; | 
|  |  | 
|  | cpp_quote("#endif") |