1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef _INC_MXDC
7#define _INC_MXDC
8#if (_WIN32_WINNT >= 0x0600)
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13typedef struct tagMxdcEscapeHeader {
14  ULONG cbInput;
15  ULONG cbOutput;
16  ULONG opCode;
17} MXDC_ESCAPE_HEADER_T, *P_MXDC_ESCAPE_HEADER_T;
18
19typedef struct _tagMxdcGetFileNameData {
20  ULONG   cbOutput;
21  wchar_t wszData[1];
22} MXDC_GET_FILENAME_DATA_T, *P_MXDC_GET_FILENAME_DATA_T;
23
24typedef struct tagMxdcPrintTicketData {
25  DWORD dwDataSize;
26  BYTE  bData[1];
27} MXDC_PRINTTICKET_DATA_T, *P_MXDC_PRINTTICKET_DATA_T;
28
29typedef struct tagMxdcPrintTicketEscape {
30  MXDC_ESCAPE_HEADER_T    mxdcEscape;
31  MXDC_PRINTTICKET_DATA_T printTicketData;
32} MXDC_PRINTTICKET_ESCAPE_T, *P_MXDC_PRINTTICKET_ESCAPE_T;
33
34typedef struct tagMxdcS0PageData {
35  DWORD dwSize;
36  BYTE  bData[1];
37} MXDC_S0PAGE_DATA_T, *P_MXDC_S0PAGE_DATA_T;
38
39typedef struct tagMxdcS0PagePassthroughEscape {
40  MXDC_ESCAPE_HEADER_T mxdcEscape;
41  MXDC_S0PAGE_DATA_T   xpsS0PageData;
42} MXDC_S0PAGE_PASSTHROUGH_ESCAPE_T, *P_MXDC_S0PAGE_PASSTHROUGH_ESCAPE_T;
43
44typedef struct tagMxdcXpsS0PageResource {
45  DWORD dwSize;
46  DWORD dwResourceType;
47  BYTE  szUri[MAX_PATH];
48  DWORD dwDataSize;
49  BYTE  bData[1];
50} MXDC_XPS_S0PAGE_RESOURCE_T, *P_MXDC_XPS_S0PAGE_RESOURCE_T;
51
52typedef struct tagMxdcS0PageResourceEscape {
53  MXDC_ESCAPE_HEADER_T       mxdcEscape;
54  MXDC_XPS_S0PAGE_RESOURCE_T xpsS0PageResourcePassthrough;
55} MXDC_S0PAGE_RESOURCE_ESCAPE_T, *P_MXDC_S0PAGE_RESOURCE_ESCAPE_T;
56
57typedef enum tagMxdcS0PageEnums {
58  MXDC_RESOURCE_TTF,
59  MXDC_RESOURCE_JPEG,
60  MXDC_RESOURCE_PNG,
61  MXDC_RESOURCE_TIFF,
62  MXDC_RESOURCE_WDP,
63  MXDC_RESOURCE_DICTIONARY,
64  MXDC_RESOURCE_ICC_PROFILE,
65  MXDC_RESOURCE_JPEG_THUMBNAIL,
66  MXDC_RESOURCE_PNG_THUMBNAIL,
67  MXDC_RESOURCE_MAX
68} MXDC_S0_PAGE_ENUMS;
69
70#ifdef __cplusplus
71}
72#endif
73#endif /*(_WIN32_WINNT >= 0x0600)*/
74
75#endif /*_INC_MXDC*/
76