| Index: printing/backend/win_helper.h
|
| ===================================================================
|
| --- printing/backend/win_helper.h (revision 74874)
|
| +++ printing/backend/win_helper.h (working copy)
|
| @@ -9,6 +9,7 @@
|
| #include <objidl.h>
|
| #include <winspool.h>
|
| #include <prntvpt.h>
|
| +#include <xpsprint.h>
|
|
|
| #include "base/string16.h"
|
|
|
| @@ -70,6 +71,30 @@
|
| bool initialized_;
|
| };
|
|
|
| +// Wrapper class to wrap the XPS Print APIs (these are different from the PTxxx
|
| +// which deal with the XML Print Schema). This is needed because these
|
| +// APIs are only available on Windows 7 and higher.
|
| +class XPSPrintModule {
|
| + public:
|
| + // All the other methods can ONLY be called after a successful call to Init.
|
| + // Init can be called many times and by multiple threads.
|
| + static bool Init();
|
| + static HRESULT StartXpsPrintJob(
|
| + const LPCWSTR printer_name,
|
| + const LPCWSTR job_name,
|
| + const LPCWSTR output_file_name,
|
| + HANDLE progress_event,
|
| + HANDLE completion_event,
|
| + UINT8 *printable_pages_on,
|
| + UINT32 printable_pages_on_count,
|
| + IXpsPrintJob **xps_print_job,
|
| + IXpsPrintJobStream **document_stream,
|
| + IXpsPrintJobStream **print_ticket_stream);
|
| + private:
|
| + XPSPrintModule() { }
|
| + static bool InitImpl();
|
| +};
|
| +
|
| } // namespace printing
|
|
|
| #endif // PRINTING_BACKEND_WIN_HELPER_H_
|
|
|