1 | /*
|
---|
2 | * winddi.h
|
---|
3 | *
|
---|
4 | * GDI device driver interface
|
---|
5 | *
|
---|
6 | * This file is part of the w32api package.
|
---|
7 | *
|
---|
8 | * Contributors:
|
---|
9 | * Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
|
---|
10 | *
|
---|
11 | * THIS SOFTWARE IS NOT COPYRIGHTED
|
---|
12 | *
|
---|
13 | * This source code is offered for use in the public domain. You may
|
---|
14 | * use, modify or distribute it freely.
|
---|
15 | *
|
---|
16 | * This code is distributed in the hope that it will be useful but
|
---|
17 | * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
|
---|
18 | * DISCLAIMED. This includes but is not limited to warranties of
|
---|
19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
---|
20 | *
|
---|
21 | */
|
---|
22 |
|
---|
23 | #ifndef __WINDDI_H
|
---|
24 | #define __WINDDI_H
|
---|
25 |
|
---|
26 | #if __GNUC__ >=3
|
---|
27 | #pragma GCC system_header
|
---|
28 | #endif
|
---|
29 |
|
---|
30 | #ifdef __VIDEO_H
|
---|
31 | #error video.h cannot be included with winddi.h
|
---|
32 | #else
|
---|
33 |
|
---|
34 | #ifdef __cplusplus
|
---|
35 | extern "C" {
|
---|
36 | #endif
|
---|
37 |
|
---|
38 | #include "ntddk.h"
|
---|
39 | #include <wingdi.h>
|
---|
40 |
|
---|
41 | #ifndef __DD_INCLUDED__
|
---|
42 | /* FIXME: Some DirectDraw structures not added yet */
|
---|
43 | typedef ULONG_PTR FLATPTR;
|
---|
44 | typedef struct _DD_SURFACECALLBACKS {
|
---|
45 | } DD_SURFACECALLBACKS, *PDD_SURFACECALLBACKS;
|
---|
46 | typedef struct _DD_PALETTECALLBACKS {
|
---|
47 | } DD_PALETTECALLBACKS, *PDD_PALETTECALLBACKS;
|
---|
48 | typedef struct _DD_CALLBACKS {
|
---|
49 | } DD_CALLBACKS, *PDD_CALLBACKS;
|
---|
50 | typedef struct _DD_HALINFO {
|
---|
51 | } DD_HALINFO, *PDD_HALINFO;
|
---|
52 | typedef struct _VIDEOMEMORY {
|
---|
53 | } VIDEOMEMORY, *LPVIDEOMEMORY;
|
---|
54 | typedef struct _DD_DIRECTDRAW_GLOBAL {
|
---|
55 | } DD_DIRECTDRAW_GLOBAL, *LPDD_DIRECTDRAW_GLOBAL;
|
---|
56 | typedef struct _DD_SURFACE_LOCAL {
|
---|
57 | } DD_SURFACE_LOCAL, *PDD_SURFACE_LOCAL, *LPDD_SURFACE_LOCAL;
|
---|
58 | #endif
|
---|
59 |
|
---|
60 | #ifndef __DDRAWI_INCLUDED__
|
---|
61 | typedef PVOID LPVIDMEM;
|
---|
62 | #endif
|
---|
63 |
|
---|
64 | #if !defined(__DD_INCLUDED__) && !defined(__DDRAWI_INCLUDED__)
|
---|
65 | typedef struct _DDSCAPS {
|
---|
66 | } DDSCAPS, *PDDSCAPS;
|
---|
67 | typedef struct _DDSCAPSEX {
|
---|
68 | } DDSCAPSEX, *PDDSCAPSEX;
|
---|
69 | typedef PVOID LPVMEMHEAP;
|
---|
70 | #endif
|
---|
71 |
|
---|
72 | #if defined(_WIN32K_)
|
---|
73 | #define WIN32KAPI DECL_EXPORT
|
---|
74 | #else
|
---|
75 | #define WIN32KAPI DECL_IMPORT
|
---|
76 | #endif
|
---|
77 |
|
---|
78 | #define DDI_DRIVER_VERSION_NT4 0x00020000
|
---|
79 | #define DDI_DRIVER_VERSION_SP3 0x00020003
|
---|
80 | #define DDI_DRIVER_VERSION_NT5 0x00030000
|
---|
81 | #define DDI_DRIVER_VERSION_NT5_01 0x00030100
|
---|
82 |
|
---|
83 | #define GDI_DRIVER_VERSION 0x4000
|
---|
84 |
|
---|
85 | #ifdef _X86_
|
---|
86 |
|
---|
87 | typedef DWORD FLOATL;
|
---|
88 |
|
---|
89 | #else /* !_X86_ */
|
---|
90 |
|
---|
91 | typedef FLOAT FLOATL;
|
---|
92 |
|
---|
93 | #endif
|
---|
94 |
|
---|
95 | typedef SHORT FWORD;
|
---|
96 | typedef LONG LDECI4;
|
---|
97 | typedef ULONG IDENT;
|
---|
98 |
|
---|
99 | typedef ULONG_PTR HFF;
|
---|
100 | typedef ULONG_PTR HFC;
|
---|
101 |
|
---|
102 | typedef LONG PTRDIFF;
|
---|
103 | typedef PTRDIFF *PPTRDIFF;
|
---|
104 | typedef LONG FIX;
|
---|
105 | typedef FIX *PFIX;
|
---|
106 | typedef ULONG ROP4;
|
---|
107 | typedef ULONG MIX;
|
---|
108 | typedef ULONG HGLYPH;
|
---|
109 | typedef HGLYPH *PHGLYPH;
|
---|
110 |
|
---|
111 | typedef LONG_PTR (DDKAPI *PFN)();
|
---|
112 |
|
---|
113 | DECLARE_HANDLE(HBM);
|
---|
114 | DECLARE_HANDLE(HDEV);
|
---|
115 | DECLARE_HANDLE(HSURF);
|
---|
116 | DECLARE_HANDLE(DHSURF);
|
---|
117 | DECLARE_HANDLE(DHPDEV);
|
---|
118 | DECLARE_HANDLE(HDRVOBJ);
|
---|
119 |
|
---|
120 |
|
---|
121 | #define GDI_DRIVER_VERSION 0x4000
|
---|
122 |
|
---|
123 | typedef struct _ENG_EVENT *PEVENT;
|
---|
124 |
|
---|
125 | #define OPENGL_CMD 4352
|
---|
126 | #define OPENGL_GETINFO 4353
|
---|
127 | #define WNDOBJ_SETUP 4354
|
---|
128 |
|
---|
129 | #define FD_ERROR 0xFFFFFFFF
|
---|
130 | #define DDI_ERROR 0xFFFFFFFF
|
---|
131 |
|
---|
132 | #define HFF_INVALID ((HFF) 0)
|
---|
133 | #define HFC_INVALID ((HFC) 0)
|
---|
134 | #define HGLYPH_INVALID ((HGLYPH) -1)
|
---|
135 |
|
---|
136 | #define FP_ALTERNATEMODE 1
|
---|
137 | #define FP_WINDINGMODE 2
|
---|
138 |
|
---|
139 | #define DN_ACCELERATION_LEVEL 1
|
---|
140 | #define DN_DEVICE_ORIGIN 2
|
---|
141 | #define DN_SLEEP_MODE 3
|
---|
142 | #define DN_DRAWING_BEGIN 4
|
---|
143 |
|
---|
144 | #define DCR_SOLID 0
|
---|
145 | #define DCR_DRIVER 1
|
---|
146 | #define DCR_HALFTONE 2
|
---|
147 |
|
---|
148 | #define GX_IDENTITY 0
|
---|
149 | #define GX_OFFSET 1
|
---|
150 | #define GX_SCALE 2
|
---|
151 | #define GX_GENERAL 3
|
---|
152 |
|
---|
153 | typedef struct _POINTE {
|
---|
154 | FLOATL x;
|
---|
155 | FLOATL y;
|
---|
156 | } POINTE, *PPOINTE;
|
---|
157 |
|
---|
158 | typedef union _FLOAT_LONG {
|
---|
159 | FLOATL e;
|
---|
160 | LONG l;
|
---|
161 | } FLOAT_LONG, *PFLOAT_LONG;
|
---|
162 |
|
---|
163 | typedef struct _POINTFIX {
|
---|
164 | FIX x;
|
---|
165 | FIX y;
|
---|
166 | } POINTFIX, *PPOINTFIX;
|
---|
167 |
|
---|
168 | typedef struct _RECTFX {
|
---|
169 | FIX xLeft;
|
---|
170 | FIX yTop;
|
---|
171 | FIX xRight;
|
---|
172 | FIX yBottom;
|
---|
173 | } RECTFX, *PRECTFX;
|
---|
174 |
|
---|
175 | typedef struct _POINTQF {
|
---|
176 | LARGE_INTEGER x;
|
---|
177 | LARGE_INTEGER y;
|
---|
178 | } POINTQF, *PPOINTQF;
|
---|
179 |
|
---|
180 |
|
---|
181 | typedef struct _BLENDOBJ {
|
---|
182 | BLENDFUNCTION BlendFunction;
|
---|
183 | } BLENDOBJ,*PBLENDOBJ;
|
---|
184 |
|
---|
185 | /* BRUSHOBJ.flColorType */
|
---|
186 | #define BR_DEVICE_ICM 0x01
|
---|
187 | #define BR_HOST_ICM 0x02
|
---|
188 | #define BR_CMYKCOLOR 0x04
|
---|
189 | #define BR_ORIGCOLOR 0x08
|
---|
190 |
|
---|
191 | typedef struct _BRUSHOBJ {
|
---|
192 | ULONG iSolidColor;
|
---|
193 | PVOID pvRbrush;
|
---|
194 | FLONG flColorType;
|
---|
195 | } BRUSHOBJ;
|
---|
196 |
|
---|
197 | typedef struct _CIECHROMA {
|
---|
198 | LDECI4 x;
|
---|
199 | LDECI4 y;
|
---|
200 | LDECI4 Y;
|
---|
201 | } CIECHROMA;
|
---|
202 |
|
---|
203 | typedef struct _RUN {
|
---|
204 | LONG iStart;
|
---|
205 | LONG iStop;
|
---|
206 | } RUN, *PRUN;
|
---|
207 |
|
---|
208 | typedef struct _CLIPLINE {
|
---|
209 | POINTFIX ptfxA;
|
---|
210 | POINTFIX ptfxB;
|
---|
211 | LONG lStyleState;
|
---|
212 | ULONG c;
|
---|
213 | RUN arun[1];
|
---|
214 | } CLIPLINE, *PCLIPLINE;
|
---|
215 |
|
---|
216 | /* CLIPOBJ.iDComplexity constants */
|
---|
217 | #define DC_TRIVIAL 0
|
---|
218 | #define DC_RECT 1
|
---|
219 | #define DC_COMPLEX 3
|
---|
220 |
|
---|
221 | /* CLIPOBJ.iFComplexity constants */
|
---|
222 | #define FC_RECT 1
|
---|
223 | #define FC_RECT4 2
|
---|
224 | #define FC_COMPLEX 3
|
---|
225 |
|
---|
226 | /* CLIPOBJ.iMode constants */
|
---|
227 | #define TC_RECTANGLES 0
|
---|
228 | #define TC_PATHOBJ 2
|
---|
229 |
|
---|
230 | /* CLIPOBJ.fjOptions constants */
|
---|
231 | #define OC_BANK_CLIP 1
|
---|
232 |
|
---|
233 | typedef struct _CLIPOBJ {
|
---|
234 | ULONG iUniq;
|
---|
235 | RECTL rclBounds;
|
---|
236 | BYTE iDComplexity;
|
---|
237 | BYTE iFComplexity;
|
---|
238 | BYTE iMode;
|
---|
239 | BYTE fjOptions;
|
---|
240 | } CLIPOBJ;
|
---|
241 |
|
---|
242 | typedef struct _COLORINFO {
|
---|
243 | CIECHROMA Red;
|
---|
244 | CIECHROMA Green;
|
---|
245 | CIECHROMA Blue;
|
---|
246 | CIECHROMA Cyan;
|
---|
247 | CIECHROMA Magenta;
|
---|
248 | CIECHROMA Yellow;
|
---|
249 | CIECHROMA AlignmentWhite;
|
---|
250 | LDECI4 RedGamma;
|
---|
251 | LDECI4 GreenGamma;
|
---|
252 | LDECI4 BlueGamma;
|
---|
253 | LDECI4 MagentaInCyanDye;
|
---|
254 | LDECI4 YellowInCyanDye;
|
---|
255 | LDECI4 CyanInMagentaDye;
|
---|
256 | LDECI4 YellowInMagentaDye;
|
---|
257 | LDECI4 CyanInYellowDye;
|
---|
258 | LDECI4 MagentaInYellowDye;
|
---|
259 | } COLORINFO, *PCOLORINFO;
|
---|
260 |
|
---|
261 | /* DEVHTADJDATA.DeviceFlags constants */
|
---|
262 | #define DEVHTADJF_COLOR_DEVICE 0x00000001
|
---|
263 | #define DEVHTADJF_ADDITIVE_DEVICE 0x00000002
|
---|
264 |
|
---|
265 | typedef struct _DEVHTINFO {
|
---|
266 | DWORD HTFlags;
|
---|
267 | DWORD HTPatternSize;
|
---|
268 | DWORD DevPelsDPI;
|
---|
269 | COLORINFO ColorInfo;
|
---|
270 | } DEVHTINFO, *PDEVHTINFO;
|
---|
271 |
|
---|
272 | typedef struct _DEVHTADJDATA {
|
---|
273 | DWORD DeviceFlags;
|
---|
274 | DWORD DeviceXDPI;
|
---|
275 | DWORD DeviceYDPI;
|
---|
276 | PDEVHTINFO pDefHTInfo;
|
---|
277 | PDEVHTINFO pAdjHTInfo;
|
---|
278 | } DEVHTADJDATA, *PDEVHTADJDATA;
|
---|
279 |
|
---|
280 | /* DEVINFO.flGraphicsCaps flags */
|
---|
281 | #define GCAPS_BEZIERS 0x00000001
|
---|
282 | #define GCAPS_GEOMETRICWIDE 0x00000002
|
---|
283 | #define GCAPS_ALTERNATEFILL 0x00000004
|
---|
284 | #define GCAPS_WINDINGFILL 0x00000008
|
---|
285 | #define GCAPS_HALFTONE 0x00000010
|
---|
286 | #define GCAPS_COLOR_DITHER 0x00000020
|
---|
287 | #define GCAPS_HORIZSTRIKE 0x00000040
|
---|
288 | #define GCAPS_VERTSTRIKE 0x00000080
|
---|
289 | #define GCAPS_OPAQUERECT 0x00000100
|
---|
290 | #define GCAPS_VECTORFONT 0x00000200
|
---|
291 | #define GCAPS_MONO_DITHER 0x00000400
|
---|
292 | #define GCAPS_ASYNCCHANGE 0x00000800
|
---|
293 | #define GCAPS_ASYNCMOVE 0x00001000
|
---|
294 | #define GCAPS_DONTJOURNAL 0x00002000
|
---|
295 | #define GCAPS_DIRECTDRAW 0x00004000
|
---|
296 | #define GCAPS_ARBRUSHOPAQUE 0x00008000
|
---|
297 | #define GCAPS_PANNING 0x00010000
|
---|
298 | #define GCAPS_HIGHRESTEXT 0x00040000
|
---|
299 | #define GCAPS_PALMANAGED 0x00080000
|
---|
300 | #define GCAPS_DITHERONREALIZE 0x00200000
|
---|
301 | #define GCAPS_NO64BITMEMACCESS 0x00400000
|
---|
302 | #define GCAPS_FORCEDITHER 0x00800000
|
---|
303 | #define GCAPS_GRAY16 0x01000000
|
---|
304 | #define GCAPS_ICM 0x02000000
|
---|
305 | #define GCAPS_CMYKCOLOR 0x04000000
|
---|
306 | #define GCAPS_LAYERED 0x08000000
|
---|
307 | #define GCAPS_ARBRUSHTEXT 0x10000000
|
---|
308 | #define GCAPS_SCREENPRECISION 0x20000000
|
---|
309 | #define GCAPS_FONT_RASTERIZER 0x40000000
|
---|
310 | #define GCAPS_NUP 0x80000000
|
---|
311 |
|
---|
312 | /* DEVINFO.iDitherFormat constants */
|
---|
313 | #define BMF_1BPP 1L
|
---|
314 | #define BMF_4BPP 2L
|
---|
315 | #define BMF_8BPP 3L
|
---|
316 | #define BMF_16BPP 4L
|
---|
317 | #define BMF_24BPP 5L
|
---|
318 | #define BMF_32BPP 6L
|
---|
319 | #define BMF_4RLE 7L
|
---|
320 | #define BMF_8RLE 8L
|
---|
321 | #define BMF_JPEG 9L
|
---|
322 | #define BMF_PNG 10L
|
---|
323 |
|
---|
324 | /* DEVINFO.flGraphicsCaps2 flags */
|
---|
325 | #define GCAPS2_JPEGSRC 0x00000001
|
---|
326 | #define GCAPS2_xxxx 0x00000002
|
---|
327 | #define GCAPS2_PNGSRC 0x00000008
|
---|
328 | #define GCAPS2_CHANGEGAMMARAMP 0x00000010
|
---|
329 | #define GCAPS2_ALPHACURSOR 0x00000020
|
---|
330 | #define GCAPS2_SYNCFLUSH 0x00000040
|
---|
331 | #define GCAPS2_SYNCTIMER 0x00000080
|
---|
332 | #define GCAPS2_ICD_MULTIMON 0x00000100
|
---|
333 | #define GCAPS2_MOUSETRAILS 0x00000200
|
---|
334 | #define GCAPS2_RESERVED1 0x00000400
|
---|
335 |
|
---|
336 | typedef struct _DEVINFO {
|
---|
337 | FLONG flGraphicsCaps;
|
---|
338 | LOGFONTW lfDefaultFont;
|
---|
339 | LOGFONTW lfAnsiVarFont;
|
---|
340 | LOGFONTW lfAnsiFixFont;
|
---|
341 | ULONG cFonts;
|
---|
342 | ULONG iDitherFormat;
|
---|
343 | USHORT cxDither;
|
---|
344 | USHORT cyDither;
|
---|
345 | HPALETTE hpalDefault;
|
---|
346 | FLONG flGraphicsCaps2;
|
---|
347 | } DEVINFO, *PDEVINFO;
|
---|
348 |
|
---|
349 | typedef struct _DRIVEROBJ *PDRIVEROBJ;
|
---|
350 |
|
---|
351 | typedef BOOL DDKAPI CALLBACK
|
---|
352 | (*FREEOBJPROC)(
|
---|
353 | IN PDRIVEROBJ pDriverObj);
|
---|
354 |
|
---|
355 | typedef struct _DRIVEROBJ {
|
---|
356 | PVOID pvObj;
|
---|
357 | FREEOBJPROC pFreeProc;
|
---|
358 | HDEV hdev;
|
---|
359 | DHPDEV dhpdev;
|
---|
360 | } DRIVEROBJ;
|
---|
361 |
|
---|
362 | /* DRVFN.iFunc constants */
|
---|
363 | #define INDEX_DrvEnablePDEV 0L
|
---|
364 | #define INDEX_DrvCompletePDEV 1L
|
---|
365 | #define INDEX_DrvDisablePDEV 2L
|
---|
366 | #define INDEX_DrvEnableSurface 3L
|
---|
367 | #define INDEX_DrvDisableSurface 4L
|
---|
368 | #define INDEX_DrvAssertMode 5L
|
---|
369 | #define INDEX_DrvOffset 6L
|
---|
370 | #define INDEX_DrvResetPDEV 7L
|
---|
371 | #define INDEX_DrvDisableDriver 8L
|
---|
372 | #define INDEX_DrvCreateDeviceBitmap 10L
|
---|
373 | #define INDEX_DrvDeleteDeviceBitmap 11L
|
---|
374 | #define INDEX_DrvRealizeBrush 12L
|
---|
375 | #define INDEX_DrvDitherColor 13L
|
---|
376 | #define INDEX_DrvStrokePath 14L
|
---|
377 | #define INDEX_DrvFillPath 15L
|
---|
378 | #define INDEX_DrvStrokeAndFillPath 16L
|
---|
379 | #define INDEX_DrvPaint 17L
|
---|
380 | #define INDEX_DrvBitBlt 18L
|
---|
381 | #define INDEX_DrvCopyBits 19L
|
---|
382 | #define INDEX_DrvStretchBlt 20L
|
---|
383 | #define INDEX_DrvSetPalette 22L
|
---|
384 | #define INDEX_DrvTextOut 23L
|
---|
385 | #define INDEX_DrvEscape 24L
|
---|
386 | #define INDEX_DrvDrawEscape 25L
|
---|
387 | #define INDEX_DrvQueryFont 26L
|
---|
388 | #define INDEX_DrvQueryFontTree 27L
|
---|
389 | #define INDEX_DrvQueryFontData 28L
|
---|
390 | #define INDEX_DrvSetPointerShape 29L
|
---|
391 | #define INDEX_DrvMovePointer 30L
|
---|
392 | #define INDEX_DrvLineTo 31L
|
---|
393 | #define INDEX_DrvSendPage 32L
|
---|
394 | #define INDEX_DrvStartPage 33L
|
---|
395 | #define INDEX_DrvEndDoc 34L
|
---|
396 | #define INDEX_DrvStartDoc 35L
|
---|
397 | #define INDEX_DrvGetGlyphMode 37L
|
---|
398 | #define INDEX_DrvSynchronize 38L
|
---|
399 | #define INDEX_DrvSaveScreenBits 40L
|
---|
400 | #define INDEX_DrvGetModes 41L
|
---|
401 | #define INDEX_DrvFree 42L
|
---|
402 | #define INDEX_DrvDestroyFont 43L
|
---|
403 | #define INDEX_DrvQueryFontCaps 44L
|
---|
404 | #define INDEX_DrvLoadFontFile 45L
|
---|
405 | #define INDEX_DrvUnloadFontFile 46L
|
---|
406 | #define INDEX_DrvFontManagement 47L
|
---|
407 | #define INDEX_DrvQueryTrueTypeTable 48L
|
---|
408 | #define INDEX_DrvQueryTrueTypeOutline 49L
|
---|
409 | #define INDEX_DrvGetTrueTypeFile 50L
|
---|
410 | #define INDEX_DrvQueryFontFile 51L
|
---|
411 | #define INDEX_DrvMovePanning 52L
|
---|
412 | #define INDEX_DrvQueryAdvanceWidths 53L
|
---|
413 | #define INDEX_DrvSetPixelFormat 54L
|
---|
414 | #define INDEX_DrvDescribePixelFormat 55L
|
---|
415 | #define INDEX_DrvSwapBuffers 56L
|
---|
416 | #define INDEX_DrvStartBanding 57L
|
---|
417 | #define INDEX_DrvNextBand 58L
|
---|
418 | #define INDEX_DrvGetDirectDrawInfo 59L
|
---|
419 | #define INDEX_DrvEnableDirectDraw 60L
|
---|
420 | #define INDEX_DrvDisableDirectDraw 61L
|
---|
421 | #define INDEX_DrvQuerySpoolType 62L
|
---|
422 | #define INDEX_DrvIcmCreateColorTransform 64L
|
---|
423 | #define INDEX_DrvIcmDeleteColorTransform 65L
|
---|
424 | #define INDEX_DrvIcmCheckBitmapBits 66L
|
---|
425 | #define INDEX_DrvIcmSetDeviceGammaRamp 67L
|
---|
426 | #define INDEX_DrvGradientFill 68L
|
---|
427 | #define INDEX_DrvStretchBltROP 69L
|
---|
428 | #define INDEX_DrvPlgBlt 70L
|
---|
429 | #define INDEX_DrvAlphaBlend 71L
|
---|
430 | #define INDEX_DrvSynthesizeFont 72L
|
---|
431 | #define INDEX_DrvGetSynthesizedFontFiles 73L
|
---|
432 | #define INDEX_DrvTransparentBlt 74L
|
---|
433 | #define INDEX_DrvQueryPerBandInfo 75L
|
---|
434 | #define INDEX_DrvQueryDeviceSupport 76L
|
---|
435 | #define INDEX_DrvReserved1 77L
|
---|
436 | #define INDEX_DrvReserved2 78L
|
---|
437 | #define INDEX_DrvReserved3 79L
|
---|
438 | #define INDEX_DrvReserved4 80L
|
---|
439 | #define INDEX_DrvReserved5 81L
|
---|
440 | #define INDEX_DrvReserved6 82L
|
---|
441 | #define INDEX_DrvReserved7 83L
|
---|
442 | #define INDEX_DrvReserved8 84L
|
---|
443 | #define INDEX_DrvDeriveSurface 85L
|
---|
444 | #define INDEX_DrvQueryGlyphAttrs 86L
|
---|
445 | #define INDEX_DrvNotify 87L
|
---|
446 | #define INDEX_DrvSynchronizeSurface 88L
|
---|
447 | #define INDEX_DrvResetDevice 89L
|
---|
448 | #define INDEX_DrvReserved9 90L
|
---|
449 | #define INDEX_DrvReserved10 91L
|
---|
450 | #define INDEX_DrvReserved11 92L
|
---|
451 | #define INDEX_LAST 93L
|
---|
452 |
|
---|
453 | typedef struct _DRVFN {
|
---|
454 | ULONG iFunc;
|
---|
455 | PFN pfn;
|
---|
456 | } DRVFN, *PDRVFN;
|
---|
457 |
|
---|
458 | /* DRVENABLEDATA.iDriverVersion constants */
|
---|
459 | #define DDI_DRIVER_VERSION_NT4 0x00020000
|
---|
460 | #define DDI_DRIVER_VERSION_SP3 0x00020003
|
---|
461 | #define DDI_DRIVER_VERSION_NT5 0x00030000
|
---|
462 | #define DDI_DRIVER_VERSION_NT5_01 0x00030100
|
---|
463 |
|
---|
464 | typedef struct _DRVENABLEDATA {
|
---|
465 | ULONG iDriverVersion;
|
---|
466 | ULONG c;
|
---|
467 | DRVFN *pdrvfn;
|
---|
468 | } DRVENABLEDATA, *PDRVENABLEDATA;
|
---|
469 |
|
---|
470 | DECLARE_HANDLE(HSEMAPHORE);
|
---|
471 |
|
---|
472 | typedef struct {
|
---|
473 | DWORD nSize;
|
---|
474 | HDC hdc;
|
---|
475 | PBYTE pvEMF;
|
---|
476 | PBYTE pvCurrentRecord;
|
---|
477 | } EMFINFO, *PEMFINFO;
|
---|
478 |
|
---|
479 | typedef struct _ENGSAFESEMAPHORE {
|
---|
480 | HSEMAPHORE hsem;
|
---|
481 | LONG lCount;
|
---|
482 | } ENGSAFESEMAPHORE;
|
---|
483 |
|
---|
484 | typedef struct _ENG_TIME_FIELDS {
|
---|
485 | USHORT usYear;
|
---|
486 | USHORT usMonth;
|
---|
487 | USHORT usDay;
|
---|
488 | USHORT usHour;
|
---|
489 | USHORT usMinute;
|
---|
490 | USHORT usSecond;
|
---|
491 | USHORT usMilliseconds;
|
---|
492 | USHORT usWeekday;
|
---|
493 | } ENG_TIME_FIELDS, *PENG_TIME_FIELDS;
|
---|
494 |
|
---|
495 | typedef struct _ENUMRECTS {
|
---|
496 | ULONG c;
|
---|
497 | RECTL arcl[1];
|
---|
498 | } ENUMRECTS;
|
---|
499 |
|
---|
500 | typedef struct _FD_XFORM {
|
---|
501 | FLOATL eXX;
|
---|
502 | FLOATL eXY;
|
---|
503 | FLOATL eYX;
|
---|
504 | FLOATL eYY;
|
---|
505 | } FD_XFORM, *PFD_XFORM;
|
---|
506 |
|
---|
507 | /* FD_DEVICEMETRICS.flRealizedType constants */
|
---|
508 | #define FDM_TYPE_BM_SIDE_CONST 0x00000001
|
---|
509 | #define FDM_TYPE_MAXEXT_EQUAL_BM_SIDE 0x00000002
|
---|
510 | #define FDM_TYPE_CHAR_INC_EQUAL_BM_BASE 0x00000004
|
---|
511 | #define FDM_TYPE_ZERO_BEARINGS 0x00000008
|
---|
512 | #define FDM_TYPE_CONST_BEARINGS 0x00000010
|
---|
513 |
|
---|
514 | typedef struct _FD_DEVICEMETRICS {
|
---|
515 | FLONG flRealizedType;
|
---|
516 | POINTE pteBase;
|
---|
517 | POINTE pteSide;
|
---|
518 | LONG lD;
|
---|
519 | FIX fxMaxAscender;
|
---|
520 | FIX fxMaxDescender;
|
---|
521 | POINTL ptlUnderline1;
|
---|
522 | POINTL ptlStrikeout;
|
---|
523 | POINTL ptlULThickness;
|
---|
524 | POINTL ptlSOThickness;
|
---|
525 | ULONG cxMax;
|
---|
526 | ULONG cyMax;
|
---|
527 | ULONG cjGlyphMax;
|
---|
528 | FD_XFORM fdxQuantized;
|
---|
529 | LONG lNonLinearExtLeading;
|
---|
530 | LONG lNonLinearIntLeading;
|
---|
531 | LONG lNonLinearMaxCharWidth;
|
---|
532 | LONG lNonLinearAvgCharWidth;
|
---|
533 | LONG lMinA;
|
---|
534 | LONG lMinC;
|
---|
535 | LONG lMinD;
|
---|
536 | LONG alReserved[1];
|
---|
537 | } FD_DEVICEMETRICS, *PFD_DEVICEMETRICS;
|
---|
538 |
|
---|
539 | /* FD_GLYPHATTR.iMode constants */
|
---|
540 | #define FO_ATTR_MODE_ROTATE 1
|
---|
541 |
|
---|
542 | typedef struct _FD_GLYPHATTR {
|
---|
543 | ULONG cjThis;
|
---|
544 | ULONG cGlyphs;
|
---|
545 | ULONG iMode;
|
---|
546 | BYTE aGlyphAttr[1];
|
---|
547 | } FD_GLYPHATTR, *PFD_GLYPHATTR;
|
---|
548 |
|
---|
549 | /* FD_GLYPHSET.flAccel */
|
---|
550 | #define GS_UNICODE_HANDLES 0x00000001
|
---|
551 | #define GS_8BIT_HANDLES 0x00000002
|
---|
552 | #define GS_16BIT_HANDLES 0x00000004
|
---|
553 |
|
---|
554 | typedef struct _WCRUN {
|
---|
555 | WCHAR wcLow;
|
---|
556 | USHORT cGlyphs;
|
---|
557 | HGLYPH *phg;
|
---|
558 | } WCRUN, *PWCRUN;
|
---|
559 |
|
---|
560 | typedef struct _FD_GLYPHSET {
|
---|
561 | ULONG cjThis;
|
---|
562 | FLONG flAccel;
|
---|
563 | ULONG cGlyphsSupported;
|
---|
564 | ULONG cRuns;
|
---|
565 | WCRUN awcrun[1];
|
---|
566 | } FD_GLYPHSET, *PFD_GLYPHSET;
|
---|
567 |
|
---|
568 | typedef struct _FD_KERNINGPAIR {
|
---|
569 | WCHAR wcFirst;
|
---|
570 | WCHAR wcSecond;
|
---|
571 | FWORD fwdKern;
|
---|
572 | } FD_KERNINGPAIR;
|
---|
573 |
|
---|
574 | typedef struct _FLOATOBJ
|
---|
575 | {
|
---|
576 | ULONG ul1;
|
---|
577 | ULONG ul2;
|
---|
578 | } FLOATOBJ, *PFLOATOBJ;
|
---|
579 |
|
---|
580 | typedef struct _FLOATOBJ_XFORM {
|
---|
581 | FLOATOBJ eM11;
|
---|
582 | FLOATOBJ eM12;
|
---|
583 | FLOATOBJ eM21;
|
---|
584 | FLOATOBJ eM22;
|
---|
585 | FLOATOBJ eDx;
|
---|
586 | FLOATOBJ eDy;
|
---|
587 | } FLOATOBJ_XFORM, *PFLOATOBJ_XFORM, FAR *LPFLOATOBJ_XFORM;
|
---|
588 |
|
---|
589 | /* FONTDIFF.fsSelection */
|
---|
590 | #define FM_SEL_ITALIC 0x0001
|
---|
591 | #define FM_SEL_UNDERSCORE 0x0002
|
---|
592 | #define FM_SEL_NEGATIVE 0x0004
|
---|
593 | #define FM_SEL_OUTLINED 0x0008
|
---|
594 | #define FM_SEL_STRIKEOUT 0x0010
|
---|
595 | #define FM_SEL_BOLD 0x0020
|
---|
596 | #define FM_SEL_REGULAR 0x0040
|
---|
597 |
|
---|
598 | typedef struct _FONTDIFF {
|
---|
599 | BYTE jReserved1;
|
---|
600 | BYTE jReserved2;
|
---|
601 | BYTE jReserved3;
|
---|
602 | BYTE bWeight;
|
---|
603 | USHORT usWinWeight;
|
---|
604 | FSHORT fsSelection;
|
---|
605 | FWORD fwdAveCharWidth;
|
---|
606 | FWORD fwdMaxCharInc;
|
---|
607 | POINTL ptlCaret;
|
---|
608 | } FONTDIFF;
|
---|
609 |
|
---|
610 | typedef struct _FONTSIM {
|
---|
611 | PTRDIFF dpBold;
|
---|
612 | PTRDIFF dpItalic;
|
---|
613 | PTRDIFF dpBoldItalic;
|
---|
614 | } FONTSIM;
|
---|
615 |
|
---|
616 | /* FONTINFO.flCaps constants */
|
---|
617 | #define FO_DEVICE_FONT 1L
|
---|
618 | #define FO_OUTLINE_CAPABLE 2L
|
---|
619 |
|
---|
620 | typedef struct _FONTINFO {
|
---|
621 | ULONG cjThis;
|
---|
622 | FLONG flCaps;
|
---|
623 | ULONG cGlyphsSupported;
|
---|
624 | ULONG cjMaxGlyph1;
|
---|
625 | ULONG cjMaxGlyph4;
|
---|
626 | ULONG cjMaxGlyph8;
|
---|
627 | ULONG cjMaxGlyph32;
|
---|
628 | } FONTINFO, *PFONTINFO;
|
---|
629 |
|
---|
630 | /* FONTOBJ.flFontType constants */
|
---|
631 | #define FO_TYPE_RASTER RASTER_FONTTYPE
|
---|
632 | #define FO_TYPE_DEVICE DEVICE_FONTTYPE
|
---|
633 | #define FO_TYPE_TRUETYPE TRUETYPE_FONTTYPE
|
---|
634 | #define FO_TYPE_OPENTYPE OPENTYPE_FONTTYPE
|
---|
635 |
|
---|
636 | #define FO_SIM_BOLD 0x00002000
|
---|
637 | #define FO_SIM_ITALIC 0x00004000
|
---|
638 | #define FO_EM_HEIGHT 0x00008000
|
---|
639 | #define FO_GRAY16 0x00010000
|
---|
640 | #define FO_NOGRAY16 0x00020000
|
---|
641 | #define FO_NOHINTS 0x00040000
|
---|
642 | #define FO_NO_CHOICE 0x00080000
|
---|
643 | #define FO_CFF 0x00100000
|
---|
644 | #define FO_POSTSCRIPT 0x00200000
|
---|
645 | #define FO_MULTIPLEMASTER 0x00400000
|
---|
646 | #define FO_VERT_FACE 0x00800000
|
---|
647 | #define FO_DBCS_FONT 0X01000000
|
---|
648 | #define FO_NOCLEARTYPE 0x02000000
|
---|
649 | #define FO_CLEARTYPE_X 0x10000000
|
---|
650 | #define FO_CLEARTYPE_Y 0x20000000
|
---|
651 |
|
---|
652 | typedef struct _FONTOBJ {
|
---|
653 | ULONG iUniq;
|
---|
654 | ULONG iFace;
|
---|
655 | ULONG cxMax;
|
---|
656 | FLONG flFontType;
|
---|
657 | ULONG_PTR iTTUniq;
|
---|
658 | ULONG_PTR iFile;
|
---|
659 | SIZE sizLogResPpi;
|
---|
660 | ULONG ulStyleSize;
|
---|
661 | PVOID pvConsumer;
|
---|
662 | PVOID pvProducer;
|
---|
663 | } FONTOBJ;
|
---|
664 |
|
---|
665 | typedef struct _GAMMARAMP {
|
---|
666 | WORD Red[256];
|
---|
667 | WORD Green[256];
|
---|
668 | WORD Blue[256];
|
---|
669 | } GAMMARAMP, *PGAMMARAMP;
|
---|
670 |
|
---|
671 | /* GDIINFO.ulPrimaryOrder constants */
|
---|
672 | #define PRIMARY_ORDER_ABC 0
|
---|
673 | #define PRIMARY_ORDER_ACB 1
|
---|
674 | #define PRIMARY_ORDER_BAC 2
|
---|
675 | #define PRIMARY_ORDER_BCA 3
|
---|
676 | #define PRIMARY_ORDER_CBA 4
|
---|
677 | #define PRIMARY_ORDER_CAB 5
|
---|
678 |
|
---|
679 | /* GDIINFO.ulHTPatternSize constants */
|
---|
680 | #define HT_PATSIZE_2x2 0
|
---|
681 | #define HT_PATSIZE_2x2_M 1
|
---|
682 | #define HT_PATSIZE_4x4 2
|
---|
683 | #define HT_PATSIZE_4x4_M 3
|
---|
684 | #define HT_PATSIZE_6x6 4
|
---|
685 | #define HT_PATSIZE_6x6_M 5
|
---|
686 | #define HT_PATSIZE_8x8 6
|
---|
687 | #define HT_PATSIZE_8x8_M 7
|
---|
688 | #define HT_PATSIZE_10x10 8
|
---|
689 | #define HT_PATSIZE_10x10_M 9
|
---|
690 | #define HT_PATSIZE_12x12 10
|
---|
691 | #define HT_PATSIZE_12x12_M 11
|
---|
692 | #define HT_PATSIZE_14x14 12
|
---|
693 | #define HT_PATSIZE_14x14_M 13
|
---|
694 | #define HT_PATSIZE_16x16 14
|
---|
695 | #define HT_PATSIZE_16x16_M 15
|
---|
696 | #define HT_PATSIZE_SUPERCELL 16
|
---|
697 | #define HT_PATSIZE_SUPERCELL_M 17
|
---|
698 | #define HT_PATSIZE_USER 18
|
---|
699 | #define HT_PATSIZE_MAX_INDEX HT_PATSIZE_USER
|
---|
700 | #define HT_PATSIZE_DEFAULT HT_PATSIZE_SUPERCELL_M
|
---|
701 | #define HT_USERPAT_CX_MIN 4
|
---|
702 | #define HT_USERPAT_CX_MAX 256
|
---|
703 | #define HT_USERPAT_CY_MIN 4
|
---|
704 | #define HT_USERPAT_CY_MAX 256
|
---|
705 |
|
---|
706 | /* GDIINFO.ulHTOutputFormat constants */
|
---|
707 | #define HT_FORMAT_1BPP 0
|
---|
708 | #define HT_FORMAT_4BPP 2
|
---|
709 | #define HT_FORMAT_4BPP_IRGB 3
|
---|
710 | #define HT_FORMAT_8BPP 4
|
---|
711 | #define HT_FORMAT_16BPP 5
|
---|
712 | #define HT_FORMAT_24BPP 6
|
---|
713 | #define HT_FORMAT_32BPP 7
|
---|
714 |
|
---|
715 | /* GDIINFO.flHTFlags */
|
---|
716 | #define HT_FLAG_SQUARE_DEVICE_PEL 0x00000001
|
---|
717 | #define HT_FLAG_HAS_BLACK_DYE 0x00000002
|
---|
718 | #define HT_FLAG_ADDITIVE_PRIMS 0x00000004
|
---|
719 | #define HT_FLAG_USE_8BPP_BITMASK 0x00000008
|
---|
720 | #define HT_FLAG_INK_HIGH_ABSORPTION 0x00000010
|
---|
721 | #define HT_FLAG_INK_ABSORPTION_INDICES 0x00000060
|
---|
722 | #define HT_FLAG_DO_DEVCLR_XFORM 0x00000080
|
---|
723 | #define HT_FLAG_OUTPUT_CMY 0x00000100
|
---|
724 | #define HT_FLAG_PRINT_DRAFT_MODE 0x00000200
|
---|
725 | #define HT_FLAG_INVERT_8BPP_BITMASK_IDX 0x00000400
|
---|
726 | #define HT_FLAG_8BPP_CMY332_MASK 0xFF000000
|
---|
727 |
|
---|
728 | #define MAKE_CMYMASK_BYTE(c,m,y) ((BYTE)(((BYTE)(c) & 0x07) << 5) \
|
---|
729 | |(BYTE)(((BYTE)(m) & 0x07) << 2) \
|
---|
730 | |(BYTE)((BYTE)(y) & 0x03))
|
---|
731 |
|
---|
732 | #define MAKE_CMY332_MASK(c,m,y) ((DWORD)(((DWORD)(c) & 0x07) << 29)\
|
---|
733 | |(DWORD)(((DWORD)(m) & 0x07) << 26)\
|
---|
734 | |(DWORD)(((DWORD)(y) & 0x03) << 24))
|
---|
735 |
|
---|
736 | /* GDIINFO.flHTFlags constants */
|
---|
737 | #define HT_FLAG_INK_ABSORPTION_IDX0 0x00000000
|
---|
738 | #define HT_FLAG_INK_ABSORPTION_IDX1 0x00000020
|
---|
739 | #define HT_FLAG_INK_ABSORPTION_IDX2 0x00000040
|
---|
740 | #define HT_FLAG_INK_ABSORPTION_IDX3 0x00000060
|
---|
741 |
|
---|
742 | #define HT_FLAG_HIGHEST_INK_ABSORPTION (HT_FLAG_INK_HIGH_ABSORPTION \
|
---|
743 | |HT_FLAG_INK_ABSORPTION_IDX3)
|
---|
744 | #define HT_FLAG_HIGHER_INK_ABSORPTION (HT_FLAG_INK_HIGH_ABSORPTION \
|
---|
745 | |HT_FLAG_INK_ABSORPTION_IDX2)
|
---|
746 | #define HT_FLAG_HIGH_INK_ABSORPTION (HT_FLAG_INK_HIGH_ABSORPTION \
|
---|
747 | |HT_FLAG_INK_ABSORPTION_IDX1)
|
---|
748 | #define HT_FLAG_NORMAL_INK_ABSORPTION HT_FLAG_INK_ABSORPTION_IDX0
|
---|
749 | #define HT_FLAG_LOW_INK_ABSORPTION HT_FLAG_INK_ABSORPTION_IDX1
|
---|
750 | #define HT_FLAG_LOWER_INK_ABSORPTION HT_FLAG_INK_ABSORPTION_IDX2
|
---|
751 | #define HT_FLAG_LOWEST_INK_ABSORPTION HT_FLAG_INK_ABSORPTION_IDX3
|
---|
752 |
|
---|
753 | #define HT_BITMASKPALRGB (DWORD)'0BGR'
|
---|
754 | #define HT_SET_BITMASKPAL2RGB(pPal) (*((LPDWORD)(pPal)) = HT_BITMASKPALRGB)
|
---|
755 | #define HT_IS_BITMASKPALRGB(pPal) (*((LPDWORD)(pPal)) == (DWORD)0)
|
---|
756 |
|
---|
757 | /* GDIINFO.ulPhysicalPixelCharacteristics constants */
|
---|
758 | #define PPC_DEFAULT 0x0
|
---|
759 | #define PPC_UNDEFINED 0x1
|
---|
760 | #define PPC_RGB_ORDER_VERTICAL_STRIPES 0x2
|
---|
761 | #define PPC_BGR_ORDER_VERTICAL_STRIPES 0x3
|
---|
762 | #define PPC_RGB_ORDER_HORIZONTAL_STRIPES 0x4
|
---|
763 | #define PPC_BGR_ORDER_HORIZONTAL_STRIPES 0x5
|
---|
764 |
|
---|
765 | #define PPG_DEFAULT 0
|
---|
766 | #define PPG_SRGB 1
|
---|
767 |
|
---|
768 | typedef struct _GDIINFO {
|
---|
769 | ULONG ulVersion;
|
---|
770 | ULONG ulTechnology;
|
---|
771 | ULONG ulHorzSize;
|
---|
772 | ULONG ulVertSize;
|
---|
773 | ULONG ulHorzRes;
|
---|
774 | ULONG ulVertRes;
|
---|
775 | ULONG cBitsPixel;
|
---|
776 | ULONG cPlanes;
|
---|
777 | ULONG ulNumColors;
|
---|
778 | ULONG flRaster;
|
---|
779 | ULONG ulLogPixelsX;
|
---|
780 | ULONG ulLogPixelsY;
|
---|
781 | ULONG flTextCaps;
|
---|
782 | ULONG ulDACRed;
|
---|
783 | ULONG ulDACGreen;
|
---|
784 | ULONG ulDACBlue;
|
---|
785 | ULONG ulAspectX;
|
---|
786 | ULONG ulAspectY;
|
---|
787 | ULONG ulAspectXY;
|
---|
788 | LONG xStyleStep;
|
---|
789 | LONG yStyleStep;
|
---|
790 | LONG denStyleStep;
|
---|
791 | POINTL ptlPhysOffset;
|
---|
792 | SIZEL szlPhysSize;
|
---|
793 | ULONG ulNumPalReg;
|
---|
794 | COLORINFO ciDevice;
|
---|
795 | ULONG ulDevicePelsDPI;
|
---|
796 | ULONG ulPrimaryOrder;
|
---|
797 | ULONG ulHTPatternSize;
|
---|
798 | ULONG ulHTOutputFormat;
|
---|
799 | ULONG flHTFlags;
|
---|
800 | ULONG ulVRefresh;
|
---|
801 | ULONG ulBltAlignment;
|
---|
802 | ULONG ulPanningHorzRes;
|
---|
803 | ULONG ulPanningVertRes;
|
---|
804 | ULONG xPanningAlignment;
|
---|
805 | ULONG yPanningAlignment;
|
---|
806 | ULONG cxHTPat;
|
---|
807 | ULONG cyHTPat;
|
---|
808 | LPBYTE pHTPatA;
|
---|
809 | LPBYTE pHTPatB;
|
---|
810 | LPBYTE pHTPatC;
|
---|
811 | ULONG flShadeBlend;
|
---|
812 | ULONG ulPhysicalPixelCharacteristics;
|
---|
813 | ULONG ulPhysicalPixelGamma;
|
---|
814 | } GDIINFO, *PGDIINFO;
|
---|
815 |
|
---|
816 | /* PATHDATA.flags constants */
|
---|
817 | #define PD_BEGINSUBPATH 0x00000001
|
---|
818 | #define PD_ENDSUBPATH 0x00000002
|
---|
819 | #define PD_RESETSTYLE 0x00000004
|
---|
820 | #define PD_CLOSEFIGURE 0x00000008
|
---|
821 | #define PD_BEZIERS 0x00000010
|
---|
822 | #define PD_ALL (PD_BEGINSUBPATH \
|
---|
823 | |PD_ENDSUBPATH \
|
---|
824 | |PD_RESETSTYLE \
|
---|
825 | |PD_CLOSEFIGURE \
|
---|
826 | PD_BEZIERS)
|
---|
827 |
|
---|
828 | typedef struct _PATHDATA {
|
---|
829 | FLONG flags;
|
---|
830 | ULONG count;
|
---|
831 | POINTFIX *glypptfx;
|
---|
832 | } PATHDATA, *PPATHDATA;
|
---|
833 |
|
---|
834 | /* PATHOBJ.fl constants */
|
---|
835 | #define PO_BEZIERS 0x00000001
|
---|
836 | #define PO_ELLIPSE 0x00000002
|
---|
837 | #define PO_ALL_INTEGERS 0x00000004
|
---|
838 | #define PO_ENUM_AS_INTEGERS 0x00000008
|
---|
839 |
|
---|
840 | typedef struct _PATHOBJ {
|
---|
841 | FLONG fl;
|
---|
842 | ULONG cCurves;
|
---|
843 | } PATHOBJ;
|
---|
844 |
|
---|
845 | typedef struct _GLYPHBITS {
|
---|
846 | POINTL ptlOrigin;
|
---|
847 | SIZEL sizlBitmap;
|
---|
848 | BYTE aj[1];
|
---|
849 | } GLYPHBITS;
|
---|
850 |
|
---|
851 | typedef union _GLYPHDEF {
|
---|
852 | GLYPHBITS *pgb;
|
---|
853 | PATHOBJ *ppo;
|
---|
854 | } GLYPHDEF;
|
---|
855 |
|
---|
856 | typedef struct _GLYPHPOS {
|
---|
857 | HGLYPH hg;
|
---|
858 | GLYPHDEF *pgdf;
|
---|
859 | POINTL ptl;
|
---|
860 | } GLYPHPOS, *PGLYPHPOS;
|
---|
861 |
|
---|
862 | typedef struct _GLYPHDATA {
|
---|
863 | GLYPHDEF gdf;
|
---|
864 | HGLYPH hg;
|
---|
865 | FIX fxD;
|
---|
866 | FIX fxA;
|
---|
867 | FIX fxAB;
|
---|
868 | FIX fxInkTop;
|
---|
869 | FIX fxInkBottom;
|
---|
870 | RECTL rclInk;
|
---|
871 | POINTQF ptqD;
|
---|
872 | } GLYPHDATA;
|
---|
873 |
|
---|
874 | typedef struct _IFIEXTRA {
|
---|
875 | ULONG ulIdentifier;
|
---|
876 | PTRDIFF dpFontSig;
|
---|
877 | ULONG cig;
|
---|
878 | PTRDIFF dpDesignVector;
|
---|
879 | PTRDIFF dpAxesInfoW;
|
---|
880 | ULONG aulReserved[1];
|
---|
881 | } IFIEXTRA, *PIFIEXTRA;
|
---|
882 |
|
---|
883 | /* IFIMETRICS constants */
|
---|
884 |
|
---|
885 | #define FM_VERSION_NUMBER 0x0
|
---|
886 |
|
---|
887 | /* IFIMETRICS.fsType constants */
|
---|
888 | #define FM_TYPE_LICENSED 0x2
|
---|
889 | #define FM_READONLY_EMBED 0x4
|
---|
890 | #define FM_EDITABLE_EMBED 0x8
|
---|
891 | #define FM_NO_EMBEDDING FM_TYPE_LICENSED
|
---|
892 |
|
---|
893 | /* IFIMETRICS.flInfo constants */
|
---|
894 | #define FM_INFO_TECH_TRUETYPE 0x00000001
|
---|
895 | #define FM_INFO_TECH_BITMAP 0x00000002
|
---|
896 | #define FM_INFO_TECH_STROKE 0x00000004
|
---|
897 | #define FM_INFO_TECH_OUTLINE_NOT_TRUETYPE 0x00000008
|
---|
898 | #define FM_INFO_ARB_XFORMS 0x00000010
|
---|
899 | #define FM_INFO_1BPP 0x00000020
|
---|
900 | #define FM_INFO_4BPP 0x00000040
|
---|
901 | #define FM_INFO_8BPP 0x00000080
|
---|
902 | #define FM_INFO_16BPP 0x00000100
|
---|
903 | #define FM_INFO_24BPP 0x00000200
|
---|
904 | #define FM_INFO_32BPP 0x00000400
|
---|
905 | #define FM_INFO_INTEGER_WIDTH 0x00000800
|
---|
906 | #define FM_INFO_CONSTANT_WIDTH 0x00001000
|
---|
907 | #define FM_INFO_NOT_CONTIGUOUS 0x00002000
|
---|
908 | #define FM_INFO_TECH_MM 0x00004000
|
---|
909 | #define FM_INFO_RETURNS_OUTLINES 0x00008000
|
---|
910 | #define FM_INFO_RETURNS_STROKES 0x00010000
|
---|
911 | #define FM_INFO_RETURNS_BITMAPS 0x00020000
|
---|
912 | #define FM_INFO_DSIG 0x00040000
|
---|
913 | #define FM_INFO_RIGHT_HANDED 0x00080000
|
---|
914 | #define FM_INFO_INTEGRAL_SCALING 0x00100000
|
---|
915 | #define FM_INFO_90DEGREE_ROTATIONS 0x00200000
|
---|
916 | #define FM_INFO_OPTICALLY_FIXED_PITCH 0x00400000
|
---|
917 | #define FM_INFO_DO_NOT_ENUMERATE 0x00800000
|
---|
918 | #define FM_INFO_ISOTROPIC_SCALING_ONLY 0x01000000
|
---|
919 | #define FM_INFO_ANISOTROPIC_SCALING_ONLY 0x02000000
|
---|
920 | #define FM_INFO_TECH_CFF 0x04000000
|
---|
921 | #define FM_INFO_FAMILY_EQUIV 0x08000000
|
---|
922 | #define FM_INFO_DBCS_FIXED_PITCH 0x10000000
|
---|
923 | #define FM_INFO_NONNEGATIVE_AC 0x20000000
|
---|
924 | #define FM_INFO_IGNORE_TC_RA_ABLE 0x40000000
|
---|
925 | #define FM_INFO_TECH_TYPE1 0x80000000
|
---|
926 |
|
---|
927 | #define MAXCHARSETS 16
|
---|
928 |
|
---|
929 | /* IFIMETRICS.ulPanoseCulture constants */
|
---|
930 | #define FM_PANOSE_CULTURE_LATIN 0x0
|
---|
931 |
|
---|
932 | typedef struct _IFIMETRICS {
|
---|
933 | ULONG cjThis;
|
---|
934 | ULONG cjIfiExtra;
|
---|
935 | PTRDIFF dpwszFamilyName;
|
---|
936 | PTRDIFF dpwszStyleName;
|
---|
937 | PTRDIFF dpwszFaceName;
|
---|
938 | PTRDIFF dpwszUniqueName;
|
---|
939 | PTRDIFF dpFontSim;
|
---|
940 | LONG lEmbedId;
|
---|
941 | LONG lItalicAngle;
|
---|
942 | LONG lCharBias;
|
---|
943 | PTRDIFF dpCharSets;
|
---|
944 | BYTE jWinCharSet;
|
---|
945 | BYTE jWinPitchAndFamily;
|
---|
946 | USHORT usWinWeight;
|
---|
947 | ULONG flInfo;
|
---|
948 | USHORT fsSelection;
|
---|
949 | USHORT fsType;
|
---|
950 | FWORD fwdUnitsPerEm;
|
---|
951 | FWORD fwdLowestPPEm;
|
---|
952 | FWORD fwdWinAscender;
|
---|
953 | FWORD fwdWinDescender;
|
---|
954 | FWORD fwdMacAscender;
|
---|
955 | FWORD fwdMacDescender;
|
---|
956 | FWORD fwdMacLineGap;
|
---|
957 | FWORD fwdTypoAscender;
|
---|
958 | FWORD fwdTypoDescender;
|
---|
959 | FWORD fwdTypoLineGap;
|
---|
960 | FWORD fwdAveCharWidth;
|
---|
961 | FWORD fwdMaxCharInc;
|
---|
962 | FWORD fwdCapHeight;
|
---|
963 | FWORD fwdXHeight;
|
---|
964 | FWORD fwdSubscriptXSize;
|
---|
965 | FWORD fwdSubscriptYSize;
|
---|
966 | FWORD fwdSubscriptXOffset;
|
---|
967 | FWORD fwdSubscriptYOffset;
|
---|
968 | FWORD fwdSuperscriptXSize;
|
---|
969 | FWORD fwdSuperscriptYSize;
|
---|
970 | FWORD fwdSuperscriptXOffset;
|
---|
971 | FWORD fwdSuperscriptYOffset;
|
---|
972 | FWORD fwdUnderscoreSize;
|
---|
973 | FWORD fwdUnderscorePosition;
|
---|
974 | FWORD fwdStrikeoutSize;
|
---|
975 | FWORD fwdStrikeoutPosition;
|
---|
976 | BYTE chFirstChar;
|
---|
977 | BYTE chLastChar;
|
---|
978 | BYTE chDefaultChar;
|
---|
979 | BYTE chBreakChar;
|
---|
980 | WCHAR wcFirstChar;
|
---|
981 | WCHAR wcLastChar;
|
---|
982 | WCHAR wcDefaultChar;
|
---|
983 | WCHAR wcBreakChar;
|
---|
984 | POINTL ptlBaseline;
|
---|
985 | POINTL ptlAspect;
|
---|
986 | POINTL ptlCaret;
|
---|
987 | RECTL rclFontBox;
|
---|
988 | BYTE achVendId[4];
|
---|
989 | ULONG cKerningPairs;
|
---|
990 | ULONG ulPanoseCulture;
|
---|
991 | PANOSE panose;
|
---|
992 | #if defined(_WIN64)
|
---|
993 | PVOID Align;
|
---|
994 | #endif
|
---|
995 | } IFIMETRICS, *PIFIMETRICS;
|
---|
996 |
|
---|
997 | /* LINEATTRS.fl */
|
---|
998 | #define LA_GEOMETRIC 0x00000001
|
---|
999 | #define LA_ALTERNATE 0x00000002
|
---|
1000 | #define LA_STARTGAP 0x00000004
|
---|
1001 | #define LA_STYLED 0x00000008
|
---|
1002 |
|
---|
1003 | /* LINEATTRS.iJoin */
|
---|
1004 | #define JOIN_ROUND 0L
|
---|
1005 | #define JOIN_BEVEL 1L
|
---|
1006 | #define JOIN_MITER 2L
|
---|
1007 |
|
---|
1008 | /* LINEATTRS.iEndCap */
|
---|
1009 | #define ENDCAP_ROUND 0L
|
---|
1010 | #define ENDCAP_SQUARE 1L
|
---|
1011 | #define ENDCAP_BUTT 2L
|
---|
1012 |
|
---|
1013 | typedef struct _LINEATTRS {
|
---|
1014 | FLONG fl;
|
---|
1015 | ULONG iJoin;
|
---|
1016 | ULONG iEndCap;
|
---|
1017 | FLOAT_LONG elWidth;
|
---|
1018 | FLOATL eMiterLimit;
|
---|
1019 | ULONG cstyle;
|
---|
1020 | PFLOAT_LONG pstyle;
|
---|
1021 | FLOAT_LONG elStyleState;
|
---|
1022 | } LINEATTRS, *PLINEATTRS;
|
---|
1023 |
|
---|
1024 | typedef struct _PALOBJ {
|
---|
1025 | ULONG ulReserved;
|
---|
1026 | } PALOBJ;
|
---|
1027 |
|
---|
1028 | typedef struct _PERBANDINFO {
|
---|
1029 | BOOL bRepeatThisBand;
|
---|
1030 | SIZEL szlBand;
|
---|
1031 | ULONG ulHorzRes;
|
---|
1032 | ULONG ulVertRes;
|
---|
1033 | } PERBANDINFO, *PPERBANDINFO;
|
---|
1034 |
|
---|
1035 | /* STROBJ.flAccel constants */
|
---|
1036 | #define SO_FLAG_DEFAULT_PLACEMENT 0x00000001
|
---|
1037 | #define SO_HORIZONTAL 0x00000002
|
---|
1038 | #define SO_VERTICAL 0x00000004
|
---|
1039 | #define SO_REVERSED 0x00000008
|
---|
1040 | #define SO_ZERO_BEARINGS 0x00000010
|
---|
1041 | #define SO_CHAR_INC_EQUAL_BM_BASE 0x00000020
|
---|
1042 | #define SO_MAXEXT_EQUAL_BM_SIDE 0x00000040
|
---|
1043 | #define SO_DO_NOT_SUBSTITUTE_DEVICE_FONT 0x00000080
|
---|
1044 | #define SO_GLYPHINDEX_TEXTOUT 0x00000100
|
---|
1045 | #define SO_ESC_NOT_ORIENT 0x00000200
|
---|
1046 | #define SO_DXDY 0x00000400
|
---|
1047 | #define SO_CHARACTER_EXTRA 0x00000800
|
---|
1048 | #define SO_BREAK_EXTRA 0x00001000
|
---|
1049 |
|
---|
1050 | typedef struct _STROBJ {
|
---|
1051 | ULONG cGlyphs;
|
---|
1052 | FLONG flAccel;
|
---|
1053 | ULONG ulCharInc;
|
---|
1054 | RECTL rclBkGround;
|
---|
1055 | GLYPHPOS *pgp;
|
---|
1056 | LPWSTR pwszOrg;
|
---|
1057 | } STROBJ;
|
---|
1058 |
|
---|
1059 | typedef struct _SURFACEALIGNMENT {
|
---|
1060 | union {
|
---|
1061 | struct {
|
---|
1062 | DWORD dwStartAlignment;
|
---|
1063 | DWORD dwPitchAlignment;
|
---|
1064 | DWORD dwReserved1;
|
---|
1065 | DWORD dwReserved2;
|
---|
1066 | } Linear;
|
---|
1067 | struct {
|
---|
1068 | DWORD dwXAlignment;
|
---|
1069 | DWORD dwYAlignment;
|
---|
1070 | DWORD dwReserved1;
|
---|
1071 | DWORD dwReserved2;
|
---|
1072 | } Rectangular;
|
---|
1073 | };
|
---|
1074 | } SURFACEALIGNMENT, *LPSURFACEALIGNMENT;
|
---|
1075 |
|
---|
1076 | /* SURFOBJ.iType constants */
|
---|
1077 | #define STYPE_BITMAP 0L
|
---|
1078 | #define STYPE_DEVICE 1L
|
---|
1079 | #define STYPE_DEVBITMAP 3L
|
---|
1080 |
|
---|
1081 | /* SURFOBJ.fjBitmap constants */
|
---|
1082 | #define BMF_TOPDOWN 0x0001
|
---|
1083 | #define BMF_NOZEROINIT 0x0002
|
---|
1084 | #define BMF_DONTCACHE 0x0004
|
---|
1085 | #define BMF_USERMEM 0x0008
|
---|
1086 | #define BMF_KMSECTION 0x0010
|
---|
1087 | #define BMF_NOTSYSMEM 0x0020
|
---|
1088 | #define BMF_WINDOW_BLT 0x0040
|
---|
1089 | #define BMF_UMPDMEM 0x0080
|
---|
1090 | #define BMF_RESERVED 0xFF00
|
---|
1091 |
|
---|
1092 | typedef struct _SURFOBJ {
|
---|
1093 | DHSURF dhsurf;
|
---|
1094 | HSURF hsurf;
|
---|
1095 | DHPDEV dhpdev;
|
---|
1096 | HDEV hdev;
|
---|
1097 | SIZEL sizlBitmap;
|
---|
1098 | ULONG cjBits;
|
---|
1099 | PVOID pvBits;
|
---|
1100 | PVOID pvScan0;
|
---|
1101 | LONG lDelta;
|
---|
1102 | ULONG iUniq;
|
---|
1103 | ULONG iBitmapFormat;
|
---|
1104 | USHORT iType;
|
---|
1105 | USHORT fjBitmap;
|
---|
1106 | } SURFOBJ;
|
---|
1107 |
|
---|
1108 | typedef struct _TYPE1_FONT {
|
---|
1109 | HANDLE hPFM;
|
---|
1110 | HANDLE hPFB;
|
---|
1111 | ULONG ulIdentifier;
|
---|
1112 | } TYPE1_FONT;
|
---|
1113 |
|
---|
1114 | typedef struct _WNDOBJ {
|
---|
1115 | CLIPOBJ coClient;
|
---|
1116 | PVOID pvConsumer;
|
---|
1117 | RECTL rclClient;
|
---|
1118 | SURFOBJ *psoOwner;
|
---|
1119 | } WNDOBJ, *PWNDOBJ;
|
---|
1120 |
|
---|
1121 | typedef struct _XFORML {
|
---|
1122 | FLOATL eM11;
|
---|
1123 | FLOATL eM12;
|
---|
1124 | FLOATL eM21;
|
---|
1125 | FLOATL eM22;
|
---|
1126 | FLOATL eDx;
|
---|
1127 | FLOATL eDy;
|
---|
1128 | } XFORML, *PXFORML;
|
---|
1129 |
|
---|
1130 | typedef struct _XFORMOBJ {
|
---|
1131 | ULONG ulReserved;
|
---|
1132 | } XFORMOBJ;
|
---|
1133 |
|
---|
1134 | /* XLATEOBJ.flXlate constants */
|
---|
1135 | #define XO_TRIVIAL 0x00000001
|
---|
1136 | #define XO_TABLE 0x00000002
|
---|
1137 | #define XO_TO_MONO 0x00000004
|
---|
1138 | #define XO_FROM_CMYK 0x00000008
|
---|
1139 | #define XO_DEVICE_ICM 0x00000010
|
---|
1140 | #define XO_HOST_ICM 0x00000020
|
---|
1141 |
|
---|
1142 | typedef struct _XLATEOBJ {
|
---|
1143 | ULONG iUniq;
|
---|
1144 | FLONG flXlate;
|
---|
1145 | USHORT iSrcType;
|
---|
1146 | USHORT iDstType;
|
---|
1147 | ULONG cEntries;
|
---|
1148 | ULONG *pulXlate;
|
---|
1149 | } XLATEOBJ;
|
---|
1150 |
|
---|
1151 | typedef VOID DDKAPI (CALLBACK *WNDOBJCHANGEPROC)(
|
---|
1152 | IN WNDOBJ *pwo,
|
---|
1153 | IN FLONG fl);
|
---|
1154 |
|
---|
1155 |
|
---|
1156 | WIN32KAPI
|
---|
1157 | HANDLE
|
---|
1158 | DDKAPI
|
---|
1159 | BRUSHOBJ_hGetColorTransform(
|
---|
1160 | IN BRUSHOBJ *pbo);
|
---|
1161 |
|
---|
1162 | WIN32KAPI
|
---|
1163 | PVOID
|
---|
1164 | DDKAPI
|
---|
1165 | BRUSHOBJ_pvAllocRbrush(
|
---|
1166 | IN BRUSHOBJ *pbo,
|
---|
1167 | IN ULONG cj);
|
---|
1168 |
|
---|
1169 | WIN32KAPI
|
---|
1170 | PVOID
|
---|
1171 | DDKAPI
|
---|
1172 | BRUSHOBJ_pvGetRbrush(
|
---|
1173 | IN BRUSHOBJ *pbo);
|
---|
1174 |
|
---|
1175 | WIN32KAPI
|
---|
1176 | ULONG
|
---|
1177 | DDKAPI
|
---|
1178 | BRUSHOBJ_ulGetBrushColor(
|
---|
1179 | IN BRUSHOBJ *pbo);
|
---|
1180 |
|
---|
1181 | WIN32KAPI
|
---|
1182 | BOOL
|
---|
1183 | DDKAPI
|
---|
1184 | CLIPOBJ_bEnum(
|
---|
1185 | IN CLIPOBJ *pco,
|
---|
1186 | IN ULONG cj,
|
---|
1187 | OUT ULONG *pv);
|
---|
1188 |
|
---|
1189 | /* CLIPOBJ_cEnumStart.iType constants */
|
---|
1190 | #define CT_RECTANGLES 0L
|
---|
1191 |
|
---|
1192 | /* CLIPOBJ_cEnumStart.iDirection constants */
|
---|
1193 | #define CD_RIGHTDOWN 0x00000000
|
---|
1194 | #define CD_LEFTDOWN 0x00000001
|
---|
1195 | #define CD_LEFTWARDS 0x00000001
|
---|
1196 | #define CD_RIGHTUP 0x00000002
|
---|
1197 | #define CD_UPWARDS 0x00000002
|
---|
1198 | #define CD_LEFTUP 0x00000003
|
---|
1199 | #define CD_ANY 0x00000004
|
---|
1200 |
|
---|
1201 | WIN32KAPI
|
---|
1202 | ULONG
|
---|
1203 | DDKAPI
|
---|
1204 | CLIPOBJ_cEnumStart(
|
---|
1205 | IN CLIPOBJ *pco,
|
---|
1206 | IN BOOL bAll,
|
---|
1207 | IN ULONG iType,
|
---|
1208 | IN ULONG iDirection,
|
---|
1209 | IN ULONG cLimit);
|
---|
1210 |
|
---|
1211 | WIN32KAPI
|
---|
1212 | PATHOBJ*
|
---|
1213 | DDKAPI
|
---|
1214 | CLIPOBJ_ppoGetPath(
|
---|
1215 | IN CLIPOBJ *pco);
|
---|
1216 |
|
---|
1217 | WIN32KAPI
|
---|
1218 | VOID
|
---|
1219 | DDKAPI
|
---|
1220 | EngAcquireSemaphore(
|
---|
1221 | IN HSEMAPHORE hsem);
|
---|
1222 |
|
---|
1223 | #define FL_ZERO_MEMORY 0x00000001
|
---|
1224 | #define FL_NONPAGED_MEMORY 0x00000002
|
---|
1225 |
|
---|
1226 | WIN32KAPI
|
---|
1227 | PVOID
|
---|
1228 | DDKAPI
|
---|
1229 | EngAllocMem(
|
---|
1230 | IN ULONG Flags,
|
---|
1231 | IN ULONG MemSize,
|
---|
1232 | IN ULONG Tag);
|
---|
1233 |
|
---|
1234 | WIN32KAPI
|
---|
1235 | PVOID
|
---|
1236 | DDKAPI
|
---|
1237 | EngAllocPrivateUserMem(
|
---|
1238 | IN PDD_SURFACE_LOCAL psl,
|
---|
1239 | IN SIZE_T cj,
|
---|
1240 | IN ULONG tag);
|
---|
1241 |
|
---|
1242 | WIN32KAPI
|
---|
1243 | PVOID
|
---|
1244 | DDKAPI
|
---|
1245 | EngAllocUserMem(
|
---|
1246 | IN SIZE_T cj,
|
---|
1247 | IN ULONG tag);
|
---|
1248 |
|
---|
1249 | WIN32KAPI
|
---|
1250 | BOOL
|
---|
1251 | DDKAPI
|
---|
1252 | EngAlphaBlend(
|
---|
1253 | IN SURFOBJ *psoDest,
|
---|
1254 | IN SURFOBJ *psoSrc,
|
---|
1255 | IN CLIPOBJ *pco,
|
---|
1256 | IN XLATEOBJ *pxlo,
|
---|
1257 | IN RECTL *prclDest,
|
---|
1258 | IN RECTL *prclSrc,
|
---|
1259 | IN BLENDOBJ *pBlendObj);
|
---|
1260 |
|
---|
1261 | /* EngAssociateSurface.flHooks constants */
|
---|
1262 | #define HOOK_BITBLT 0x00000001
|
---|
1263 | #define HOOK_STRETCHBLT 0x00000002
|
---|
1264 | #define HOOK_PLGBLT 0x00000004
|
---|
1265 | #define HOOK_TEXTOUT 0x00000008
|
---|
1266 | #define HOOK_PAINT 0x00000010
|
---|
1267 | #define HOOK_STROKEPATH 0x00000020
|
---|
1268 | #define HOOK_FILLPATH 0x00000040
|
---|
1269 | #define HOOK_STROKEANDFILLPATH 0x00000080
|
---|
1270 | #define HOOK_LINETO 0x00000100
|
---|
1271 | #define HOOK_COPYBITS 0x00000400
|
---|
1272 | #define HOOK_MOVEPANNING 0x00000800
|
---|
1273 | #define HOOK_SYNCHRONIZE 0x00001000
|
---|
1274 | #define HOOK_STRETCHBLTROP 0x00002000
|
---|
1275 | #define HOOK_SYNCHRONIZEACCESS 0x00004000
|
---|
1276 | #define HOOK_TRANSPARENTBLT 0x00008000
|
---|
1277 | #define HOOK_ALPHABLEND 0x00010000
|
---|
1278 | #define HOOK_GRADIENTFILL 0x00020000
|
---|
1279 | #define HOOK_FLAGS 0x0003b5ff
|
---|
1280 |
|
---|
1281 | WIN32KAPI
|
---|
1282 | BOOL
|
---|
1283 | DDKAPI
|
---|
1284 | EngAssociateSurface(
|
---|
1285 | IN HSURF hsurf,
|
---|
1286 | IN HDEV hdev,
|
---|
1287 | IN FLONG flHooks);
|
---|
1288 |
|
---|
1289 | WIN32KAPI
|
---|
1290 | BOOL
|
---|
1291 | DDKAPI
|
---|
1292 | EngBitBlt(
|
---|
1293 | IN SURFOBJ *psoTrg,
|
---|
1294 | IN SURFOBJ *psoSrc,
|
---|
1295 | IN SURFOBJ *psoMask,
|
---|
1296 | IN CLIPOBJ *pco,
|
---|
1297 | IN XLATEOBJ *pxlo,
|
---|
1298 | IN RECTL *prclTrg,
|
---|
1299 | IN POINTL *pptlSrc,
|
---|
1300 | IN POINTL *pptlMask,
|
---|
1301 | IN BRUSHOBJ *pbo,
|
---|
1302 | IN POINTL *pptlBrush,
|
---|
1303 | IN ROP4 rop4);
|
---|
1304 |
|
---|
1305 | WIN32KAPI
|
---|
1306 | BOOL
|
---|
1307 | DDKAPI
|
---|
1308 | EngCheckAbort(
|
---|
1309 | IN SURFOBJ *pso);
|
---|
1310 |
|
---|
1311 | WIN32KAPI
|
---|
1312 | VOID
|
---|
1313 | DDKAPI
|
---|
1314 | EngClearEvent(
|
---|
1315 | IN PEVENT pEvent);
|
---|
1316 |
|
---|
1317 | WIN32KAPI
|
---|
1318 | FD_GLYPHSET*
|
---|
1319 | DDKAPI
|
---|
1320 | EngComputeGlyphSet(
|
---|
1321 | IN INT nCodePage,
|
---|
1322 | IN INT nFirstChar,
|
---|
1323 | IN INT cChars);
|
---|
1324 |
|
---|
1325 | /* EngControlSprites.fl constants */
|
---|
1326 | #define ECS_TEARDOWN 0x00000001
|
---|
1327 | #define ECS_REDRAW 0x00000002
|
---|
1328 |
|
---|
1329 | WIN32KAPI
|
---|
1330 | BOOL
|
---|
1331 | DDKAPI
|
---|
1332 | EngControlSprites(
|
---|
1333 | IN WNDOBJ *pwo,
|
---|
1334 | IN FLONG fl);
|
---|
1335 |
|
---|
1336 | WIN32KAPI
|
---|
1337 | BOOL
|
---|
1338 | DDKAPI
|
---|
1339 | EngCopyBits(
|
---|
1340 | OUT SURFOBJ *psoDest,
|
---|
1341 | IN SURFOBJ *psoSrc,
|
---|
1342 | IN CLIPOBJ *pco,
|
---|
1343 | IN XLATEOBJ *pxlo,
|
---|
1344 | IN RECTL *prclDest,
|
---|
1345 | IN POINTL *pptlSrc);
|
---|
1346 |
|
---|
1347 | WIN32KAPI
|
---|
1348 | HBITMAP
|
---|
1349 | DDKAPI
|
---|
1350 | EngCreateBitmap(
|
---|
1351 | IN SIZEL sizl,
|
---|
1352 | IN LONG lWidth,
|
---|
1353 | IN ULONG iFormat,
|
---|
1354 | IN FLONG fl,
|
---|
1355 | IN PVOID pvBits);
|
---|
1356 |
|
---|
1357 | WIN32KAPI
|
---|
1358 | CLIPOBJ*
|
---|
1359 | DDKAPI
|
---|
1360 | EngCreateClip(
|
---|
1361 | VOID);
|
---|
1362 |
|
---|
1363 | WIN32KAPI
|
---|
1364 | HBITMAP
|
---|
1365 | DDKAPI
|
---|
1366 | EngCreateDeviceBitmap(
|
---|
1367 | IN DHSURF dhsurf,
|
---|
1368 | IN SIZEL sizl,
|
---|
1369 | IN ULONG iFormatCompat);
|
---|
1370 |
|
---|
1371 | WIN32KAPI
|
---|
1372 | HSURF
|
---|
1373 | DDKAPI
|
---|
1374 | EngCreateDeviceSurface(
|
---|
1375 | DHSURF dhsurf,
|
---|
1376 | SIZEL sizl,
|
---|
1377 | ULONG iFormatCompat);
|
---|
1378 |
|
---|
1379 | #if 0
|
---|
1380 | WIN32KAPI
|
---|
1381 | HDRVOBJ
|
---|
1382 | DDKAPI
|
---|
1383 | EngCreateDriverObj(
|
---|
1384 | PVOID pvObj,
|
---|
1385 | FREEOBJPROC pFreeObjProc,
|
---|
1386 | HDEV hdev);
|
---|
1387 | #endif
|
---|
1388 |
|
---|
1389 | WIN32KAPI
|
---|
1390 | BOOL
|
---|
1391 | DDKAPI
|
---|
1392 | EngCreateEvent(
|
---|
1393 | OUT PEVENT *ppEvent);
|
---|
1394 |
|
---|
1395 | /* EngCreatePalette.iMode constants */
|
---|
1396 | #define PAL_INDEXED 0x00000001
|
---|
1397 | #define PAL_BITFIELDS 0x00000002
|
---|
1398 | #define PAL_RGB 0x00000004
|
---|
1399 | #define PAL_BGR 0x00000008
|
---|
1400 | #define PAL_CMYK 0x00000010
|
---|
1401 |
|
---|
1402 | WIN32KAPI
|
---|
1403 | HPALETTE
|
---|
1404 | DDKAPI
|
---|
1405 | EngCreatePalette(
|
---|
1406 | IN ULONG iMode,
|
---|
1407 | IN ULONG cColors,
|
---|
1408 | IN ULONG *pulColors,
|
---|
1409 | IN FLONG flRed,
|
---|
1410 | IN FLONG flGreen,
|
---|
1411 | IN FLONG flBlue);
|
---|
1412 |
|
---|
1413 | WIN32KAPI
|
---|
1414 | PATHOBJ*
|
---|
1415 | DDKAPI
|
---|
1416 | EngCreatePath(
|
---|
1417 | VOID);
|
---|
1418 |
|
---|
1419 | WIN32KAPI
|
---|
1420 | HSEMAPHORE
|
---|
1421 | DDKAPI
|
---|
1422 | EngCreateSemaphore(
|
---|
1423 | VOID);
|
---|
1424 |
|
---|
1425 | /* EngCreateWnd.fl constants */
|
---|
1426 | #define WO_RGN_CLIENT_DELTA 0x00000001
|
---|
1427 | #define WO_RGN_CLIENT 0x00000002
|
---|
1428 | #define WO_RGN_SURFACE_DELTA 0x00000004
|
---|
1429 | #define WO_RGN_SURFACE 0x00000008
|
---|
1430 | #define WO_RGN_UPDATE_ALL 0x00000010
|
---|
1431 | #define WO_RGN_WINDOW 0x00000020
|
---|
1432 | #define WO_DRAW_NOTIFY 0x00000040
|
---|
1433 | #define WO_SPRITE_NOTIFY 0x00000080
|
---|
1434 | #define WO_RGN_DESKTOP_COORD 0x00000100
|
---|
1435 |
|
---|
1436 | WIN32KAPI
|
---|
1437 | WNDOBJ*
|
---|
1438 | DDKAPI
|
---|
1439 | EngCreateWnd(
|
---|
1440 | SURFOBJ *pso,
|
---|
1441 | HWND hwnd,
|
---|
1442 | WNDOBJCHANGEPROC pfn,
|
---|
1443 | FLONG fl,
|
---|
1444 | int iPixelFormat);
|
---|
1445 |
|
---|
1446 | WIN32KAPI
|
---|
1447 | VOID
|
---|
1448 | DDKAPI
|
---|
1449 | EngDebugBreak(
|
---|
1450 | VOID);
|
---|
1451 |
|
---|
1452 | WIN32KAPI
|
---|
1453 | VOID
|
---|
1454 | DDKAPI
|
---|
1455 | EngDebugPrint(
|
---|
1456 | IN PCHAR StandardPrefix,
|
---|
1457 | IN PCHAR DebugMessage,
|
---|
1458 | IN va_list ap);
|
---|
1459 |
|
---|
1460 | WIN32KAPI
|
---|
1461 | VOID
|
---|
1462 | DDKAPI
|
---|
1463 | EngDeleteClip(
|
---|
1464 | IN CLIPOBJ *pco);
|
---|
1465 |
|
---|
1466 | WIN32KAPI
|
---|
1467 | BOOL
|
---|
1468 | DDKAPI
|
---|
1469 | EngDeleteDriverObj(
|
---|
1470 | IN HDRVOBJ hdo,
|
---|
1471 | IN BOOL bCallBack,
|
---|
1472 | IN BOOL bLocked);
|
---|
1473 |
|
---|
1474 | WIN32KAPI
|
---|
1475 | BOOL
|
---|
1476 | DDKAPI
|
---|
1477 | EngDeleteEvent(
|
---|
1478 | IN PEVENT pEvent);
|
---|
1479 |
|
---|
1480 | WIN32KAPI
|
---|
1481 | BOOL
|
---|
1482 | DDKAPI
|
---|
1483 | EngDeleteFile(
|
---|
1484 | IN LPWSTR pwszFileName);
|
---|
1485 |
|
---|
1486 | WIN32KAPI
|
---|
1487 | BOOL
|
---|
1488 | DDKAPI
|
---|
1489 | EngDeletePalette(
|
---|
1490 | IN HPALETTE hpal);
|
---|
1491 |
|
---|
1492 | WIN32KAPI
|
---|
1493 | VOID
|
---|
1494 | DDKAPI
|
---|
1495 | EngDeletePath(
|
---|
1496 | IN PATHOBJ *ppo);
|
---|
1497 |
|
---|
1498 | WIN32KAPI
|
---|
1499 | VOID
|
---|
1500 | DDKAPI
|
---|
1501 | EngDeleteSafeSemaphore(
|
---|
1502 | IN OUT ENGSAFESEMAPHORE *pssem);
|
---|
1503 |
|
---|
1504 | WIN32KAPI
|
---|
1505 | VOID
|
---|
1506 | DDKAPI
|
---|
1507 | EngDeleteSemaphore(
|
---|
1508 | IN OUT HSEMAPHORE hsem);
|
---|
1509 |
|
---|
1510 | WIN32KAPI
|
---|
1511 | BOOL
|
---|
1512 | DDKAPI
|
---|
1513 | EngDeleteSurface(
|
---|
1514 | IN HSURF hsurf);
|
---|
1515 |
|
---|
1516 | WIN32KAPI
|
---|
1517 | VOID
|
---|
1518 | DDKAPI
|
---|
1519 | EngDeleteWnd(
|
---|
1520 | IN WNDOBJ *pwo);
|
---|
1521 |
|
---|
1522 | WIN32KAPI
|
---|
1523 | DWORD
|
---|
1524 | DDKAPI
|
---|
1525 | EngDeviceIoControl(
|
---|
1526 | IN HANDLE hDevice,
|
---|
1527 | IN DWORD dwIoControlCode,
|
---|
1528 | IN LPVOID lpInBuffer,
|
---|
1529 | IN DWORD nInBufferSize,
|
---|
1530 | IN OUT LPVOID lpOutBuffer,
|
---|
1531 | IN DWORD nOutBufferSize,
|
---|
1532 | OUT LPDWORD lpBytesReturned);
|
---|
1533 |
|
---|
1534 | WIN32KAPI
|
---|
1535 | ULONG
|
---|
1536 | DDKAPI
|
---|
1537 | EngDitherColor(
|
---|
1538 | IN HDEV hdev,
|
---|
1539 | IN ULONG iMode,
|
---|
1540 | IN ULONG rgb,
|
---|
1541 | OUT ULONG *pul);
|
---|
1542 |
|
---|
1543 | WIN32KAPI
|
---|
1544 | BOOL
|
---|
1545 | DDKAPI
|
---|
1546 | EngEnumForms(
|
---|
1547 | IN HANDLE hPrinter,
|
---|
1548 | IN DWORD Level,
|
---|
1549 | OUT LPBYTE pForm,
|
---|
1550 | IN DWORD cbBuf,
|
---|
1551 | OUT LPDWORD pcbNeeded,
|
---|
1552 | OUT LPDWORD pcReturned);
|
---|
1553 |
|
---|
1554 | WIN32KAPI
|
---|
1555 | BOOL
|
---|
1556 | DDKAPI
|
---|
1557 | EngEraseSurface(
|
---|
1558 | IN SURFOBJ *pso,
|
---|
1559 | IN RECTL *prcl,
|
---|
1560 | IN ULONG iColor);
|
---|
1561 |
|
---|
1562 | WIN32KAPI
|
---|
1563 | BOOL
|
---|
1564 | DDKAPI
|
---|
1565 | EngFillPath(
|
---|
1566 | IN SURFOBJ *pso,
|
---|
1567 | IN PATHOBJ *ppo,
|
---|
1568 | IN CLIPOBJ *pco,
|
---|
1569 | IN BRUSHOBJ *pbo,
|
---|
1570 | IN POINTL *pptlBrushOrg,
|
---|
1571 | IN MIX mix,
|
---|
1572 | IN FLONG flOptions);
|
---|
1573 |
|
---|
1574 | WIN32KAPI
|
---|
1575 | PVOID
|
---|
1576 | DDKAPI
|
---|
1577 | EngFindImageProcAddress(
|
---|
1578 | IN HANDLE hModule,
|
---|
1579 | IN LPSTR lpProcName);
|
---|
1580 |
|
---|
1581 | WIN32KAPI
|
---|
1582 | PVOID
|
---|
1583 | DDKAPI
|
---|
1584 | EngFindResource(
|
---|
1585 | IN HANDLE h,
|
---|
1586 | IN int iName,
|
---|
1587 | IN int iType,
|
---|
1588 | OUT PULONG pulSize);
|
---|
1589 |
|
---|
1590 | WIN32KAPI
|
---|
1591 | PVOID
|
---|
1592 | DDKAPI
|
---|
1593 | EngFntCacheAlloc(
|
---|
1594 | IN ULONG FastCheckSum,
|
---|
1595 | IN ULONG ulSize);
|
---|
1596 |
|
---|
1597 | /* EngFntCacheFault.iFaultMode constants */
|
---|
1598 | #define ENG_FNT_CACHE_READ_FAULT 0x00000001
|
---|
1599 | #define ENG_FNT_CACHE_WRITE_FAULT 0x00000002
|
---|
1600 |
|
---|
1601 | WIN32KAPI
|
---|
1602 | VOID
|
---|
1603 | DDKAPI
|
---|
1604 | EngFntCacheFault(
|
---|
1605 | IN ULONG ulFastCheckSum,
|
---|
1606 | IN ULONG iFaultMode);
|
---|
1607 |
|
---|
1608 | WIN32KAPI
|
---|
1609 | PVOID
|
---|
1610 | DDKAPI
|
---|
1611 | EngFntCacheLookUp(
|
---|
1612 | IN ULONG FastCheckSum,
|
---|
1613 | OUT ULONG *pulSize);
|
---|
1614 |
|
---|
1615 | WIN32KAPI
|
---|
1616 | VOID
|
---|
1617 | DDKAPI
|
---|
1618 | EngFreeMem(
|
---|
1619 | IN PVOID Mem);
|
---|
1620 |
|
---|
1621 | WIN32KAPI
|
---|
1622 | VOID
|
---|
1623 | DDKAPI
|
---|
1624 | EngFreeModule(
|
---|
1625 | IN HANDLE h);
|
---|
1626 |
|
---|
1627 | WIN32KAPI
|
---|
1628 | VOID
|
---|
1629 | DDKAPI
|
---|
1630 | EngFreePrivateUserMem(
|
---|
1631 | IN PDD_SURFACE_LOCAL psl,
|
---|
1632 | IN PVOID pv);
|
---|
1633 |
|
---|
1634 | WIN32KAPI
|
---|
1635 | VOID
|
---|
1636 | DDKAPI
|
---|
1637 | EngFreeUserMem(
|
---|
1638 | IN PVOID pv);
|
---|
1639 |
|
---|
1640 | WIN32KAPI
|
---|
1641 | VOID
|
---|
1642 | DDKAPI
|
---|
1643 | EngGetCurrentCodePage(
|
---|
1644 | OUT PUSHORT OemCodePage,
|
---|
1645 | OUT PUSHORT AnsiCodePage);
|
---|
1646 |
|
---|
1647 | WIN32KAPI
|
---|
1648 | HANDLE
|
---|
1649 | DDKAPI
|
---|
1650 | EngGetCurrentProcessId(
|
---|
1651 | VOID);
|
---|
1652 |
|
---|
1653 | WIN32KAPI
|
---|
1654 | HANDLE
|
---|
1655 | DDKAPI
|
---|
1656 | EngGetCurrentThreadId(
|
---|
1657 | VOID);
|
---|
1658 |
|
---|
1659 | WIN32KAPI
|
---|
1660 | LPWSTR
|
---|
1661 | DDKAPI
|
---|
1662 | EngGetDriverName(
|
---|
1663 | IN HDEV hdev);
|
---|
1664 |
|
---|
1665 | WIN32KAPI
|
---|
1666 | BOOL
|
---|
1667 | DDKAPI
|
---|
1668 | EngGetFileChangeTime(
|
---|
1669 | IN HANDLE h,
|
---|
1670 | OUT LARGE_INTEGER *pChangeTime);
|
---|
1671 |
|
---|
1672 | WIN32KAPI
|
---|
1673 | BOOL
|
---|
1674 | DDKAPI
|
---|
1675 | EngGetFilePath(
|
---|
1676 | IN HANDLE h,
|
---|
1677 | OUT WCHAR (*pDest)[MAX_PATH+1]);
|
---|
1678 |
|
---|
1679 | WIN32KAPI
|
---|
1680 | BOOL
|
---|
1681 | DDKAPI
|
---|
1682 | EngGetForm(
|
---|
1683 | IN HANDLE hPrinter,
|
---|
1684 | IN LPWSTR pFormName,
|
---|
1685 | IN DWORD Level,
|
---|
1686 | OUT LPBYTE pForm,
|
---|
1687 | IN DWORD cbBuf,
|
---|
1688 | OUT LPDWORD pcbNeeded);
|
---|
1689 |
|
---|
1690 | WIN32KAPI
|
---|
1691 | ULONG
|
---|
1692 | DDKAPI
|
---|
1693 | EngGetLastError(
|
---|
1694 | VOID);
|
---|
1695 |
|
---|
1696 | WIN32KAPI
|
---|
1697 | BOOL
|
---|
1698 | DDKAPI
|
---|
1699 | EngGetPrinter(
|
---|
1700 | IN HANDLE hPrinter,
|
---|
1701 | IN DWORD dwLevel,
|
---|
1702 | OUT LPBYTE pPrinter,
|
---|
1703 | IN DWORD cbBuf,
|
---|
1704 | OUT LPDWORD pcbNeeded);
|
---|
1705 |
|
---|
1706 | WIN32KAPI
|
---|
1707 | DWORD
|
---|
1708 | DDKAPI
|
---|
1709 | EngGetPrinterData(
|
---|
1710 | IN HANDLE hPrinter,
|
---|
1711 | IN LPWSTR pValueName,
|
---|
1712 | OUT LPDWORD pType,
|
---|
1713 | OUT LPBYTE pData,
|
---|
1714 | IN DWORD nSize,
|
---|
1715 | OUT LPDWORD pcbNeeded);
|
---|
1716 |
|
---|
1717 | WIN32KAPI
|
---|
1718 | LPWSTR
|
---|
1719 | DDKAPI
|
---|
1720 | EngGetPrinterDataFileName(
|
---|
1721 | IN HDEV hdev);
|
---|
1722 |
|
---|
1723 | WIN32KAPI
|
---|
1724 | BOOL
|
---|
1725 | DDKAPI
|
---|
1726 | EngGetPrinterDriver(
|
---|
1727 | IN HANDLE hPrinter,
|
---|
1728 | IN LPWSTR pEnvironment,
|
---|
1729 | IN DWORD dwLevel,
|
---|
1730 | OUT BYTE *lpbDrvInfo,
|
---|
1731 | IN DWORD cbBuf,
|
---|
1732 | OUT DWORD *pcbNeeded);
|
---|
1733 |
|
---|
1734 | WIN32KAPI
|
---|
1735 | HANDLE
|
---|
1736 | DDKAPI
|
---|
1737 | EngGetProcessHandle(
|
---|
1738 | VOID);
|
---|
1739 |
|
---|
1740 | WIN32KAPI
|
---|
1741 | BOOL
|
---|
1742 | DDKAPI
|
---|
1743 | EngGetType1FontList(
|
---|
1744 | IN HDEV hdev,
|
---|
1745 | OUT TYPE1_FONT *pType1Buffer,
|
---|
1746 | IN ULONG cjType1Buffer,
|
---|
1747 | OUT PULONG pulLocalFonts,
|
---|
1748 | OUT PULONG pulRemoteFonts,
|
---|
1749 | OUT LARGE_INTEGER *pLastModified);
|
---|
1750 |
|
---|
1751 | WIN32KAPI
|
---|
1752 | BOOL
|
---|
1753 | DDKAPI
|
---|
1754 | EngGradientFill(
|
---|
1755 | IN SURFOBJ *psoDest,
|
---|
1756 | IN CLIPOBJ *pco,
|
---|
1757 | IN XLATEOBJ *pxlo,
|
---|
1758 | IN TRIVERTEX *pVertex,
|
---|
1759 | IN ULONG nVertex,
|
---|
1760 | IN PVOID pMesh,
|
---|
1761 | IN ULONG nMesh,
|
---|
1762 | IN RECTL *prclExtents,
|
---|
1763 | IN POINTL *pptlDitherOrg,
|
---|
1764 | IN ULONG ulMode);
|
---|
1765 |
|
---|
1766 | /* EngHangNotification return values */
|
---|
1767 | #define EHN_RESTORED 0x00000000
|
---|
1768 | #define EHN_ERROR 0x00000001
|
---|
1769 |
|
---|
1770 | WIN32KAPI
|
---|
1771 | ULONG
|
---|
1772 | DDKAPI
|
---|
1773 | EngHangNotification(
|
---|
1774 | IN HDEV hDev,
|
---|
1775 | IN PVOID Reserved);
|
---|
1776 |
|
---|
1777 | WIN32KAPI
|
---|
1778 | BOOL
|
---|
1779 | DDKAPI
|
---|
1780 | EngInitializeSafeSemaphore(
|
---|
1781 | OUT ENGSAFESEMAPHORE *pssem);
|
---|
1782 |
|
---|
1783 | WIN32KAPI
|
---|
1784 | BOOL
|
---|
1785 | DDKAPI
|
---|
1786 | EngIsSemaphoreOwned(
|
---|
1787 | IN HSEMAPHORE hsem);
|
---|
1788 |
|
---|
1789 | WIN32KAPI
|
---|
1790 | BOOL
|
---|
1791 | DDKAPI
|
---|
1792 | EngIsSemaphoreOwnedByCurrentThread(
|
---|
1793 | IN HSEMAPHORE hsem);
|
---|
1794 |
|
---|
1795 | WIN32KAPI
|
---|
1796 | BOOL
|
---|
1797 | DDKAPI
|
---|
1798 | EngLineTo(
|
---|
1799 | SURFOBJ *pso,
|
---|
1800 | CLIPOBJ *pco,
|
---|
1801 | BRUSHOBJ *pbo,
|
---|
1802 | LONG x1,
|
---|
1803 | LONG y1,
|
---|
1804 | LONG x2,
|
---|
1805 | LONG y2,
|
---|
1806 | RECTL *prclBounds,
|
---|
1807 | MIX mix);
|
---|
1808 |
|
---|
1809 | WIN32KAPI
|
---|
1810 | HANDLE
|
---|
1811 | DDKAPI
|
---|
1812 | EngLoadImage(
|
---|
1813 | IN LPWSTR pwszDriver);
|
---|
1814 |
|
---|
1815 | WIN32KAPI
|
---|
1816 | HANDLE
|
---|
1817 | DDKAPI
|
---|
1818 | EngLoadModule(
|
---|
1819 | IN LPWSTR pwsz);
|
---|
1820 |
|
---|
1821 | WIN32KAPI
|
---|
1822 | HANDLE
|
---|
1823 | DDKAPI
|
---|
1824 | EngLoadModuleForWrite(
|
---|
1825 | IN LPWSTR pwsz,
|
---|
1826 | IN ULONG cjSizeOfModule);
|
---|
1827 |
|
---|
1828 | WIN32KAPI
|
---|
1829 | PDD_SURFACE_LOCAL
|
---|
1830 | DDKAPI
|
---|
1831 | EngLockDirectDrawSurface(
|
---|
1832 | IN HANDLE hSurface);
|
---|
1833 |
|
---|
1834 | WIN32KAPI
|
---|
1835 | DRIVEROBJ*
|
---|
1836 | DDKAPI
|
---|
1837 | EngLockDriverObj(
|
---|
1838 | IN HDRVOBJ hdo);
|
---|
1839 |
|
---|
1840 | WIN32KAPI
|
---|
1841 | SURFOBJ*
|
---|
1842 | DDKAPI
|
---|
1843 | EngLockSurface(
|
---|
1844 | IN HSURF hsurf);
|
---|
1845 |
|
---|
1846 | WIN32KAPI
|
---|
1847 | BOOL
|
---|
1848 | DDKAPI
|
---|
1849 | EngLpkInstalled(
|
---|
1850 | VOID);
|
---|
1851 |
|
---|
1852 | WIN32KAPI
|
---|
1853 | PEVENT
|
---|
1854 | DDKAPI
|
---|
1855 | EngMapEvent(
|
---|
1856 | IN HDEV hDev,
|
---|
1857 | IN HANDLE hUserObject,
|
---|
1858 | IN PVOID Reserved1,
|
---|
1859 | IN PVOID Reserved2,
|
---|
1860 | IN PVOID Reserved3);
|
---|
1861 |
|
---|
1862 | WIN32KAPI
|
---|
1863 | PVOID
|
---|
1864 | DDKAPI
|
---|
1865 | EngMapFile(
|
---|
1866 | IN LPWSTR pwsz,
|
---|
1867 | IN ULONG cjSize,
|
---|
1868 | OUT ULONG_PTR *piFile);
|
---|
1869 |
|
---|
1870 | WIN32KAPI
|
---|
1871 | BOOL
|
---|
1872 | DDKAPI
|
---|
1873 | EngMapFontFile(
|
---|
1874 | ULONG_PTR iFile,
|
---|
1875 | PULONG *ppjBuf,
|
---|
1876 | ULONG *pcjBuf);
|
---|
1877 |
|
---|
1878 | WIN32KAPI
|
---|
1879 | BOOL
|
---|
1880 | DDKAPI
|
---|
1881 | EngMapFontFileFD(
|
---|
1882 | IN ULONG_PTR iFile,
|
---|
1883 | OUT PULONG *ppjBuf,
|
---|
1884 | OUT ULONG *pcjBuf);
|
---|
1885 |
|
---|
1886 | WIN32KAPI
|
---|
1887 | PVOID
|
---|
1888 | DDKAPI
|
---|
1889 | EngMapModule(
|
---|
1890 | IN HANDLE h,
|
---|
1891 | OUT PULONG pSize);
|
---|
1892 |
|
---|
1893 | WIN32KAPI
|
---|
1894 | BOOL
|
---|
1895 | DDKAPI
|
---|
1896 | EngMarkBandingSurface(
|
---|
1897 | IN HSURF hsurf);
|
---|
1898 |
|
---|
1899 | /* EngModifySurface.flSurface constants */
|
---|
1900 | #define MS_NOTSYSTEMMEMORY 0x00000001
|
---|
1901 | #define MS_SHAREDACCESS 0x00000002
|
---|
1902 |
|
---|
1903 | WIN32KAPI
|
---|
1904 | BOOL
|
---|
1905 | DDKAPI
|
---|
1906 | EngModifySurface(
|
---|
1907 | IN HSURF hsurf,
|
---|
1908 | IN HDEV hdev,
|
---|
1909 | IN FLONG flHooks,
|
---|
1910 | IN FLONG flSurface,
|
---|
1911 | IN DHSURF dhsurf,
|
---|
1912 | IN VOID *pvScan0,
|
---|
1913 | IN LONG lDelta,
|
---|
1914 | IN VOID *pvReserved);
|
---|
1915 |
|
---|
1916 | WIN32KAPI
|
---|
1917 | VOID
|
---|
1918 | DDKAPI
|
---|
1919 | EngMovePointer(
|
---|
1920 | IN SURFOBJ *pso,
|
---|
1921 | IN LONG x,
|
---|
1922 | IN LONG y,
|
---|
1923 | IN RECTL *prcl);
|
---|
1924 |
|
---|
1925 | WIN32KAPI
|
---|
1926 | int
|
---|
1927 | DDKAPI
|
---|
1928 | EngMulDiv(
|
---|
1929 | IN int a,
|
---|
1930 | IN int b,
|
---|
1931 | IN int c);
|
---|
1932 |
|
---|
1933 | WIN32KAPI
|
---|
1934 | VOID
|
---|
1935 | DDKAPI
|
---|
1936 | EngMultiByteToUnicodeN(
|
---|
1937 | OUT LPWSTR UnicodeString,
|
---|
1938 | IN ULONG MaxBytesInUnicodeString,
|
---|
1939 | OUT PULONG BytesInUnicodeString,
|
---|
1940 | IN PCHAR MultiByteString,
|
---|
1941 | IN ULONG BytesInMultiByteString);
|
---|
1942 |
|
---|
1943 | WIN32KAPI
|
---|
1944 | INT
|
---|
1945 | DDKAPI
|
---|
1946 | EngMultiByteToWideChar(
|
---|
1947 | IN UINT CodePage,
|
---|
1948 | OUT LPWSTR WideCharString,
|
---|
1949 | IN INT BytesInWideCharString,
|
---|
1950 | IN LPSTR MultiByteString,
|
---|
1951 | IN INT BytesInMultiByteString);
|
---|
1952 |
|
---|
1953 | WIN32KAPI
|
---|
1954 | BOOL
|
---|
1955 | DDKAPI
|
---|
1956 | EngPaint(
|
---|
1957 | IN SURFOBJ *pso,
|
---|
1958 | IN CLIPOBJ *pco,
|
---|
1959 | IN BRUSHOBJ *pbo,
|
---|
1960 | IN POINTL *pptlBrushOrg,
|
---|
1961 | IN MIX mix);
|
---|
1962 |
|
---|
1963 | WIN32KAPI
|
---|
1964 | BOOL
|
---|
1965 | DDKAPI
|
---|
1966 | EngPlgBlt(
|
---|
1967 | IN SURFOBJ *psoTrg,
|
---|
1968 | IN SURFOBJ *psoSrc,
|
---|
1969 | IN SURFOBJ *psoMsk,
|
---|
1970 | IN CLIPOBJ *pco,
|
---|
1971 | IN XLATEOBJ *pxlo,
|
---|
1972 | IN COLORADJUSTMENT *pca,
|
---|
1973 | IN POINTL *pptlBrushOrg,
|
---|
1974 | IN POINTFIX *pptfx,
|
---|
1975 | IN RECTL *prcl,
|
---|
1976 | IN POINTL *pptl,
|
---|
1977 | IN ULONG iMode);
|
---|
1978 |
|
---|
1979 | WIN32KAPI
|
---|
1980 | VOID
|
---|
1981 | DDKAPI
|
---|
1982 | EngProbeForRead(
|
---|
1983 | IN PVOID Address,
|
---|
1984 | IN ULONG Length,
|
---|
1985 | IN ULONG Alignment);
|
---|
1986 |
|
---|
1987 | WIN32KAPI
|
---|
1988 | VOID
|
---|
1989 | DDKAPI
|
---|
1990 | EngProbeForReadAndWrite(
|
---|
1991 | IN PVOID Address,
|
---|
1992 | IN ULONG Length,
|
---|
1993 | IN ULONG Alignment);
|
---|
1994 |
|
---|
1995 | typedef enum _ENG_DEVICE_ATTRIBUTE {
|
---|
1996 | QDA_RESERVED = 0,
|
---|
1997 | QDA_ACCELERATION_LEVEL
|
---|
1998 | } ENG_DEVICE_ATTRIBUTE;
|
---|
1999 |
|
---|
2000 | WIN32KAPI
|
---|
2001 | BOOL
|
---|
2002 | DDKAPI
|
---|
2003 | EngQueryDeviceAttribute(
|
---|
2004 | IN HDEV hdev,
|
---|
2005 | IN ENG_DEVICE_ATTRIBUTE devAttr,
|
---|
2006 | IN VOID *pvIn,
|
---|
2007 | IN ULONG ulInSize,
|
---|
2008 | OUT VOID *pvOut,
|
---|
2009 | OUT ULONG ulOutSize);
|
---|
2010 |
|
---|
2011 | WIN32KAPI
|
---|
2012 | LARGE_INTEGER
|
---|
2013 | DDKAPI
|
---|
2014 | EngQueryFileTimeStamp(
|
---|
2015 | IN LPWSTR pwsz);
|
---|
2016 |
|
---|
2017 | WIN32KAPI
|
---|
2018 | VOID
|
---|
2019 | DDKAPI
|
---|
2020 | EngQueryLocalTime(
|
---|
2021 | OUT PENG_TIME_FIELDS ptf);
|
---|
2022 |
|
---|
2023 | WIN32KAPI
|
---|
2024 | ULONG
|
---|
2025 | DDKAPI
|
---|
2026 | EngQueryPalette(
|
---|
2027 | IN HPALETTE hPal,
|
---|
2028 | OUT ULONG *piMode,
|
---|
2029 | IN ULONG cColors,
|
---|
2030 | OUT ULONG *pulColors);
|
---|
2031 |
|
---|
2032 | WIN32KAPI
|
---|
2033 | VOID
|
---|
2034 | DDKAPI
|
---|
2035 | EngQueryPerformanceCounter(
|
---|
2036 | OUT LONGLONG *pPerformanceCount);
|
---|
2037 |
|
---|
2038 | WIN32KAPI
|
---|
2039 | VOID
|
---|
2040 | DDKAPI
|
---|
2041 | EngQueryPerformanceFrequency(
|
---|
2042 | OUT LONGLONG *pFrequency);
|
---|
2043 |
|
---|
2044 | typedef enum _ENG_SYSTEM_ATTRIBUTE {
|
---|
2045 | EngProcessorFeature = 1,
|
---|
2046 | EngNumberOfProcessors,
|
---|
2047 | EngOptimumAvailableUserMemory,
|
---|
2048 | EngOptimumAvailableSystemMemory,
|
---|
2049 | } ENG_SYSTEM_ATTRIBUTE;
|
---|
2050 |
|
---|
2051 | #define QSA_MMX 0x00000100
|
---|
2052 | #define QSA_SSE 0x00002000
|
---|
2053 | #define QSA_3DNOW 0x00004000
|
---|
2054 |
|
---|
2055 | WIN32KAPI
|
---|
2056 | BOOL
|
---|
2057 | DDKAPI
|
---|
2058 | EngQuerySystemAttribute(
|
---|
2059 | IN ENG_SYSTEM_ATTRIBUTE CapNum,
|
---|
2060 | OUT PDWORD pCapability);
|
---|
2061 |
|
---|
2062 | WIN32KAPI
|
---|
2063 | LONG
|
---|
2064 | DDKAPI
|
---|
2065 | EngReadStateEvent(
|
---|
2066 | IN PEVENT pEvent);
|
---|
2067 |
|
---|
2068 | WIN32KAPI
|
---|
2069 | VOID
|
---|
2070 | DDKAPI
|
---|
2071 | EngReleaseSemaphore(
|
---|
2072 | IN HSEMAPHORE hsem);
|
---|
2073 |
|
---|
2074 | WIN32KAPI
|
---|
2075 | BOOL
|
---|
2076 | DDKAPI
|
---|
2077 | EngRestoreFloatingPointState(
|
---|
2078 | IN VOID *pBuffer);
|
---|
2079 |
|
---|
2080 | WIN32KAPI
|
---|
2081 | ULONG
|
---|
2082 | DDKAPI
|
---|
2083 | EngSaveFloatingPointState(
|
---|
2084 | OUT VOID *pBuffer,
|
---|
2085 | IN ULONG cjBufferSize);
|
---|
2086 |
|
---|
2087 | WIN32KAPI
|
---|
2088 | HANDLE
|
---|
2089 | DDKAPI
|
---|
2090 | EngSecureMem(
|
---|
2091 | IN PVOID Address,
|
---|
2092 | IN ULONG Length);
|
---|
2093 |
|
---|
2094 | WIN32KAPI
|
---|
2095 | LONG
|
---|
2096 | DDKAPI
|
---|
2097 | EngSetEvent(
|
---|
2098 | IN PEVENT pEvent);
|
---|
2099 |
|
---|
2100 | WIN32KAPI
|
---|
2101 | VOID
|
---|
2102 | DDKAPI
|
---|
2103 | EngSetLastError(
|
---|
2104 | IN ULONG iError);
|
---|
2105 |
|
---|
2106 | WIN32KAPI
|
---|
2107 | ULONG
|
---|
2108 | DDKAPI
|
---|
2109 | EngSetPointerShape(
|
---|
2110 | IN SURFOBJ *pso,
|
---|
2111 | IN SURFOBJ *psoMask,
|
---|
2112 | IN SURFOBJ *psoColor,
|
---|
2113 | IN XLATEOBJ *pxlo,
|
---|
2114 | IN LONG xHot,
|
---|
2115 | IN LONG yHot,
|
---|
2116 | IN LONG x,
|
---|
2117 | IN LONG y,
|
---|
2118 | IN RECTL *prcl,
|
---|
2119 | IN FLONG fl);
|
---|
2120 |
|
---|
2121 | WIN32KAPI
|
---|
2122 | BOOL
|
---|
2123 | DDKAPI
|
---|
2124 | EngSetPointerTag(
|
---|
2125 | IN HDEV hdev,
|
---|
2126 | IN SURFOBJ *psoMask,
|
---|
2127 | IN SURFOBJ *psoColor,
|
---|
2128 | IN XLATEOBJ *pxlo,
|
---|
2129 | IN FLONG fl);
|
---|
2130 |
|
---|
2131 | WIN32KAPI
|
---|
2132 | DWORD
|
---|
2133 | DDKAPI
|
---|
2134 | EngSetPrinterData(
|
---|
2135 | IN HANDLE hPrinter,
|
---|
2136 | IN LPWSTR pType,
|
---|
2137 | IN DWORD dwType,
|
---|
2138 | IN LPBYTE lpbPrinterData,
|
---|
2139 | IN DWORD cjPrinterData);
|
---|
2140 |
|
---|
2141 | typedef int DDKCDECLAPI (*SORTCOMP)(const void *pv1, const void *pv2);
|
---|
2142 |
|
---|
2143 | WIN32KAPI
|
---|
2144 | VOID
|
---|
2145 | DDKAPI
|
---|
2146 | EngSort(
|
---|
2147 | IN OUT PBYTE pjBuf,
|
---|
2148 | IN ULONG c,
|
---|
2149 | IN ULONG cjElem,
|
---|
2150 | IN SORTCOMP pfnComp);
|
---|
2151 |
|
---|
2152 | WIN32KAPI
|
---|
2153 | BOOL
|
---|
2154 | DDKAPI
|
---|
2155 | EngStretchBlt(
|
---|
2156 | IN SURFOBJ *psoDest,
|
---|
2157 | IN SURFOBJ *psoSrc,
|
---|
2158 | IN SURFOBJ *psoMask,
|
---|
2159 | IN CLIPOBJ *pco,
|
---|
2160 | IN XLATEOBJ *pxlo,
|
---|
2161 | IN COLORADJUSTMENT *pca,
|
---|
2162 | IN POINTL *pptlHTOrg,
|
---|
2163 | IN RECTL *prclDest,
|
---|
2164 | IN RECTL *prclSrc,
|
---|
2165 | IN POINTL *pptlMask,
|
---|
2166 | IN ULONG iMode);
|
---|
2167 |
|
---|
2168 | WIN32KAPI
|
---|
2169 | BOOL
|
---|
2170 | DDKAPI
|
---|
2171 | EngStretchBltROP(
|
---|
2172 | IN SURFOBJ *psoDest,
|
---|
2173 | IN SURFOBJ *psoSrc,
|
---|
2174 | IN SURFOBJ *psoMask,
|
---|
2175 | IN CLIPOBJ *pco,
|
---|
2176 | IN XLATEOBJ *pxlo,
|
---|
2177 | IN COLORADJUSTMENT *pca,
|
---|
2178 | IN POINTL *pptlHTOrg,
|
---|
2179 | IN RECTL *prclDest,
|
---|
2180 | IN RECTL *prclSrc,
|
---|
2181 | IN POINTL *pptlMask,
|
---|
2182 | IN ULONG iMode,
|
---|
2183 | IN BRUSHOBJ *pbo,
|
---|
2184 | IN DWORD rop4);
|
---|
2185 |
|
---|
2186 | WIN32KAPI
|
---|
2187 | BOOL
|
---|
2188 | DDKAPI
|
---|
2189 | EngStrokeAndFillPath(
|
---|
2190 | IN SURFOBJ *pso,
|
---|
2191 | IN PATHOBJ *ppo,
|
---|
2192 | IN CLIPOBJ *pco,
|
---|
2193 | IN XFORMOBJ *pxo,
|
---|
2194 | IN BRUSHOBJ *pboStroke,
|
---|
2195 | IN LINEATTRS *plineattrs,
|
---|
2196 | IN BRUSHOBJ *pboFill,
|
---|
2197 | IN POINTL *pptlBrushOrg,
|
---|
2198 | IN MIX mixFill,
|
---|
2199 | IN FLONG flOptions);
|
---|
2200 |
|
---|
2201 | WIN32KAPI
|
---|
2202 | BOOL
|
---|
2203 | DDKAPI
|
---|
2204 | EngStrokePath(
|
---|
2205 | IN SURFOBJ *pso,
|
---|
2206 | IN PATHOBJ *ppo,
|
---|
2207 | IN CLIPOBJ *pco,
|
---|
2208 | IN XFORMOBJ *pxo,
|
---|
2209 | IN BRUSHOBJ *pbo,
|
---|
2210 | IN POINTL *pptlBrushOrg,
|
---|
2211 | IN LINEATTRS *plineattrs,
|
---|
2212 | IN MIX mix);
|
---|
2213 |
|
---|
2214 | WIN32KAPI
|
---|
2215 | BOOL
|
---|
2216 | DDKAPI
|
---|
2217 | EngTextOut(
|
---|
2218 | IN SURFOBJ *pso,
|
---|
2219 | IN STROBJ *pstro,
|
---|
2220 | IN FONTOBJ *pfo,
|
---|
2221 | IN CLIPOBJ *pco,
|
---|
2222 | IN RECTL *prclExtra,
|
---|
2223 | IN RECTL *prclOpaque,
|
---|
2224 | IN BRUSHOBJ *pboFore,
|
---|
2225 | IN BRUSHOBJ *pboOpaque,
|
---|
2226 | IN POINTL *pptlOrg,
|
---|
2227 | IN MIX mix);
|
---|
2228 |
|
---|
2229 | WIN32KAPI
|
---|
2230 | BOOL
|
---|
2231 | DDKAPI
|
---|
2232 | EngTransparentBlt(
|
---|
2233 | IN SURFOBJ *psoDst,
|
---|
2234 | IN SURFOBJ *psoSrc,
|
---|
2235 | IN CLIPOBJ *pco,
|
---|
2236 | IN XLATEOBJ *pxlo,
|
---|
2237 | IN RECTL *prclDst,
|
---|
2238 | IN RECTL *prclSrc,
|
---|
2239 | IN ULONG iTransColor,
|
---|
2240 | IN ULONG ulReserved);
|
---|
2241 |
|
---|
2242 | WIN32KAPI
|
---|
2243 | VOID
|
---|
2244 | DDKAPI
|
---|
2245 | EngUnicodeToMultiByteN(
|
---|
2246 | OUT PCHAR MultiByteString,
|
---|
2247 | IN ULONG MaxBytesInMultiByteString,
|
---|
2248 | OUT PULONG BytesInMultiByteString,
|
---|
2249 | IN PWSTR UnicodeString,
|
---|
2250 | IN ULONG BytesInUnicodeString);
|
---|
2251 |
|
---|
2252 | WIN32KAPI
|
---|
2253 | VOID
|
---|
2254 | DDKAPI
|
---|
2255 | EngUnloadImage(
|
---|
2256 | IN HANDLE hModule);
|
---|
2257 |
|
---|
2258 | WIN32KAPI
|
---|
2259 | BOOL
|
---|
2260 | DDKAPI
|
---|
2261 | EngUnlockDirectDrawSurface(
|
---|
2262 | IN PDD_SURFACE_LOCAL pSurface);
|
---|
2263 |
|
---|
2264 | WIN32KAPI
|
---|
2265 | BOOL
|
---|
2266 | DDKAPI
|
---|
2267 | EngUnlockDriverObj(
|
---|
2268 | IN HDRVOBJ hdo);
|
---|
2269 |
|
---|
2270 | WIN32KAPI
|
---|
2271 | VOID
|
---|
2272 | DDKAPI
|
---|
2273 | EngUnlockSurface(
|
---|
2274 | IN SURFOBJ *pso);
|
---|
2275 |
|
---|
2276 | WIN32KAPI
|
---|
2277 | BOOL
|
---|
2278 | DDKAPI
|
---|
2279 | EngUnmapEvent(
|
---|
2280 | IN PEVENT pEvent);
|
---|
2281 |
|
---|
2282 | WIN32KAPI
|
---|
2283 | BOOL
|
---|
2284 | DDKAPI
|
---|
2285 | EngUnmapFile(
|
---|
2286 | IN ULONG_PTR iFile);
|
---|
2287 |
|
---|
2288 | WIN32KAPI
|
---|
2289 | VOID
|
---|
2290 | DDKAPI
|
---|
2291 | EngUnmapFontFile(
|
---|
2292 | ULONG_PTR iFile);
|
---|
2293 |
|
---|
2294 | WIN32KAPI
|
---|
2295 | VOID
|
---|
2296 | DDKAPI
|
---|
2297 | EngUnmapFontFileFD(
|
---|
2298 | IN ULONG_PTR iFile);
|
---|
2299 |
|
---|
2300 | WIN32KAPI
|
---|
2301 | VOID
|
---|
2302 | DDKAPI
|
---|
2303 | EngUnsecureMem(
|
---|
2304 | IN HANDLE hSecure);
|
---|
2305 |
|
---|
2306 | WIN32KAPI
|
---|
2307 | BOOL
|
---|
2308 | DDKAPI
|
---|
2309 | EngWaitForSingleObject(
|
---|
2310 | IN PEVENT pEvent,
|
---|
2311 | IN PLARGE_INTEGER pTimeOut);
|
---|
2312 |
|
---|
2313 | WIN32KAPI
|
---|
2314 | INT
|
---|
2315 | DDKAPI
|
---|
2316 | EngWideCharToMultiByte(
|
---|
2317 | IN UINT CodePage,
|
---|
2318 | IN LPWSTR WideCharString,
|
---|
2319 | IN INT BytesInWideCharString,
|
---|
2320 | OUT LPSTR MultiByteString,
|
---|
2321 | IN INT BytesInMultiByteString);
|
---|
2322 |
|
---|
2323 | WIN32KAPI
|
---|
2324 | BOOL
|
---|
2325 | DDKAPI
|
---|
2326 | EngWritePrinter(
|
---|
2327 | IN HANDLE hPrinter,
|
---|
2328 | IN LPVOID pBuf,
|
---|
2329 | IN DWORD cbBuf,
|
---|
2330 | OUT LPDWORD pcWritten);
|
---|
2331 |
|
---|
2332 | WIN32KAPI
|
---|
2333 | VOID
|
---|
2334 | DDKAPI
|
---|
2335 | FLOATOBJ_Add(
|
---|
2336 | IN OUT PFLOATOBJ pf,
|
---|
2337 | IN PFLOATOBJ pf1);
|
---|
2338 |
|
---|
2339 | WIN32KAPI
|
---|
2340 | VOID
|
---|
2341 | DDKAPI
|
---|
2342 | FLOATOBJ_AddFloat(
|
---|
2343 | IN OUT PFLOATOBJ pf,
|
---|
2344 | IN FLOATL f);
|
---|
2345 |
|
---|
2346 | WIN32KAPI
|
---|
2347 | VOID
|
---|
2348 | DDKAPI
|
---|
2349 | FLOATOBJ_AddLong(
|
---|
2350 | IN OUT PFLOATOBJ pf,
|
---|
2351 | IN LONG l);
|
---|
2352 |
|
---|
2353 | WIN32KAPI
|
---|
2354 | VOID
|
---|
2355 | DDKAPI
|
---|
2356 | FLOATOBJ_Div(
|
---|
2357 | IN OUT PFLOATOBJ pf,
|
---|
2358 | IN PFLOATOBJ pf1);
|
---|
2359 |
|
---|
2360 | WIN32KAPI
|
---|
2361 | VOID
|
---|
2362 | DDKAPI
|
---|
2363 | FLOATOBJ_DivFloat(
|
---|
2364 | IN OUT PFLOATOBJ pf,
|
---|
2365 | IN FLOATL f);
|
---|
2366 |
|
---|
2367 | WIN32KAPI
|
---|
2368 | VOID
|
---|
2369 | DDKAPI
|
---|
2370 | FLOATOBJ_DivLong(
|
---|
2371 | IN OUT PFLOATOBJ pf,
|
---|
2372 | IN LONG l);
|
---|
2373 |
|
---|
2374 | WIN32KAPI
|
---|
2375 | BOOL
|
---|
2376 | DDKAPI
|
---|
2377 | FLOATOBJ_Equal(
|
---|
2378 | IN PFLOATOBJ pf,
|
---|
2379 | IN PFLOATOBJ pf1);
|
---|
2380 |
|
---|
2381 | WIN32KAPI
|
---|
2382 | BOOL
|
---|
2383 | DDKAPI
|
---|
2384 | FLOATOBJ_EqualLong(
|
---|
2385 | IN PFLOATOBJ pf,
|
---|
2386 | IN LONG l);
|
---|
2387 |
|
---|
2388 | WIN32KAPI
|
---|
2389 | LONG
|
---|
2390 | DDKAPI
|
---|
2391 | FLOATOBJ_GetFloat(
|
---|
2392 | IN PFLOATOBJ pf);
|
---|
2393 |
|
---|
2394 | WIN32KAPI
|
---|
2395 | LONG
|
---|
2396 | DDKAPI
|
---|
2397 | FLOATOBJ_GetLong(
|
---|
2398 | IN PFLOATOBJ pf);
|
---|
2399 |
|
---|
2400 | WIN32KAPI
|
---|
2401 | BOOL
|
---|
2402 | DDKAPI
|
---|
2403 | FLOATOBJ_GreaterThan(
|
---|
2404 | IN PFLOATOBJ pf,
|
---|
2405 | IN PFLOATOBJ pf1);
|
---|
2406 |
|
---|
2407 | WIN32KAPI
|
---|
2408 | BOOL
|
---|
2409 | DDKAPI
|
---|
2410 | FLOATOBJ_GreaterThanLong(
|
---|
2411 | IN PFLOATOBJ pf,
|
---|
2412 | IN LONG l);
|
---|
2413 |
|
---|
2414 | WIN32KAPI
|
---|
2415 | BOOL
|
---|
2416 | DDKAPI
|
---|
2417 | FLOATOBJ_LessThan(
|
---|
2418 | IN PFLOATOBJ pf,
|
---|
2419 | IN PFLOATOBJ pf1);
|
---|
2420 |
|
---|
2421 | WIN32KAPI
|
---|
2422 | BOOL
|
---|
2423 | DDKAPI
|
---|
2424 | FLOATOBJ_LessThanLong(
|
---|
2425 | IN PFLOATOBJ pf,
|
---|
2426 | IN LONG l);
|
---|
2427 |
|
---|
2428 | WIN32KAPI
|
---|
2429 | VOID
|
---|
2430 | DDKAPI
|
---|
2431 | FLOATOBJ_Mul(
|
---|
2432 | IN OUT PFLOATOBJ pf,
|
---|
2433 | IN PFLOATOBJ pf1);
|
---|
2434 |
|
---|
2435 | WIN32KAPI
|
---|
2436 | VOID
|
---|
2437 | DDKAPI
|
---|
2438 | FLOATOBJ_MulFloat(
|
---|
2439 | IN OUT PFLOATOBJ pf,
|
---|
2440 | IN FLOATL f);
|
---|
2441 |
|
---|
2442 | WIN32KAPI
|
---|
2443 | VOID
|
---|
2444 | DDKAPI
|
---|
2445 | FLOATOBJ_MulLong(
|
---|
2446 | IN OUT PFLOATOBJ pf,
|
---|
2447 | IN LONG l);
|
---|
2448 |
|
---|
2449 | WIN32KAPI
|
---|
2450 | VOID
|
---|
2451 | DDKAPI
|
---|
2452 | FLOATOBJ_Neg(
|
---|
2453 | IN OUT PFLOATOBJ pf);
|
---|
2454 |
|
---|
2455 | WIN32KAPI
|
---|
2456 | VOID
|
---|
2457 | DDKAPI
|
---|
2458 | FLOATOBJ_SetFloat(
|
---|
2459 | OUT PFLOATOBJ pf,
|
---|
2460 | IN FLOATL f);
|
---|
2461 |
|
---|
2462 | WIN32KAPI
|
---|
2463 | VOID
|
---|
2464 | DDKAPI
|
---|
2465 | FLOATOBJ_SetLong(
|
---|
2466 | OUT PFLOATOBJ pf,
|
---|
2467 | IN LONG l);
|
---|
2468 |
|
---|
2469 | WIN32KAPI
|
---|
2470 | VOID
|
---|
2471 | DDKAPI
|
---|
2472 | FLOATOBJ_Sub(
|
---|
2473 | IN OUT PFLOATOBJ pf,
|
---|
2474 | IN PFLOATOBJ pf1);
|
---|
2475 |
|
---|
2476 | WIN32KAPI
|
---|
2477 | VOID
|
---|
2478 | DDKAPI
|
---|
2479 | FLOATOBJ_SubFloat(
|
---|
2480 | IN OUT PFLOATOBJ pf,
|
---|
2481 | IN FLOATL f);
|
---|
2482 |
|
---|
2483 | WIN32KAPI
|
---|
2484 | VOID
|
---|
2485 | DDKAPI
|
---|
2486 | FLOATOBJ_SubLong(
|
---|
2487 | IN OUT PFLOATOBJ pf,
|
---|
2488 | IN LONG l);
|
---|
2489 |
|
---|
2490 | WIN32KAPI
|
---|
2491 | ULONG
|
---|
2492 | DDKAPI
|
---|
2493 | FONTOBJ_cGetAllGlyphHandles(
|
---|
2494 | IN FONTOBJ *pfo,
|
---|
2495 | OUT HGLYPH *phg);
|
---|
2496 |
|
---|
2497 | WIN32KAPI
|
---|
2498 | ULONG
|
---|
2499 | DDKAPI
|
---|
2500 | FONTOBJ_cGetGlyphs(
|
---|
2501 | IN FONTOBJ *pfo,
|
---|
2502 | IN ULONG iMode,
|
---|
2503 | IN ULONG cGlyph,
|
---|
2504 | IN HGLYPH *phg,
|
---|
2505 | OUT PVOID *ppvGlyph);
|
---|
2506 |
|
---|
2507 | WIN32KAPI
|
---|
2508 | FD_GLYPHSET*
|
---|
2509 | DDKAPI
|
---|
2510 | FONTOBJ_pfdg(
|
---|
2511 | IN FONTOBJ *pfo);
|
---|
2512 |
|
---|
2513 | WIN32KAPI
|
---|
2514 | IFIMETRICS*
|
---|
2515 | DDKAPI
|
---|
2516 | FONTOBJ_pifi(
|
---|
2517 | IN FONTOBJ *pfo);
|
---|
2518 |
|
---|
2519 | WIN32KAPI
|
---|
2520 | PBYTE
|
---|
2521 | DDKAPI
|
---|
2522 | FONTOBJ_pjOpenTypeTablePointer(
|
---|
2523 | IN FONTOBJ *pfo,
|
---|
2524 | IN ULONG ulTag,
|
---|
2525 | OUT ULONG *pcjTable);
|
---|
2526 |
|
---|
2527 | WIN32KAPI
|
---|
2528 | PFD_GLYPHATTR
|
---|
2529 | DDKAPI
|
---|
2530 | FONTOBJ_pQueryGlyphAttrs(
|
---|
2531 | IN FONTOBJ *pfo,
|
---|
2532 | IN ULONG iMode);
|
---|
2533 |
|
---|
2534 | WIN32KAPI
|
---|
2535 | PVOID
|
---|
2536 | DDKAPI
|
---|
2537 | FONTOBJ_pvTrueTypeFontFile(
|
---|
2538 | IN FONTOBJ *pfo,
|
---|
2539 | OUT ULONG *pcjFile);
|
---|
2540 |
|
---|
2541 | WIN32KAPI
|
---|
2542 | LPWSTR
|
---|
2543 | DDKAPI
|
---|
2544 | FONTOBJ_pwszFontFilePaths(
|
---|
2545 | IN FONTOBJ *pfo,
|
---|
2546 | OUT ULONG *pcwc);
|
---|
2547 |
|
---|
2548 | WIN32KAPI
|
---|
2549 | XFORMOBJ*
|
---|
2550 | DDKAPI
|
---|
2551 | FONTOBJ_pxoGetXform(
|
---|
2552 | IN FONTOBJ *pfo);
|
---|
2553 |
|
---|
2554 | WIN32KAPI
|
---|
2555 | VOID
|
---|
2556 | DDKAPI
|
---|
2557 | FONTOBJ_vGetInfo(
|
---|
2558 | IN FONTOBJ *pfo,
|
---|
2559 | IN ULONG cjSize,
|
---|
2560 | OUT FONTINFO *pfi);
|
---|
2561 |
|
---|
2562 | WIN32KAPI
|
---|
2563 | FLATPTR
|
---|
2564 | DDKAPI
|
---|
2565 | HeapVidMemAllocAligned(
|
---|
2566 | IN LPVIDMEM lpVidMem,
|
---|
2567 | IN DWORD dwWidth,
|
---|
2568 | IN DWORD dwHeight,
|
---|
2569 | IN LPSURFACEALIGNMENT lpAlignment,
|
---|
2570 | OUT LPLONG lpNewPitch);
|
---|
2571 |
|
---|
2572 | WIN32KAPI
|
---|
2573 | LONG
|
---|
2574 | DDKAPI
|
---|
2575 | HT_ComputeRGBGammaTable(
|
---|
2576 | IN USHORT GammaTableEntries,
|
---|
2577 | IN USHORT GammaTableType,
|
---|
2578 | IN USHORT RedGamma,
|
---|
2579 | IN USHORT GreenGamma,
|
---|
2580 | IN USHORT BlueGamma,
|
---|
2581 | OUT LPBYTE pGammaTable);
|
---|
2582 |
|
---|
2583 | WIN32KAPI
|
---|
2584 | LONG
|
---|
2585 | DDKAPI
|
---|
2586 | HT_Get8BPPFormatPalette(
|
---|
2587 | OUT LPPALETTEENTRY pPaletteEntry,
|
---|
2588 | IN USHORT RedGamma,
|
---|
2589 | IN USHORT GreenGamma,
|
---|
2590 | IN USHORT BlueGamma);
|
---|
2591 |
|
---|
2592 | WIN32KAPI
|
---|
2593 | LONG
|
---|
2594 | DDKAPI
|
---|
2595 | HT_Get8BPPMaskPalette(
|
---|
2596 | IN OUT LPPALETTEENTRY pPaletteEntry,
|
---|
2597 | IN BOOL Use8BPPMaskPal,
|
---|
2598 | IN BYTE CMYMask,
|
---|
2599 | IN USHORT RedGamma,
|
---|
2600 | IN USHORT GreenGamma,
|
---|
2601 | IN USHORT BlueGamma);
|
---|
2602 |
|
---|
2603 | WIN32KAPI
|
---|
2604 | LONG
|
---|
2605 | DDKAPI
|
---|
2606 | HTUI_DeviceColorAdjustment(
|
---|
2607 | IN LPSTR pDeviceName,
|
---|
2608 | OUT PDEVHTADJDATA pDevHTAdjData);
|
---|
2609 |
|
---|
2610 | WIN32KAPI
|
---|
2611 | ULONG
|
---|
2612 | DDKAPI
|
---|
2613 | PALOBJ_cGetColors(
|
---|
2614 | IN PALOBJ *ppalo,
|
---|
2615 | IN ULONG iStart,
|
---|
2616 | IN ULONG cColors,
|
---|
2617 | OUT ULONG *pulColors);
|
---|
2618 |
|
---|
2619 | WIN32KAPI
|
---|
2620 | BOOL
|
---|
2621 | DDKAPI
|
---|
2622 | PATHOBJ_bCloseFigure(
|
---|
2623 | IN PATHOBJ *ppo);
|
---|
2624 |
|
---|
2625 | WIN32KAPI
|
---|
2626 | BOOL
|
---|
2627 | DDKAPI
|
---|
2628 | PATHOBJ_bEnum(
|
---|
2629 | IN PATHOBJ *ppo,
|
---|
2630 | OUT PATHDATA *ppd);
|
---|
2631 |
|
---|
2632 | WIN32KAPI
|
---|
2633 | BOOL
|
---|
2634 | DDKAPI
|
---|
2635 | PATHOBJ_bEnumClipLines(
|
---|
2636 | IN PATHOBJ *ppo,
|
---|
2637 | IN ULONG cb,
|
---|
2638 | OUT CLIPLINE *pcl);
|
---|
2639 |
|
---|
2640 | WIN32KAPI
|
---|
2641 | BOOL
|
---|
2642 | DDKAPI
|
---|
2643 | PATHOBJ_bMoveTo(
|
---|
2644 | IN PATHOBJ *ppo,
|
---|
2645 | IN POINTFIX ptfx);
|
---|
2646 |
|
---|
2647 | WIN32KAPI
|
---|
2648 | BOOL
|
---|
2649 | DDKAPI
|
---|
2650 | PATHOBJ_bPolyBezierTo(
|
---|
2651 | IN PATHOBJ *ppo,
|
---|
2652 | IN POINTFIX *pptfx,
|
---|
2653 | IN ULONG cptfx);
|
---|
2654 |
|
---|
2655 | WIN32KAPI
|
---|
2656 | BOOL
|
---|
2657 | DDKAPI
|
---|
2658 | PATHOBJ_bPolyLineTo(
|
---|
2659 | IN PATHOBJ *ppo,
|
---|
2660 | IN POINTFIX *pptfx,
|
---|
2661 | IN ULONG cptfx);
|
---|
2662 |
|
---|
2663 | WIN32KAPI
|
---|
2664 | VOID
|
---|
2665 | DDKAPI
|
---|
2666 | PATHOBJ_vEnumStart(
|
---|
2667 | IN PATHOBJ *ppo);
|
---|
2668 |
|
---|
2669 | WIN32KAPI
|
---|
2670 | VOID
|
---|
2671 | DDKAPI
|
---|
2672 | PATHOBJ_vEnumStartClipLines(
|
---|
2673 | IN PATHOBJ *ppo,
|
---|
2674 | IN CLIPOBJ *pco,
|
---|
2675 | IN SURFOBJ *pso,
|
---|
2676 | IN LINEATTRS *pla);
|
---|
2677 |
|
---|
2678 | WIN32KAPI
|
---|
2679 | VOID
|
---|
2680 | DDKAPI
|
---|
2681 | PATHOBJ_vGetBounds(
|
---|
2682 | IN PATHOBJ *ppo,
|
---|
2683 | OUT PRECTFX prectfx);
|
---|
2684 |
|
---|
2685 | WIN32KAPI
|
---|
2686 | BOOL
|
---|
2687 | DDKAPI
|
---|
2688 | STROBJ_bEnum(
|
---|
2689 | IN STROBJ *pstro,
|
---|
2690 | OUT ULONG *pc,
|
---|
2691 | OUT PGLYPHPOS *ppgpos);
|
---|
2692 |
|
---|
2693 | WIN32KAPI
|
---|
2694 | BOOL
|
---|
2695 | DDKAPI
|
---|
2696 | STROBJ_bEnumPositionsOnly(
|
---|
2697 | IN STROBJ *pstro,
|
---|
2698 | OUT ULONG *pc,
|
---|
2699 | OUT PGLYPHPOS *ppgpos);
|
---|
2700 |
|
---|
2701 | WIN32KAPI
|
---|
2702 | BOOL
|
---|
2703 | DDKAPI
|
---|
2704 | STROBJ_bGetAdvanceWidths(
|
---|
2705 | IN STROBJ *pso,
|
---|
2706 | IN ULONG iFirst,
|
---|
2707 | IN ULONG c,
|
---|
2708 | OUT POINTQF *pptqD);
|
---|
2709 |
|
---|
2710 | WIN32KAPI
|
---|
2711 | DWORD
|
---|
2712 | DDKAPI
|
---|
2713 | STROBJ_dwGetCodePage(
|
---|
2714 | IN STROBJ *pstro);
|
---|
2715 |
|
---|
2716 | WIN32KAPI
|
---|
2717 | FIX
|
---|
2718 | DDKAPI
|
---|
2719 | STROBJ_fxBreakExtra(
|
---|
2720 | IN STROBJ *pstro);
|
---|
2721 |
|
---|
2722 | WIN32KAPI
|
---|
2723 | FIX
|
---|
2724 | DDKAPI
|
---|
2725 | STROBJ_fxCharacterExtra(
|
---|
2726 | IN STROBJ *pstro);
|
---|
2727 |
|
---|
2728 | WIN32KAPI
|
---|
2729 | VOID
|
---|
2730 | DDKAPI
|
---|
2731 | STROBJ_vEnumStart(
|
---|
2732 | IN STROBJ *pstro);
|
---|
2733 |
|
---|
2734 | WIN32KAPI
|
---|
2735 | VOID
|
---|
2736 | DDKAPI
|
---|
2737 | VidMemFree(
|
---|
2738 | IN LPVMEMHEAP pvmh,
|
---|
2739 | IN FLATPTR ptr);
|
---|
2740 |
|
---|
2741 | WIN32KAPI
|
---|
2742 | BOOL
|
---|
2743 | DDKAPI
|
---|
2744 | WNDOBJ_bEnum(
|
---|
2745 | IN WNDOBJ *pwo,
|
---|
2746 | IN ULONG cj,
|
---|
2747 | OUT ULONG *pul);
|
---|
2748 |
|
---|
2749 | WIN32KAPI
|
---|
2750 | ULONG
|
---|
2751 | DDKAPI
|
---|
2752 | WNDOBJ_cEnumStart(
|
---|
2753 | IN WNDOBJ *pwo,
|
---|
2754 | IN ULONG iType,
|
---|
2755 | IN ULONG iDirection,
|
---|
2756 | IN ULONG cLimit);
|
---|
2757 |
|
---|
2758 | WIN32KAPI
|
---|
2759 | VOID
|
---|
2760 | DDKAPI
|
---|
2761 | WNDOBJ_vSetConsumer(
|
---|
2762 | IN WNDOBJ *pwo,
|
---|
2763 | IN PVOID pvConsumer);
|
---|
2764 |
|
---|
2765 | /* XFORMOBJ_bApplyXform.iMode constants */
|
---|
2766 | #define XF_LTOL 0L
|
---|
2767 | #define XF_INV_LTOL 1L
|
---|
2768 | #define XF_LTOFX 2L
|
---|
2769 | #define XF_INV_FXTOL 3L
|
---|
2770 |
|
---|
2771 | WIN32KAPI
|
---|
2772 | BOOL
|
---|
2773 | DDKAPI
|
---|
2774 | XFORMOBJ_bApplyXform(
|
---|
2775 | IN XFORMOBJ *pxo,
|
---|
2776 | IN ULONG iMode,
|
---|
2777 | IN ULONG cPoints,
|
---|
2778 | IN PVOID pvIn,
|
---|
2779 | OUT PVOID pvOut);
|
---|
2780 |
|
---|
2781 | WIN32KAPI
|
---|
2782 | ULONG
|
---|
2783 | DDKAPI
|
---|
2784 | XFORMOBJ_iGetFloatObjXform(
|
---|
2785 | IN XFORMOBJ *pxo,
|
---|
2786 | OUT FLOATOBJ_XFORM *pxfo);
|
---|
2787 |
|
---|
2788 | WIN32KAPI
|
---|
2789 | ULONG
|
---|
2790 | DDKAPI
|
---|
2791 | XFORMOBJ_iGetXform(
|
---|
2792 | IN XFORMOBJ *pxo,
|
---|
2793 | OUT XFORML *pxform);
|
---|
2794 |
|
---|
2795 | /* XLATEOBJ_cGetPalette.iPal constants */
|
---|
2796 | #define XO_SRCPALETTE 1
|
---|
2797 | #define XO_DESTPALETTE 2
|
---|
2798 | #define XO_DESTDCPALETTE 3
|
---|
2799 | #define XO_SRCBITFIELDS 4
|
---|
2800 | #define XO_DESTBITFIELDS 5
|
---|
2801 |
|
---|
2802 | WIN32KAPI
|
---|
2803 | ULONG
|
---|
2804 | DDKAPI
|
---|
2805 | XLATEOBJ_cGetPalette(
|
---|
2806 | IN XLATEOBJ *pxlo,
|
---|
2807 | IN ULONG iPal,
|
---|
2808 | IN ULONG cPal,
|
---|
2809 | OUT ULONG *pPal);
|
---|
2810 |
|
---|
2811 | WIN32KAPI
|
---|
2812 | HANDLE
|
---|
2813 | DDKAPI
|
---|
2814 | XLATEOBJ_hGetColorTransform(
|
---|
2815 | IN XLATEOBJ *pxlo);
|
---|
2816 |
|
---|
2817 | WIN32KAPI
|
---|
2818 | ULONG
|
---|
2819 | DDKAPI
|
---|
2820 | XLATEOBJ_iXlate(
|
---|
2821 | IN XLATEOBJ *pxlo,
|
---|
2822 | IN ULONG iColor);
|
---|
2823 |
|
---|
2824 | WIN32KAPI
|
---|
2825 | ULONG*
|
---|
2826 | DDKAPI
|
---|
2827 | XLATEOBJ_piVector(
|
---|
2828 | IN XLATEOBJ *pxlo);
|
---|
2829 |
|
---|
2830 |
|
---|
2831 |
|
---|
2832 | /* Graphics Driver Functions */
|
---|
2833 |
|
---|
2834 | BOOL
|
---|
2835 | DDKAPI
|
---|
2836 | DrvAlphaBlend(
|
---|
2837 | IN SURFOBJ *psoDest,
|
---|
2838 | IN SURFOBJ *psoSrc,
|
---|
2839 | IN CLIPOBJ *pco,
|
---|
2840 | IN XLATEOBJ *pxlo,
|
---|
2841 | IN RECTL *prclDest,
|
---|
2842 | IN RECTL *prclSrc,
|
---|
2843 | IN BLENDOBJ *pBlendObj);
|
---|
2844 |
|
---|
2845 | BOOL
|
---|
2846 | DDKAPI
|
---|
2847 | DrvAssertMode(
|
---|
2848 | IN DHPDEV dhpdev,
|
---|
2849 | IN BOOL bEnable);
|
---|
2850 |
|
---|
2851 | BOOL
|
---|
2852 | DDKAPI
|
---|
2853 | DrvBitBlt(
|
---|
2854 | IN SURFOBJ *psoTrg,
|
---|
2855 | IN SURFOBJ *psoSrc,
|
---|
2856 | IN SURFOBJ *psoMask,
|
---|
2857 | IN CLIPOBJ *pco,
|
---|
2858 | IN XLATEOBJ *pxlo,
|
---|
2859 | IN RECTL *prclTrg,
|
---|
2860 | IN POINTL *pptlSrc,
|
---|
2861 | IN POINTL *pptlMask,
|
---|
2862 | IN BRUSHOBJ *pbo,
|
---|
2863 | IN POINTL *pptlBrush,
|
---|
2864 | IN ROP4 rop4);
|
---|
2865 |
|
---|
2866 | VOID
|
---|
2867 | DDKAPI
|
---|
2868 | DrvCompletePDEV(
|
---|
2869 | IN DHPDEV dhpdev,
|
---|
2870 | IN HDEV hdev);
|
---|
2871 |
|
---|
2872 | BOOL
|
---|
2873 | DDKAPI
|
---|
2874 | DrvCopyBits(
|
---|
2875 | IN SURFOBJ *psoDest,
|
---|
2876 | IN SURFOBJ *psoSrc,
|
---|
2877 | IN CLIPOBJ *pco,
|
---|
2878 | IN XLATEOBJ *pxlo,
|
---|
2879 | IN RECTL *prclDest,
|
---|
2880 | IN POINTL *pptlSrc);
|
---|
2881 |
|
---|
2882 | HBITMAP
|
---|
2883 | DDKAPI
|
---|
2884 | DrvCreateDeviceBitmap(
|
---|
2885 | IN DHPDEV dhpdev,
|
---|
2886 | IN SIZEL sizl,
|
---|
2887 | IN ULONG iFormat);
|
---|
2888 |
|
---|
2889 | VOID
|
---|
2890 | DDKAPI
|
---|
2891 | DrvDeleteDeviceBitmap(
|
---|
2892 | IN DHSURF dhsurf);
|
---|
2893 |
|
---|
2894 | HBITMAP
|
---|
2895 | DDKAPI
|
---|
2896 | DrvDeriveSurface(
|
---|
2897 | DD_DIRECTDRAW_GLOBAL *pDirectDraw,
|
---|
2898 | DD_SURFACE_LOCAL *pSurface);
|
---|
2899 |
|
---|
2900 | LONG
|
---|
2901 | DDKAPI
|
---|
2902 | DrvDescribePixelFormat(
|
---|
2903 | IN DHPDEV dhpdev,
|
---|
2904 | IN LONG iPixelFormat,
|
---|
2905 | IN ULONG cjpfd,
|
---|
2906 | OUT PIXELFORMATDESCRIPTOR *ppfd);
|
---|
2907 |
|
---|
2908 | VOID
|
---|
2909 | DDKAPI
|
---|
2910 | DrvDestroyFont(
|
---|
2911 | IN FONTOBJ *pfo);
|
---|
2912 |
|
---|
2913 | VOID
|
---|
2914 | DDKAPI
|
---|
2915 | DrvDisableDriver(
|
---|
2916 | VOID);
|
---|
2917 |
|
---|
2918 | VOID
|
---|
2919 | DDKAPI
|
---|
2920 | DrvDisablePDEV(
|
---|
2921 | IN DHPDEV dhpdev);
|
---|
2922 |
|
---|
2923 | VOID
|
---|
2924 | DDKAPI
|
---|
2925 | DrvDisableSurface(
|
---|
2926 | IN DHPDEV dhpdev);
|
---|
2927 |
|
---|
2928 | #define DM_DEFAULT 0x00000001
|
---|
2929 | #define DM_MONOCHROME 0x00000002
|
---|
2930 |
|
---|
2931 | ULONG
|
---|
2932 | DDKAPI
|
---|
2933 | DrvDitherColor(
|
---|
2934 | IN DHPDEV dhpdev,
|
---|
2935 | IN ULONG iMode,
|
---|
2936 | IN ULONG rgb,
|
---|
2937 | OUT ULONG *pul);
|
---|
2938 |
|
---|
2939 | ULONG
|
---|
2940 | DDKAPI
|
---|
2941 | DrvDrawEscape(
|
---|
2942 | IN SURFOBJ *pso,
|
---|
2943 | IN ULONG iEsc,
|
---|
2944 | IN CLIPOBJ *pco,
|
---|
2945 | IN RECTL *prcl,
|
---|
2946 | IN ULONG cjIn,
|
---|
2947 | IN PVOID pvIn);
|
---|
2948 |
|
---|
2949 | BOOL
|
---|
2950 | DDKAPI
|
---|
2951 | DrvEnableDriver(
|
---|
2952 | IN ULONG iEngineVersion,
|
---|
2953 | IN ULONG cj,
|
---|
2954 | OUT DRVENABLEDATA *pded);
|
---|
2955 |
|
---|
2956 | DHPDEV
|
---|
2957 | DDKAPI
|
---|
2958 | DrvEnablePDEV(
|
---|
2959 | IN DEVMODEW *pdm,
|
---|
2960 | IN LPWSTR pwszLogAddress,
|
---|
2961 | IN ULONG cPat,
|
---|
2962 | OUT HSURF *phsurfPatterns,
|
---|
2963 | IN ULONG cjCaps,
|
---|
2964 | OUT ULONG *pdevcaps,
|
---|
2965 | IN ULONG cjDevInfo,
|
---|
2966 | OUT DEVINFO *pdi,
|
---|
2967 | IN HDEV hdev,
|
---|
2968 | IN LPWSTR pwszDeviceName,
|
---|
2969 | IN HANDLE hDriver);
|
---|
2970 |
|
---|
2971 | HSURF
|
---|
2972 | DDKAPI
|
---|
2973 | DrvEnableSurface(
|
---|
2974 | IN DHPDEV dhpdev);
|
---|
2975 |
|
---|
2976 | /* DrvEndDoc.fl constants */
|
---|
2977 | #define ED_ABORTDOC 0x00000001
|
---|
2978 |
|
---|
2979 | BOOL
|
---|
2980 | DDKAPI
|
---|
2981 | DrvEndDoc(
|
---|
2982 | IN SURFOBJ *pso,
|
---|
2983 | IN FLONG fl);
|
---|
2984 |
|
---|
2985 | ULONG
|
---|
2986 | DDKAPI
|
---|
2987 | DrvEscape(
|
---|
2988 | IN SURFOBJ *pso,
|
---|
2989 | IN ULONG iEsc,
|
---|
2990 | IN ULONG cjIn,
|
---|
2991 | IN PVOID pvIn,
|
---|
2992 | IN ULONG cjOut,
|
---|
2993 | OUT PVOID pvOut);
|
---|
2994 |
|
---|
2995 | BOOL
|
---|
2996 | DDKAPI
|
---|
2997 | DrvFillPath(
|
---|
2998 | IN SURFOBJ *pso,
|
---|
2999 | IN PATHOBJ *ppo,
|
---|
3000 | IN CLIPOBJ *pco,
|
---|
3001 | IN BRUSHOBJ *pbo,
|
---|
3002 | IN POINTL *pptlBrushOrg,
|
---|
3003 | IN MIX mix,
|
---|
3004 | IN FLONG flOptions);
|
---|
3005 |
|
---|
3006 | ULONG
|
---|
3007 | DDKAPI
|
---|
3008 | DrvFontManagement(
|
---|
3009 | IN SURFOBJ *pso,
|
---|
3010 | IN FONTOBJ *pfo,
|
---|
3011 | IN ULONG iMode,
|
---|
3012 | IN ULONG cjIn,
|
---|
3013 | IN PVOID pvIn,
|
---|
3014 | IN ULONG cjOut,
|
---|
3015 | OUT PVOID pvOut);
|
---|
3016 |
|
---|
3017 | VOID
|
---|
3018 | DDKAPI
|
---|
3019 | DrvFree(
|
---|
3020 | IN PVOID pv,
|
---|
3021 | IN ULONG_PTR id);
|
---|
3022 |
|
---|
3023 | /* DrvGetGlyphMode return values */
|
---|
3024 | #define FO_HGLYPHS 0L
|
---|
3025 | #define FO_GLYPHBITS 1L
|
---|
3026 | #define FO_PATHOBJ 2L
|
---|
3027 |
|
---|
3028 | ULONG
|
---|
3029 | DDKAPI
|
---|
3030 | DrvGetGlyphMode(
|
---|
3031 | IN DHPDEV dhpdev,
|
---|
3032 | IN FONTOBJ *pfo);
|
---|
3033 |
|
---|
3034 | ULONG
|
---|
3035 | DDKAPI
|
---|
3036 | DrvGetModes(
|
---|
3037 | IN HANDLE hDriver,
|
---|
3038 | IN ULONG cjSize,
|
---|
3039 | OUT DEVMODEW *pdm);
|
---|
3040 |
|
---|
3041 | PVOID
|
---|
3042 | DDKAPI
|
---|
3043 | DrvGetTrueTypeFile(
|
---|
3044 | IN ULONG_PTR iFile,
|
---|
3045 | IN ULONG *pcj);
|
---|
3046 |
|
---|
3047 | BOOL
|
---|
3048 | DDKAPI
|
---|
3049 | DrvGradientFill(
|
---|
3050 | IN SURFOBJ *psoDest,
|
---|
3051 | IN CLIPOBJ *pco,
|
---|
3052 | IN XLATEOBJ *pxlo,
|
---|
3053 | IN TRIVERTEX *pVertex,
|
---|
3054 | IN ULONG nVertex,
|
---|
3055 | IN PVOID pMesh,
|
---|
3056 | IN ULONG nMesh,
|
---|
3057 | IN RECTL *prclExtents,
|
---|
3058 | IN POINTL *pptlDitherOrg,
|
---|
3059 | IN ULONG ulMode);
|
---|
3060 |
|
---|
3061 | BOOL
|
---|
3062 | DDKAPI
|
---|
3063 | DrvIcmCheckBitmapBits(
|
---|
3064 | IN DHPDEV dhpdev,
|
---|
3065 | IN HANDLE hColorTransform,
|
---|
3066 | IN SURFOBJ *pso,
|
---|
3067 | OUT PBYTE paResults);
|
---|
3068 |
|
---|
3069 | HANDLE
|
---|
3070 | DDKAPI
|
---|
3071 | DrvIcmCreateColorTransform(
|
---|
3072 | IN DHPDEV dhpdev,
|
---|
3073 | IN LPLOGCOLORSPACEW pLogColorSpace,
|
---|
3074 | IN PVOID pvSourceProfile,
|
---|
3075 | IN ULONG cjSourceProfile,
|
---|
3076 | IN PVOID pvDestProfile,
|
---|
3077 | IN ULONG cjDestProfile,
|
---|
3078 | IN PVOID pvTargetProfile,
|
---|
3079 | IN ULONG cjTargetProfile,
|
---|
3080 | IN DWORD dwReserved);
|
---|
3081 |
|
---|
3082 | BOOL
|
---|
3083 | DDKAPI
|
---|
3084 | DrvIcmDeleteColorTransform(
|
---|
3085 | IN DHPDEV dhpdev,
|
---|
3086 | IN HANDLE hcmXform);
|
---|
3087 |
|
---|
3088 | /* DrvIcmSetDeviceGammaRamp.iFormat constants */
|
---|
3089 | #define IGRF_RGB_256BYTES 0x00000000
|
---|
3090 | #define IGRF_RGB_256WORDS 0x00000001
|
---|
3091 |
|
---|
3092 | BOOL
|
---|
3093 | DDKAPI
|
---|
3094 | DrvIcmSetDeviceGammaRamp(
|
---|
3095 | IN DHPDEV dhpdev,
|
---|
3096 | IN ULONG iFormat,
|
---|
3097 | IN LPVOID lpRamp);
|
---|
3098 |
|
---|
3099 | BOOL
|
---|
3100 | DDKAPI
|
---|
3101 | DrvLineTo(
|
---|
3102 | SURFOBJ *pso,
|
---|
3103 | CLIPOBJ *pco,
|
---|
3104 | BRUSHOBJ *pbo,
|
---|
3105 | LONG x1,
|
---|
3106 | LONG y1,
|
---|
3107 | LONG x2,
|
---|
3108 | LONG y2,
|
---|
3109 | RECTL *prclBounds,
|
---|
3110 | MIX mix);
|
---|
3111 |
|
---|
3112 | ULONG_PTR
|
---|
3113 | DDKAPI
|
---|
3114 | DrvLoadFontFile(
|
---|
3115 | ULONG cFiles,
|
---|
3116 | ULONG_PTR *piFile,
|
---|
3117 | PVOID *ppvView,
|
---|
3118 | ULONG *pcjView,
|
---|
3119 | DESIGNVECTOR *pdv,
|
---|
3120 | ULONG ulLangID,
|
---|
3121 | ULONG ulFastCheckSum);
|
---|
3122 |
|
---|
3123 | VOID
|
---|
3124 | DDKAPI
|
---|
3125 | DrvMovePointer(
|
---|
3126 | IN SURFOBJ *pso,
|
---|
3127 | IN LONG x,
|
---|
3128 | IN LONG y,
|
---|
3129 | IN RECTL *prcl);
|
---|
3130 |
|
---|
3131 | BOOL
|
---|
3132 | DDKAPI
|
---|
3133 | DrvNextBand(
|
---|
3134 | IN SURFOBJ *pso,
|
---|
3135 | IN POINTL *pptl);
|
---|
3136 |
|
---|
3137 | VOID
|
---|
3138 | DDKAPI
|
---|
3139 | DrvNotify(
|
---|
3140 | IN SURFOBJ *pso,
|
---|
3141 | IN ULONG iType,
|
---|
3142 | IN PVOID pvData);
|
---|
3143 |
|
---|
3144 | BOOL
|
---|
3145 | DDKAPI
|
---|
3146 | DrvOffset(
|
---|
3147 | IN SURFOBJ *pso,
|
---|
3148 | IN LONG x,
|
---|
3149 | IN LONG y,
|
---|
3150 | IN FLONG flReserved);
|
---|
3151 |
|
---|
3152 | BOOL
|
---|
3153 | DDKAPI
|
---|
3154 | DrvPaint(
|
---|
3155 | IN SURFOBJ *pso,
|
---|
3156 | IN CLIPOBJ *pco,
|
---|
3157 | IN BRUSHOBJ *pbo,
|
---|
3158 | IN POINTL *pptlBrushOrg,
|
---|
3159 | IN MIX mix);
|
---|
3160 |
|
---|
3161 | BOOL
|
---|
3162 | DDKAPI
|
---|
3163 | DrvPlgBlt(
|
---|
3164 | IN SURFOBJ *psoTrg,
|
---|
3165 | IN SURFOBJ *psoSrc,
|
---|
3166 | IN SURFOBJ *psoMsk,
|
---|
3167 | IN CLIPOBJ *pco,
|
---|
3168 | IN XLATEOBJ *pxlo,
|
---|
3169 | IN COLORADJUSTMENT *pca,
|
---|
3170 | IN POINTL *pptlBrushOrg,
|
---|
3171 | IN POINTFIX *pptfx,
|
---|
3172 | IN RECTL *prcl,
|
---|
3173 | IN POINTL *pptl,
|
---|
3174 | IN ULONG iMode);
|
---|
3175 |
|
---|
3176 | /* DrvQueryAdvanceWidths.iMode constants */
|
---|
3177 | #define QAW_GETWIDTHS 0
|
---|
3178 | #define QAW_GETEASYWIDTHS 1
|
---|
3179 |
|
---|
3180 | BOOL
|
---|
3181 | DDKAPI
|
---|
3182 | DrvQueryAdvanceWidths(
|
---|
3183 | IN DHPDEV dhpdev,
|
---|
3184 | IN FONTOBJ *pfo,
|
---|
3185 | IN ULONG iMode,
|
---|
3186 | IN HGLYPH *phg,
|
---|
3187 | OUT PVOID pvWidths,
|
---|
3188 | IN ULONG cGlyphs);
|
---|
3189 |
|
---|
3190 | /* DrvQueryDeviceSupport.iType constants */
|
---|
3191 | #define QDS_CHECKJPEGFORMAT 0x00000000
|
---|
3192 | #define QDS_CHECKPNGFORMAT 0x00000001
|
---|
3193 |
|
---|
3194 | BOOL
|
---|
3195 | DDKAPI
|
---|
3196 | DrvQueryDeviceSupport(
|
---|
3197 | SURFOBJ *pso,
|
---|
3198 | XLATEOBJ *pxlo,
|
---|
3199 | XFORMOBJ *pxo,
|
---|
3200 | ULONG iType,
|
---|
3201 | ULONG cjIn,
|
---|
3202 | PVOID pvIn,
|
---|
3203 | ULONG cjOut,
|
---|
3204 | PVOID pvOut);
|
---|
3205 |
|
---|
3206 | /* DrvQueryDriverInfo.dwMode constants */
|
---|
3207 | #define DRVQUERY_USERMODE 0x00000001
|
---|
3208 |
|
---|
3209 | BOOL
|
---|
3210 | DDKAPI
|
---|
3211 | DrvQueryDriverInfo(
|
---|
3212 | DWORD dwMode,
|
---|
3213 | PVOID pBuffer,
|
---|
3214 | DWORD cbBuf,
|
---|
3215 | PDWORD pcbNeeded);
|
---|
3216 |
|
---|
3217 | PIFIMETRICS
|
---|
3218 | DDKAPI
|
---|
3219 | DrvQueryFont(
|
---|
3220 | IN DHPDEV dhpdev,
|
---|
3221 | IN ULONG_PTR iFile,
|
---|
3222 | IN ULONG iFace,
|
---|
3223 | IN ULONG_PTR *pid);
|
---|
3224 |
|
---|
3225 | /* DrvQueryFontCaps.pulCaps constants */
|
---|
3226 | #define QC_OUTLINES 0x00000001
|
---|
3227 | #define QC_1BIT 0x00000002
|
---|
3228 | #define QC_4BIT 0x00000004
|
---|
3229 |
|
---|
3230 | #define QC_FONTDRIVERCAPS (QC_OUTLINES | QC_1BIT | QC_4BIT)
|
---|
3231 |
|
---|
3232 | LONG
|
---|
3233 | DDKAPI
|
---|
3234 | DrvQueryFontCaps(
|
---|
3235 | IN ULONG culCaps,
|
---|
3236 | OUT ULONG *pulCaps);
|
---|
3237 |
|
---|
3238 | /* DrvQueryFontData.iMode constants */
|
---|
3239 | #define QFD_GLYPHANDBITMAP 1L
|
---|
3240 | #define QFD_GLYPHANDOUTLINE 2L
|
---|
3241 | #define QFD_MAXEXTENTS 3L
|
---|
3242 | #define QFD_TT_GLYPHANDBITMAP 4L
|
---|
3243 | #define QFD_TT_GRAY1_BITMAP 5L
|
---|
3244 | #define QFD_TT_GRAY2_BITMAP 6L
|
---|
3245 | #define QFD_TT_GRAY4_BITMAP 8L
|
---|
3246 | #define QFD_TT_GRAY8_BITMAP 9L
|
---|
3247 |
|
---|
3248 | #define QFD_TT_MONO_BITMAP QFD_TT_GRAY1_BITMAP
|
---|
3249 |
|
---|
3250 | LONG
|
---|
3251 | DDKAPI
|
---|
3252 | DrvQueryFontData(
|
---|
3253 | IN DHPDEV dhpdev,
|
---|
3254 | IN FONTOBJ *pfo,
|
---|
3255 | IN ULONG iMode,
|
---|
3256 | IN HGLYPH hg,
|
---|
3257 | IN OUT GLYPHDATA *pgd,
|
---|
3258 | IN OUT PVOID pv,
|
---|
3259 | IN ULONG cjSize);
|
---|
3260 |
|
---|
3261 | /* DrvQueryFontFile.ulMode constants */
|
---|
3262 | #define QFF_DESCRIPTION 0x00000001
|
---|
3263 | #define QFF_NUMFACES 0x00000002
|
---|
3264 |
|
---|
3265 | LONG
|
---|
3266 | DDKAPI
|
---|
3267 | DrvQueryFontFile(
|
---|
3268 | IN ULONG_PTR iFile,
|
---|
3269 | IN ULONG ulMode,
|
---|
3270 | IN ULONG cjBuf,
|
---|
3271 | IN ULONG *pulBuf);
|
---|
3272 |
|
---|
3273 | /* DrvQueryFontTree.iMode constants */
|
---|
3274 | #define QFT_UNICODE 0L
|
---|
3275 | #define QFT_LIGATURES 1L
|
---|
3276 | #define QFT_KERNPAIRS 2L
|
---|
3277 | #define QFT_GLYPHSET 3L
|
---|
3278 |
|
---|
3279 | PVOID
|
---|
3280 | DDKAPI
|
---|
3281 | DrvQueryFontTree(
|
---|
3282 | IN DHPDEV dhpdev,
|
---|
3283 | IN ULONG_PTR iFile,
|
---|
3284 | IN ULONG iFace,
|
---|
3285 | IN ULONG iMode,
|
---|
3286 | IN ULONG_PTR *pid);
|
---|
3287 |
|
---|
3288 | PFD_GLYPHATTR
|
---|
3289 | DDKAPI
|
---|
3290 | DrvQueryGlyphAttrs(
|
---|
3291 | IN FONTOBJ *pfo,
|
---|
3292 | IN ULONG iMode);
|
---|
3293 |
|
---|
3294 | ULONG
|
---|
3295 | DDKAPI
|
---|
3296 | DrvQueryPerBandInfo(
|
---|
3297 | IN SURFOBJ *pso,
|
---|
3298 | IN OUT PERBANDINFO *pbi);
|
---|
3299 |
|
---|
3300 | /* DrvQueryTrueTypeOutline.bMetricsOnly constants */
|
---|
3301 | #define TTO_METRICS_ONLY 0x00000001
|
---|
3302 | #define TTO_QUBICS 0x00000002
|
---|
3303 | #define TTO_UNHINTED 0x00000004
|
---|
3304 |
|
---|
3305 | LONG
|
---|
3306 | DDKAPI
|
---|
3307 | DrvQueryTrueTypeOutline(
|
---|
3308 | IN DHPDEV dhpdev,
|
---|
3309 | IN FONTOBJ *pfo,
|
---|
3310 | IN HGLYPH hglyph,
|
---|
3311 | IN BOOL bMetricsOnly,
|
---|
3312 | IN GLYPHDATA *pgldt,
|
---|
3313 | IN ULONG cjBuf,
|
---|
3314 | OUT TTPOLYGONHEADER *ppoly);
|
---|
3315 |
|
---|
3316 | LONG
|
---|
3317 | DDKAPI
|
---|
3318 | DrvQueryTrueTypeTable(
|
---|
3319 | IN ULONG_PTR iFile,
|
---|
3320 | IN ULONG ulFont,
|
---|
3321 | IN ULONG ulTag,
|
---|
3322 | IN PTRDIFF dpStart,
|
---|
3323 | IN ULONG cjBuf,
|
---|
3324 | OUT BYTE *pjBuf,
|
---|
3325 | OUT PBYTE *ppjTable,
|
---|
3326 | OUT ULONG *pcjTable);
|
---|
3327 |
|
---|
3328 | /* DrvRealizeBrush.iHatch constants */
|
---|
3329 | #define RB_DITHERCOLOR 0x80000000L
|
---|
3330 |
|
---|
3331 | #define HS_DDI_MAX 6
|
---|
3332 |
|
---|
3333 | BOOL
|
---|
3334 | DDKAPI
|
---|
3335 | DrvRealizeBrush(
|
---|
3336 | IN BRUSHOBJ *pbo,
|
---|
3337 | IN SURFOBJ *psoTarget,
|
---|
3338 | IN SURFOBJ *psoPattern,
|
---|
3339 | IN SURFOBJ *psoMask,
|
---|
3340 | IN XLATEOBJ *pxlo,
|
---|
3341 | IN ULONG iHatch);
|
---|
3342 |
|
---|
3343 | /* DrvResetDevice return values */
|
---|
3344 | #define DRD_SUCCESS 0
|
---|
3345 | #define DRD_ERROR 1
|
---|
3346 |
|
---|
3347 | ULONG
|
---|
3348 | DDKAPI
|
---|
3349 | DrvResetDevice(
|
---|
3350 | IN DHPDEV dhpdev,
|
---|
3351 | IN PVOID Reserved);
|
---|
3352 |
|
---|
3353 | BOOL
|
---|
3354 | DDKAPI
|
---|
3355 | DrvResetPDEV(
|
---|
3356 | DHPDEV dhpdevOld,
|
---|
3357 | DHPDEV dhpdevNew);
|
---|
3358 |
|
---|
3359 | /* DrvSaveScreenBits.iMode constants */
|
---|
3360 | #define SS_SAVE 0x00000000
|
---|
3361 | #define SS_RESTORE 0x00000001
|
---|
3362 | #define SS_FREE 0x00000002
|
---|
3363 |
|
---|
3364 | ULONG_PTR
|
---|
3365 | DDKAPI
|
---|
3366 | DrvSaveScreenBits(
|
---|
3367 | IN SURFOBJ *pso,
|
---|
3368 | IN ULONG iMode,
|
---|
3369 | IN ULONG_PTR ident,
|
---|
3370 | IN RECTL *prcl);
|
---|
3371 |
|
---|
3372 | BOOL
|
---|
3373 | DDKAPI
|
---|
3374 | DrvSendPage(
|
---|
3375 | IN SURFOBJ *pso);
|
---|
3376 |
|
---|
3377 | BOOL
|
---|
3378 | DDKAPI
|
---|
3379 | DrvSetPalette(
|
---|
3380 | IN DHPDEV dhpdev,
|
---|
3381 | IN PALOBJ *ppalo,
|
---|
3382 | IN FLONG fl,
|
---|
3383 | IN ULONG iStart,
|
---|
3384 | IN ULONG cColors);
|
---|
3385 |
|
---|
3386 | BOOL
|
---|
3387 | DDKAPI
|
---|
3388 | DrvSetPixelFormat(
|
---|
3389 | IN SURFOBJ *pso,
|
---|
3390 | IN LONG iPixelFormat,
|
---|
3391 | IN HWND hwnd);
|
---|
3392 |
|
---|
3393 | /* DrvSetPointerShape return values */
|
---|
3394 | #define SPS_ERROR 0x00000000
|
---|
3395 | #define SPS_DECLINE 0x00000001
|
---|
3396 | #define SPS_ACCEPT_NOEXCLUDE 0x00000002
|
---|
3397 | #define SPS_ACCEPT_EXCLUDE 0x00000003
|
---|
3398 | #define SPS_ACCEPT_SYNCHRONOUS 0x00000004
|
---|
3399 |
|
---|
3400 | /* DrvSetPointerShape.fl constants */
|
---|
3401 | #define SPS_CHANGE 0x00000001L
|
---|
3402 | #define SPS_ASYNCCHANGE 0x00000002L
|
---|
3403 | #define SPS_ANIMATESTART 0x00000004L
|
---|
3404 | #define SPS_ANIMATEUPDATE 0x00000008L
|
---|
3405 | #define SPS_ALPHA 0x00000010L
|
---|
3406 | #define SPS_LENGTHMASK 0x00000F00L
|
---|
3407 | #define SPS_FREQMASK 0x000FF000L
|
---|
3408 |
|
---|
3409 | ULONG
|
---|
3410 | DDKAPI
|
---|
3411 | DrvSetPointerShape(
|
---|
3412 | IN SURFOBJ *pso,
|
---|
3413 | IN SURFOBJ *psoMask,
|
---|
3414 | IN SURFOBJ *psoColor,
|
---|
3415 | IN XLATEOBJ *pxlo,
|
---|
3416 | IN LONG xHot,
|
---|
3417 | IN LONG yHot,
|
---|
3418 | IN LONG x,
|
---|
3419 | IN LONG y,
|
---|
3420 | IN RECTL *prcl,
|
---|
3421 | IN FLONG fl);
|
---|
3422 |
|
---|
3423 | BOOL
|
---|
3424 | DDKAPI
|
---|
3425 | DrvStartBanding(
|
---|
3426 | IN SURFOBJ *pso,
|
---|
3427 | IN POINTL *pptl);
|
---|
3428 |
|
---|
3429 | BOOL
|
---|
3430 | DDKAPI
|
---|
3431 | DrvStartDoc(
|
---|
3432 | IN SURFOBJ *pso,
|
---|
3433 | IN LPWSTR pwszDocName,
|
---|
3434 | IN DWORD dwJobId);
|
---|
3435 |
|
---|
3436 | BOOL
|
---|
3437 | DDKAPI
|
---|
3438 | DrvStartPage(
|
---|
3439 | IN SURFOBJ *pso);
|
---|
3440 |
|
---|
3441 | BOOL
|
---|
3442 | DDKAPI
|
---|
3443 | DrvStretchBlt(
|
---|
3444 | IN SURFOBJ *psoDest,
|
---|
3445 | IN SURFOBJ *psoSrc,
|
---|
3446 | IN SURFOBJ *psoMask,
|
---|
3447 | IN CLIPOBJ *pco,
|
---|
3448 | IN XLATEOBJ *pxlo,
|
---|
3449 | IN COLORADJUSTMENT *pca,
|
---|
3450 | IN POINTL *pptlHTOrg,
|
---|
3451 | IN RECTL *prclDest,
|
---|
3452 | IN RECTL *prclSrc,
|
---|
3453 | IN POINTL *pptlMask,
|
---|
3454 | IN ULONG iMode);
|
---|
3455 |
|
---|
3456 | BOOL
|
---|
3457 | DDKAPI
|
---|
3458 | DrvStretchBltROP(
|
---|
3459 | IN SURFOBJ *psoDest,
|
---|
3460 | IN SURFOBJ *psoSrc,
|
---|
3461 | IN SURFOBJ *psoMask,
|
---|
3462 | IN CLIPOBJ *pco,
|
---|
3463 | IN XLATEOBJ *pxlo,
|
---|
3464 | IN COLORADJUSTMENT *pca,
|
---|
3465 | IN POINTL *pptlHTOrg,
|
---|
3466 | IN RECTL *prclDest,
|
---|
3467 | IN RECTL *prclSrc,
|
---|
3468 | IN POINTL *pptlMask,
|
---|
3469 | IN ULONG iMode,
|
---|
3470 | IN BRUSHOBJ *pbo,
|
---|
3471 | IN DWORD rop4);
|
---|
3472 |
|
---|
3473 | BOOL
|
---|
3474 | DDKAPI
|
---|
3475 | DrvStrokeAndFillPath(
|
---|
3476 | IN SURFOBJ *pso,
|
---|
3477 | IN PATHOBJ *ppo,
|
---|
3478 | IN CLIPOBJ *pco,
|
---|
3479 | IN XFORMOBJ *pxo,
|
---|
3480 | IN BRUSHOBJ *pboStroke,
|
---|
3481 | IN LINEATTRS *plineattrs,
|
---|
3482 | IN BRUSHOBJ *pboFill,
|
---|
3483 | IN POINTL *pptlBrushOrg,
|
---|
3484 | IN MIX mixFill,
|
---|
3485 | IN FLONG flOptions);
|
---|
3486 |
|
---|
3487 | BOOL
|
---|
3488 | DDKAPI
|
---|
3489 | DrvStrokePath(
|
---|
3490 | IN SURFOBJ *pso,
|
---|
3491 | IN PATHOBJ *ppo,
|
---|
3492 | IN CLIPOBJ *pco,
|
---|
3493 | IN XFORMOBJ *pxo,
|
---|
3494 | IN BRUSHOBJ *pbo,
|
---|
3495 | IN POINTL *pptlBrushOrg,
|
---|
3496 | IN LINEATTRS *plineattrs,
|
---|
3497 | IN MIX mix);
|
---|
3498 |
|
---|
3499 | BOOL
|
---|
3500 | DDKAPI
|
---|
3501 | DrvSwapBuffers(
|
---|
3502 | IN SURFOBJ *pso,
|
---|
3503 | IN WNDOBJ *pwo);
|
---|
3504 |
|
---|
3505 | VOID
|
---|
3506 | DDKAPI
|
---|
3507 | DrvSynchronize(
|
---|
3508 | IN DHPDEV dhpdev,
|
---|
3509 | IN RECTL *prcl);
|
---|
3510 |
|
---|
3511 | /* DrvSynchronizeSurface.fl constants */
|
---|
3512 | #define DSS_TIMER_EVENT 0x00000001
|
---|
3513 | #define DSS_FLUSH_EVENT 0x00000002
|
---|
3514 |
|
---|
3515 | VOID
|
---|
3516 | DDKAPI
|
---|
3517 | DrvSynchronizeSurface(
|
---|
3518 | IN SURFOBJ *pso,
|
---|
3519 | IN RECTL *prcl,
|
---|
3520 | IN FLONG fl);
|
---|
3521 |
|
---|
3522 | BOOL
|
---|
3523 | DDKAPI
|
---|
3524 | DrvTextOut(
|
---|
3525 | IN SURFOBJ *pso,
|
---|
3526 | IN STROBJ *pstro,
|
---|
3527 | IN FONTOBJ *pfo,
|
---|
3528 | IN CLIPOBJ *pco,
|
---|
3529 | IN RECTL *prclExtra,
|
---|
3530 | IN RECTL *prclOpaque,
|
---|
3531 | IN BRUSHOBJ *pboFore,
|
---|
3532 | IN BRUSHOBJ *pboOpaque,
|
---|
3533 | IN POINTL *pptlOrg,
|
---|
3534 | IN MIX mix);
|
---|
3535 |
|
---|
3536 | BOOL
|
---|
3537 | DDKAPI
|
---|
3538 | DrvTransparentBlt(
|
---|
3539 | IN SURFOBJ *psoDst,
|
---|
3540 | IN SURFOBJ *psoSrc,
|
---|
3541 | IN CLIPOBJ *pco,
|
---|
3542 | IN XLATEOBJ *pxlo,
|
---|
3543 | IN RECTL *prclDst,
|
---|
3544 | IN RECTL *prclSrc,
|
---|
3545 | IN ULONG iTransColor,
|
---|
3546 | IN ULONG ulReserved);
|
---|
3547 |
|
---|
3548 | BOOL
|
---|
3549 | DDKAPI
|
---|
3550 | DrvUnloadFontFile(
|
---|
3551 | IN ULONG_PTR iFile);
|
---|
3552 |
|
---|
3553 | /* WNDOBJCHANGEPROC.fl constants */
|
---|
3554 | #define WOC_RGN_CLIENT_DELTA 0x00000001
|
---|
3555 | #define WOC_RGN_CLIENT 0x00000002
|
---|
3556 | #define WOC_RGN_SURFACE_DELTA 0x00000004
|
---|
3557 | #define WOC_RGN_SURFACE 0x00000008
|
---|
3558 | #define WOC_CHANGED 0x00000010
|
---|
3559 | #define WOC_DELETE 0x00000020
|
---|
3560 | #define WOC_DRAWN 0x00000040
|
---|
3561 | #define WOC_SPRITE_OVERLAP 0x00000080
|
---|
3562 | #define WOC_SPRITE_NO_OVERLAP 0x00000100
|
---|
3563 |
|
---|
3564 | typedef VOID DDKAPI
|
---|
3565 | (CALLBACK * WNDOBJCHANGEPROC)(
|
---|
3566 | WNDOBJ *pwo,
|
---|
3567 | FLONG fl);
|
---|
3568 |
|
---|
3569 |
|
---|
3570 | typedef BOOL DDKAPI
|
---|
3571 | (*PFN_DrvAlphaBlend)(
|
---|
3572 | IN SURFOBJ *psoDest,
|
---|
3573 | IN SURFOBJ *psoSrc,
|
---|
3574 | IN CLIPOBJ *pco,
|
---|
3575 | IN XLATEOBJ *pxlo,
|
---|
3576 | IN RECTL *prclDest,
|
---|
3577 | IN RECTL *prclSrc,
|
---|
3578 | IN BLENDOBJ *pBlendObj);
|
---|
3579 |
|
---|
3580 | typedef BOOL DDKAPI
|
---|
3581 | (*PFN_DrvAssertMode)(
|
---|
3582 | IN DHPDEV dhpdev,
|
---|
3583 | IN BOOL bEnable);
|
---|
3584 |
|
---|
3585 | typedef BOOL DDKAPI
|
---|
3586 | (*PFN_DrvBitBlt)(
|
---|
3587 | IN SURFOBJ *psoTrg,
|
---|
3588 | IN SURFOBJ *psoSrc,
|
---|
3589 | IN SURFOBJ *psoMask,
|
---|
3590 | IN CLIPOBJ *pco,
|
---|
3591 | IN XLATEOBJ *pxlo,
|
---|
3592 | IN RECTL *prclTrg,
|
---|
3593 | IN POINTL *pptlSrc,
|
---|
3594 | IN POINTL *pptlMask,
|
---|
3595 | IN BRUSHOBJ *pbo,
|
---|
3596 | IN POINTL *pptlBrush,
|
---|
3597 | IN ROP4 rop4);
|
---|
3598 |
|
---|
3599 | typedef VOID DDKAPI
|
---|
3600 | (*PFN_DrvCompletePDEV)(
|
---|
3601 | IN DHPDEV dhpdev,
|
---|
3602 | IN HDEV hdev);
|
---|
3603 |
|
---|
3604 | typedef BOOL DDKAPI
|
---|
3605 | (*PFN_DrvCopyBits)(
|
---|
3606 | IN SURFOBJ *psoDest,
|
---|
3607 | IN SURFOBJ *psoSrc,
|
---|
3608 | IN CLIPOBJ *pco,
|
---|
3609 | IN XLATEOBJ *pxlo,
|
---|
3610 | IN RECTL *prclDest,
|
---|
3611 | IN POINTL *pptlSrc);
|
---|
3612 |
|
---|
3613 | typedef HBITMAP DDKAPI
|
---|
3614 | (*PFN_DrvCreateDeviceBitmap)(
|
---|
3615 | IN DHPDEV dhpdev,
|
---|
3616 | IN SIZEL sizl,
|
---|
3617 | IN ULONG iFormat);
|
---|
3618 |
|
---|
3619 | typedef VOID DDKAPI
|
---|
3620 | (*PFN_DrvDeleteDeviceBitmap)(
|
---|
3621 | IN DHSURF dhsurf);
|
---|
3622 |
|
---|
3623 | typedef HBITMAP DDKAPI
|
---|
3624 | (*PFN_DrvDeriveSurface)(
|
---|
3625 | DD_DIRECTDRAW_GLOBAL *pDirectDraw,
|
---|
3626 | DD_SURFACE_LOCAL *pSurface);
|
---|
3627 |
|
---|
3628 | typedef LONG DDKAPI
|
---|
3629 | (*PFN_DrvDescribePixelFormat)(
|
---|
3630 | IN DHPDEV dhpdev,
|
---|
3631 | IN LONG iPixelFormat,
|
---|
3632 | IN ULONG cjpfd,
|
---|
3633 | OUT PIXELFORMATDESCRIPTOR *ppfd);
|
---|
3634 |
|
---|
3635 | typedef VOID DDKAPI
|
---|
3636 | (*PFN_DrvDestroyFont)(
|
---|
3637 | IN FONTOBJ *pfo);
|
---|
3638 |
|
---|
3639 | typedef VOID DDKAPI
|
---|
3640 | (*PFN_DrvDisableDriver)(
|
---|
3641 | VOID);
|
---|
3642 |
|
---|
3643 | typedef VOID DDKAPI
|
---|
3644 | (*PFN_DrvDisablePDEV)(
|
---|
3645 | IN DHPDEV dhpdev);
|
---|
3646 |
|
---|
3647 | typedef VOID DDKAPI
|
---|
3648 | (*PFN_DrvDisableSurface)(
|
---|
3649 | IN DHPDEV dhpdev);
|
---|
3650 |
|
---|
3651 | typedef ULONG DDKAPI
|
---|
3652 | (*PFN_DrvDitherColor)(
|
---|
3653 | IN DHPDEV dhpdev,
|
---|
3654 | IN ULONG iMode,
|
---|
3655 | IN ULONG rgb,
|
---|
3656 | OUT ULONG *pul);
|
---|
3657 |
|
---|
3658 | typedef ULONG DDKAPI
|
---|
3659 | (*PFN_DrvDrawEscape)(
|
---|
3660 | IN SURFOBJ *pso,
|
---|
3661 | IN ULONG iEsc,
|
---|
3662 | IN CLIPOBJ *pco,
|
---|
3663 | IN RECTL *prcl,
|
---|
3664 | IN ULONG cjIn,
|
---|
3665 | IN PVOID pvIn);
|
---|
3666 |
|
---|
3667 | typedef BOOL DDKAPI
|
---|
3668 | (*PFN_DrvEnableDriver)(
|
---|
3669 | IN ULONG iEngineVersion,
|
---|
3670 | IN ULONG cj,
|
---|
3671 | OUT DRVENABLEDATA *pded);
|
---|
3672 | #if 0
|
---|
3673 | typedef DHPDEV DDKAPI
|
---|
3674 | (*PFN_DrvEnablePDEV)(
|
---|
3675 | IN DEVMODEW *pdm,
|
---|
3676 | IN LPWSTR pwszLogAddress,
|
---|
3677 | IN ULONG cPat,
|
---|
3678 | OUT HSURF *phsurfPatterns,
|
---|
3679 | IN ULONG cjCaps,
|
---|
3680 | OUT ULONG *pdevcaps,
|
---|
3681 | IN ULONG cjDevInfo,
|
---|
3682 | OUT DEVINFO *pdi,
|
---|
3683 | IN HDEV hdev,
|
---|
3684 | IN LPWSTR pwszDeviceName,
|
---|
3685 | IN HANDLE hDriver);
|
---|
3686 | #endif
|
---|
3687 | typedef HSURF DDKAPI
|
---|
3688 | (*PFN_DrvEnableSurface)(
|
---|
3689 | IN DHPDEV dhpdev);
|
---|
3690 |
|
---|
3691 | typedef BOOL DDKAPI
|
---|
3692 | (*PFN_DrvEndDoc)(
|
---|
3693 | IN SURFOBJ *pso,
|
---|
3694 | IN FLONG fl);
|
---|
3695 |
|
---|
3696 | typedef ULONG DDKAPI
|
---|
3697 | (*PFN_DrvEscape)(
|
---|
3698 | IN SURFOBJ *pso,
|
---|
3699 | IN ULONG iEsc,
|
---|
3700 | IN ULONG cjIn,
|
---|
3701 | IN PVOID pvIn,
|
---|
3702 | IN ULONG cjOut,
|
---|
3703 | OUT PVOID pvOut);
|
---|
3704 |
|
---|
3705 | typedef BOOL DDKAPI
|
---|
3706 | (*PFN_DrvFillPath)(
|
---|
3707 | IN SURFOBJ *pso,
|
---|
3708 | IN PATHOBJ *ppo,
|
---|
3709 | IN CLIPOBJ *pco,
|
---|
3710 | IN BRUSHOBJ *pbo,
|
---|
3711 | IN POINTL *pptlBrushOrg,
|
---|
3712 | IN MIX mix,
|
---|
3713 | IN FLONG flOptions);
|
---|
3714 |
|
---|
3715 | typedef ULONG DDKAPI
|
---|
3716 | (*PFN_DrvFontManagement)(
|
---|
3717 | IN SURFOBJ *pso,
|
---|
3718 | IN FONTOBJ *pfo,
|
---|
3719 | IN ULONG iMode,
|
---|
3720 | IN ULONG cjIn,
|
---|
3721 | IN PVOID pvIn,
|
---|
3722 | IN ULONG cjOut,
|
---|
3723 | OUT PVOID pvOut);
|
---|
3724 |
|
---|
3725 | typedef VOID DDKAPI
|
---|
3726 | (*PFN_DrvFree)(
|
---|
3727 | IN PVOID pv,
|
---|
3728 | IN ULONG_PTR id);
|
---|
3729 |
|
---|
3730 | typedef ULONG DDKAPI
|
---|
3731 | (*PFN_DrvGetGlyphMode)(
|
---|
3732 | IN DHPDEV dhpdev,
|
---|
3733 | IN FONTOBJ *pfo);
|
---|
3734 |
|
---|
3735 | typedef ULONG DDKAPI
|
---|
3736 | (*PFN_DrvGetModes)(
|
---|
3737 | IN HANDLE hDriver,
|
---|
3738 | IN ULONG cjSize,
|
---|
3739 | OUT DEVMODEW *pdm);
|
---|
3740 |
|
---|
3741 | typedef PVOID DDKAPI
|
---|
3742 | (*PFN_DrvGetTrueTypeFile)(
|
---|
3743 | IN ULONG_PTR iFile,
|
---|
3744 | IN ULONG *pcj);
|
---|
3745 |
|
---|
3746 | typedef BOOL DDKAPI
|
---|
3747 | (*PFN_DrvGradientFill)(
|
---|
3748 | IN SURFOBJ *psoDest,
|
---|
3749 | IN CLIPOBJ *pco,
|
---|
3750 | IN XLATEOBJ *pxlo,
|
---|
3751 | IN TRIVERTEX *pVertex,
|
---|
3752 | IN ULONG nVertex,
|
---|
3753 | IN PVOID pMesh,
|
---|
3754 | IN ULONG nMesh,
|
---|
3755 | IN RECTL *prclExtents,
|
---|
3756 | IN POINTL *pptlDitherOrg,
|
---|
3757 | IN ULONG ulMode);
|
---|
3758 |
|
---|
3759 | typedef BOOL DDKAPI
|
---|
3760 | (*PFN_DrvIcmCheckBitmapBits)(
|
---|
3761 | IN DHPDEV dhpdev,
|
---|
3762 | IN HANDLE hColorTransform,
|
---|
3763 | IN SURFOBJ *pso,
|
---|
3764 | OUT PBYTE paResults);
|
---|
3765 |
|
---|
3766 | typedef HANDLE DDKAPI
|
---|
3767 | (*PFN_DrvIcmCreateColorTransform)(
|
---|
3768 | IN DHPDEV dhpdev,
|
---|
3769 | IN LPLOGCOLORSPACEW pLogColorSpace,
|
---|
3770 | IN PVOID pvSourceProfile,
|
---|
3771 | IN ULONG cjSourceProfile,
|
---|
3772 | IN PVOID pvDestProfile,
|
---|
3773 | IN ULONG cjDestProfile,
|
---|
3774 | IN PVOID pvTargetProfile,
|
---|
3775 | IN ULONG cjTargetProfile,
|
---|
3776 | IN DWORD dwReserved);
|
---|
3777 |
|
---|
3778 | typedef BOOL DDKAPI
|
---|
3779 | (*PFN_DrvIcmDeleteColorTransform)(
|
---|
3780 | IN DHPDEV dhpdev,
|
---|
3781 | IN HANDLE hcmXform);
|
---|
3782 |
|
---|
3783 | typedef BOOL DDKAPI
|
---|
3784 | (*PFN_DrvIcmSetDeviceGammaRamp)(
|
---|
3785 | IN DHPDEV dhpdev,
|
---|
3786 | IN ULONG iFormat,
|
---|
3787 | IN LPVOID lpRamp);
|
---|
3788 |
|
---|
3789 | typedef BOOL DDKAPI
|
---|
3790 | (*PFN_DrvLineTo)(
|
---|
3791 | SURFOBJ *pso,
|
---|
3792 | CLIPOBJ *pco,
|
---|
3793 | BRUSHOBJ *pbo,
|
---|
3794 | LONG x1,
|
---|
3795 | LONG y1,
|
---|
3796 | LONG x2,
|
---|
3797 | LONG y2,
|
---|
3798 | RECTL *prclBounds,
|
---|
3799 | MIX mix);
|
---|
3800 |
|
---|
3801 | typedef ULONG_PTR DDKAPI
|
---|
3802 | (*PFN_DrvLoadFontFile)(
|
---|
3803 | ULONG cFiles,
|
---|
3804 | ULONG_PTR *piFile,
|
---|
3805 | PVOID *ppvView,
|
---|
3806 | ULONG *pcjView,
|
---|
3807 | DESIGNVECTOR *pdv,
|
---|
3808 | ULONG ulLangID,
|
---|
3809 | ULONG ulFastCheckSum);
|
---|
3810 |
|
---|
3811 | typedef VOID DDKAPI
|
---|
3812 | (*PFN_DrvMovePointer)(
|
---|
3813 | IN SURFOBJ *pso,
|
---|
3814 | IN LONG x,
|
---|
3815 | IN LONG y,
|
---|
3816 | IN RECTL *prcl);
|
---|
3817 |
|
---|
3818 | typedef BOOL DDKAPI
|
---|
3819 | (*PFN_DrvNextBand)(
|
---|
3820 | IN SURFOBJ *pso,
|
---|
3821 | IN POINTL *pptl);
|
---|
3822 |
|
---|
3823 | typedef VOID DDKAPI
|
---|
3824 | (*PFN_DrvNotify)(
|
---|
3825 | IN SURFOBJ *pso,
|
---|
3826 | IN ULONG iType,
|
---|
3827 | IN PVOID pvData);
|
---|
3828 |
|
---|
3829 | typedef BOOL DDKAPI
|
---|
3830 | (*PFN_DrvOffset)(
|
---|
3831 | IN SURFOBJ *pso,
|
---|
3832 | IN LONG x,
|
---|
3833 | IN LONG y,
|
---|
3834 | IN FLONG flReserved);
|
---|
3835 |
|
---|
3836 | typedef BOOL DDKAPI
|
---|
3837 | (*PFN_DrvPaint)(
|
---|
3838 | IN SURFOBJ *pso,
|
---|
3839 | IN CLIPOBJ *pco,
|
---|
3840 | IN BRUSHOBJ *pbo,
|
---|
3841 | IN POINTL *pptlBrushOrg,
|
---|
3842 | IN MIX mix);
|
---|
3843 |
|
---|
3844 | typedef BOOL DDKAPI
|
---|
3845 | (*PFN_DrvPlgBlt)(
|
---|
3846 | IN SURFOBJ *psoTrg,
|
---|
3847 | IN SURFOBJ *psoSrc,
|
---|
3848 | IN SURFOBJ *psoMsk,
|
---|
3849 | IN CLIPOBJ *pco,
|
---|
3850 | IN XLATEOBJ *pxlo,
|
---|
3851 | IN COLORADJUSTMENT *pca,
|
---|
3852 | IN POINTL *pptlBrushOrg,
|
---|
3853 | IN POINTFIX *pptfx,
|
---|
3854 | IN RECTL *prcl,
|
---|
3855 | IN POINTL *pptl,
|
---|
3856 | IN ULONG iMode);
|
---|
3857 |
|
---|
3858 | typedef BOOL DDKAPI
|
---|
3859 | (*PFN_DrvQueryAdvanceWidths)(
|
---|
3860 | IN DHPDEV dhpdev,
|
---|
3861 | IN FONTOBJ *pfo,
|
---|
3862 | IN ULONG iMode,
|
---|
3863 | IN HGLYPH *phg,
|
---|
3864 | OUT PVOID pvWidths,
|
---|
3865 | IN ULONG cGlyphs);
|
---|
3866 |
|
---|
3867 | typedef BOOL DDKAPI
|
---|
3868 | (*PFN_DrvQueryDeviceSupport)(
|
---|
3869 | SURFOBJ *pso,
|
---|
3870 | XLATEOBJ *pxlo,
|
---|
3871 | XFORMOBJ *pxo,
|
---|
3872 | ULONG iType,
|
---|
3873 | ULONG cjIn,
|
---|
3874 | PVOID pvIn,
|
---|
3875 | ULONG cjOut,
|
---|
3876 | PVOID pvOut);
|
---|
3877 |
|
---|
3878 | typedef BOOL DDKAPI
|
---|
3879 | (*PFN_DrvQueryDriverInfo)(
|
---|
3880 | DWORD dwMode,
|
---|
3881 | PVOID pBuffer,
|
---|
3882 | DWORD cbBuf,
|
---|
3883 | PDWORD pcbNeeded);
|
---|
3884 |
|
---|
3885 | typedef PIFIMETRICS DDKAPI
|
---|
3886 | (*PFN_DrvQueryFont)(
|
---|
3887 | IN DHPDEV dhpdev,
|
---|
3888 | IN ULONG_PTR iFile,
|
---|
3889 | IN ULONG iFace,
|
---|
3890 | IN ULONG_PTR *pid);
|
---|
3891 |
|
---|
3892 | typedef LONG DDKAPI
|
---|
3893 | (*PFN_DrvQueryFontCaps)(
|
---|
3894 | IN ULONG culCaps,
|
---|
3895 | OUT ULONG *pulCaps);
|
---|
3896 |
|
---|
3897 | typedef LONG DDKAPI
|
---|
3898 | (*PFN_DrvQueryFontData)(
|
---|
3899 | IN DHPDEV dhpdev,
|
---|
3900 | IN FONTOBJ *pfo,
|
---|
3901 | IN ULONG iMode,
|
---|
3902 | IN HGLYPH hg,
|
---|
3903 | IN OUT GLYPHDATA *pgd,
|
---|
3904 | IN OUT PVOID pv,
|
---|
3905 | IN ULONG cjSize);
|
---|
3906 |
|
---|
3907 | typedef LONG DDKAPI
|
---|
3908 | (*PFN_DrvQueryFontFile)(
|
---|
3909 | IN ULONG_PTR iFile,
|
---|
3910 | IN ULONG ulMode,
|
---|
3911 | IN ULONG cjBuf,
|
---|
3912 | IN ULONG *pulBuf);
|
---|
3913 |
|
---|
3914 | typedef PVOID DDKAPI
|
---|
3915 | (*PFN_DrvQueryFontTree)(
|
---|
3916 | IN DHPDEV dhpdev,
|
---|
3917 | IN ULONG_PTR iFile,
|
---|
3918 | IN ULONG iFace,
|
---|
3919 | IN ULONG iMode,
|
---|
3920 | IN ULONG_PTR *pid);
|
---|
3921 |
|
---|
3922 | typedef PFD_GLYPHATTR DDKAPI
|
---|
3923 | (*PFN_DrvQueryGlyphAttrs)(
|
---|
3924 | IN FONTOBJ *pfo,
|
---|
3925 | IN ULONG iMode);
|
---|
3926 |
|
---|
3927 | typedef ULONG DDKAPI
|
---|
3928 | (*PFN_DrvQueryPerBandInfo)(
|
---|
3929 | IN SURFOBJ *pso,
|
---|
3930 | IN OUT PERBANDINFO *pbi);
|
---|
3931 |
|
---|
3932 | typedef LONG DDKAPI
|
---|
3933 | (*PFN_DrvQueryTrueTypeOutline)(
|
---|
3934 | IN DHPDEV dhpdev,
|
---|
3935 | IN FONTOBJ *pfo,
|
---|
3936 | IN HGLYPH hglyph,
|
---|
3937 | IN BOOL bMetricsOnly,
|
---|
3938 | IN GLYPHDATA *pgldt,
|
---|
3939 | IN ULONG cjBuf,
|
---|
3940 | OUT TTPOLYGONHEADER *ppoly);
|
---|
3941 |
|
---|
3942 | typedef LONG DDKAPI
|
---|
3943 | (*PFN_DrvQueryTrueTypeTable)(
|
---|
3944 | IN ULONG_PTR iFile,
|
---|
3945 | IN ULONG ulFont,
|
---|
3946 | IN ULONG ulTag,
|
---|
3947 | IN PTRDIFF dpStart,
|
---|
3948 | IN ULONG cjBuf,
|
---|
3949 | OUT BYTE *pjBuf,
|
---|
3950 | OUT PBYTE *ppjTable,
|
---|
3951 | OUT ULONG *pcjTable);
|
---|
3952 |
|
---|
3953 | typedef BOOL DDKAPI
|
---|
3954 | (*PFN_DrvRealizeBrush)(
|
---|
3955 | IN BRUSHOBJ *pbo,
|
---|
3956 | IN SURFOBJ *psoTarget,
|
---|
3957 | IN SURFOBJ *psoPattern,
|
---|
3958 | IN SURFOBJ *psoMask,
|
---|
3959 | IN XLATEOBJ *pxlo,
|
---|
3960 | IN ULONG iHatch);
|
---|
3961 |
|
---|
3962 | typedef ULONG DDKAPI
|
---|
3963 | (*PFN_DrvResetDevice)(
|
---|
3964 | IN DHPDEV dhpdev,
|
---|
3965 | IN PVOID Reserved);
|
---|
3966 |
|
---|
3967 | typedef BOOL DDKAPI
|
---|
3968 | (*PFN_DrvResetPDEV)(
|
---|
3969 | DHPDEV dhpdevOld,
|
---|
3970 | DHPDEV dhpdevNew);
|
---|
3971 |
|
---|
3972 | typedef ULONG_PTR DDKAPI
|
---|
3973 | (*PFN_DrvSaveScreenBits)(
|
---|
3974 | IN SURFOBJ *pso,
|
---|
3975 | IN ULONG iMode,
|
---|
3976 | IN ULONG_PTR ident,
|
---|
3977 | IN RECTL *prcl);
|
---|
3978 |
|
---|
3979 | typedef BOOL DDKAPI
|
---|
3980 | (*PFN_DrvSendPage)(
|
---|
3981 | IN SURFOBJ *pso);
|
---|
3982 |
|
---|
3983 | typedef BOOL DDKAPI
|
---|
3984 | (*PFN_DrvSetPalette)(
|
---|
3985 | IN DHPDEV dhpdev,
|
---|
3986 | IN PALOBJ *ppalo,
|
---|
3987 | IN FLONG fl,
|
---|
3988 | IN ULONG iStart,
|
---|
3989 | IN ULONG cColors);
|
---|
3990 |
|
---|
3991 | typedef BOOL DDKAPI
|
---|
3992 | (*PFN_DrvSetPixelFormat)(
|
---|
3993 | IN SURFOBJ *pso,
|
---|
3994 | IN LONG iPixelFormat,
|
---|
3995 | IN HWND hwnd);
|
---|
3996 |
|
---|
3997 | typedef ULONG DDKAPI
|
---|
3998 | (*PFN_DrvSetPointerShape)(
|
---|
3999 | IN SURFOBJ *pso,
|
---|
4000 | IN SURFOBJ *psoMask,
|
---|
4001 | IN SURFOBJ *psoColor,
|
---|
4002 | IN XLATEOBJ *pxlo,
|
---|
4003 | IN LONG xHot,
|
---|
4004 | IN LONG yHot,
|
---|
4005 | IN LONG x,
|
---|
4006 | IN LONG y,
|
---|
4007 | IN RECTL *prcl,
|
---|
4008 | IN FLONG fl);
|
---|
4009 |
|
---|
4010 | typedef BOOL DDKAPI
|
---|
4011 | (*PFN_DrvStartBanding)(
|
---|
4012 | IN SURFOBJ *pso,
|
---|
4013 | IN POINTL *pptl);
|
---|
4014 |
|
---|
4015 | typedef BOOL DDKAPI
|
---|
4016 | (*PFN_DrvStartDoc)(
|
---|
4017 | IN SURFOBJ *pso,
|
---|
4018 | IN LPWSTR pwszDocName,
|
---|
4019 | IN DWORD dwJobId);
|
---|
4020 |
|
---|
4021 | typedef BOOL DDKAPI
|
---|
4022 | (*PFN_DrvStartPage)(
|
---|
4023 | IN SURFOBJ *pso);
|
---|
4024 |
|
---|
4025 | typedef BOOL DDKAPI
|
---|
4026 | (*PFN_DrvStretchBlt)(
|
---|
4027 | IN SURFOBJ *psoDest,
|
---|
4028 | IN SURFOBJ *psoSrc,
|
---|
4029 | IN SURFOBJ *psoMask,
|
---|
4030 | IN CLIPOBJ *pco,
|
---|
4031 | IN XLATEOBJ *pxlo,
|
---|
4032 | IN COLORADJUSTMENT *pca,
|
---|
4033 | IN POINTL *pptlHTOrg,
|
---|
4034 | IN RECTL *prclDest,
|
---|
4035 | IN RECTL *prclSrc,
|
---|
4036 | IN POINTL *pptlMask,
|
---|
4037 | IN ULONG iMode);
|
---|
4038 |
|
---|
4039 | typedef BOOL DDKAPI
|
---|
4040 | (*PFN_DrvStretchBltROP)(
|
---|
4041 | IN SURFOBJ *psoDest,
|
---|
4042 | IN SURFOBJ *psoSrc,
|
---|
4043 | IN SURFOBJ *psoMask,
|
---|
4044 | IN CLIPOBJ *pco,
|
---|
4045 | IN XLATEOBJ *pxlo,
|
---|
4046 | IN COLORADJUSTMENT *pca,
|
---|
4047 | IN POINTL *pptlHTOrg,
|
---|
4048 | IN RECTL *prclDest,
|
---|
4049 | IN RECTL *prclSrc,
|
---|
4050 | IN POINTL *pptlMask,
|
---|
4051 | IN ULONG iMode,
|
---|
4052 | IN BRUSHOBJ *pbo,
|
---|
4053 | IN DWORD rop4);
|
---|
4054 |
|
---|
4055 | typedef BOOL DDKAPI
|
---|
4056 | (*PFN_DrvStrokeAndFillPath)(
|
---|
4057 | IN SURFOBJ *pso,
|
---|
4058 | IN PATHOBJ *ppo,
|
---|
4059 | IN CLIPOBJ *pco,
|
---|
4060 | IN XFORMOBJ *pxo,
|
---|
4061 | IN BRUSHOBJ *pboStroke,
|
---|
4062 | IN LINEATTRS *plineattrs,
|
---|
4063 | IN BRUSHOBJ *pboFill,
|
---|
4064 | IN POINTL *pptlBrushOrg,
|
---|
4065 | IN MIX mixFill,
|
---|
4066 | IN FLONG flOptions);
|
---|
4067 |
|
---|
4068 | typedef BOOL DDKAPI
|
---|
4069 | (*PFN_DrvStrokePath)(
|
---|
4070 | IN SURFOBJ *pso,
|
---|
4071 | IN PATHOBJ *ppo,
|
---|
4072 | IN CLIPOBJ *pco,
|
---|
4073 | IN XFORMOBJ *pxo,
|
---|
4074 | IN BRUSHOBJ *pbo,
|
---|
4075 | IN POINTL *pptlBrushOrg,
|
---|
4076 | IN LINEATTRS *plineattrs,
|
---|
4077 | IN MIX mix);
|
---|
4078 |
|
---|
4079 | typedef BOOL DDKAPI
|
---|
4080 | (*PFN_DrvSwapBuffers)(
|
---|
4081 | IN SURFOBJ *pso,
|
---|
4082 | IN WNDOBJ *pwo);
|
---|
4083 |
|
---|
4084 | typedef VOID DDKAPI
|
---|
4085 | (*PFN_DrvSynchronize)(
|
---|
4086 | IN DHPDEV dhpdev,
|
---|
4087 | IN RECTL *prcl);
|
---|
4088 |
|
---|
4089 | typedef VOID DDKAPI
|
---|
4090 | (*PFN_DrvSynchronizeSurface)(
|
---|
4091 | IN SURFOBJ *pso,
|
---|
4092 | IN RECTL *prcl,
|
---|
4093 | IN FLONG fl);
|
---|
4094 |
|
---|
4095 | typedef BOOL DDKAPI
|
---|
4096 | (*PFN_DrvTextOut)(
|
---|
4097 | IN SURFOBJ *pso,
|
---|
4098 | IN STROBJ *pstro,
|
---|
4099 | IN FONTOBJ *pfo,
|
---|
4100 | IN CLIPOBJ *pco,
|
---|
4101 | IN RECTL *prclExtra,
|
---|
4102 | IN RECTL *prclOpaque,
|
---|
4103 | IN BRUSHOBJ *pboFore,
|
---|
4104 | IN BRUSHOBJ *pboOpaque,
|
---|
4105 | IN POINTL *pptlOrg,
|
---|
4106 | IN MIX mix);
|
---|
4107 |
|
---|
4108 | typedef BOOL DDKAPI
|
---|
4109 | (*PFN_DrvTransparentBlt)(
|
---|
4110 | IN SURFOBJ *psoDst,
|
---|
4111 | IN SURFOBJ *psoSrc,
|
---|
4112 | IN CLIPOBJ *pco,
|
---|
4113 | IN XLATEOBJ *pxlo,
|
---|
4114 | IN RECTL *prclDst,
|
---|
4115 | IN RECTL *prclSrc,
|
---|
4116 | IN ULONG iTransColor,
|
---|
4117 | IN ULONG ulReserved);
|
---|
4118 |
|
---|
4119 | typedef BOOL DDKAPI
|
---|
4120 | (*PFN_DrvUnloadFontFile)(
|
---|
4121 | IN ULONG_PTR iFile);
|
---|
4122 |
|
---|
4123 |
|
---|
4124 | WIN32KAPI
|
---|
4125 | VOID
|
---|
4126 | DDKAPI
|
---|
4127 | DrvDisableDirectDraw(
|
---|
4128 | IN DHPDEV dhpdev);
|
---|
4129 |
|
---|
4130 | WIN32KAPI
|
---|
4131 | BOOL
|
---|
4132 | DDKAPI
|
---|
4133 | DrvEnableDirectDraw(
|
---|
4134 | IN DHPDEV dhpdev,
|
---|
4135 | OUT DD_CALLBACKS *pCallBacks,
|
---|
4136 | OUT DD_SURFACECALLBACKS *pSurfaceCallBacks,
|
---|
4137 | OUT DD_PALETTECALLBACKS *pPaletteCallBacks);
|
---|
4138 |
|
---|
4139 | WIN32KAPI
|
---|
4140 | BOOL
|
---|
4141 | DDKAPI
|
---|
4142 | DrvGetDirectDrawInfo(
|
---|
4143 | IN DHPDEV dhpdev,
|
---|
4144 | OUT DD_HALINFO *pHalInfo,
|
---|
4145 | OUT DWORD *pdwNumHeaps,
|
---|
4146 | OUT VIDEOMEMORY *pvmList,
|
---|
4147 | OUT DWORD *pdwNumFourCCCodes,
|
---|
4148 | OUT DWORD *pdwFourCC);
|
---|
4149 |
|
---|
4150 | #ifdef __cplusplus
|
---|
4151 | }
|
---|
4152 | #endif
|
---|
4153 |
|
---|
4154 | #endif /* defined __VIDEO_H */
|
---|
4155 |
|
---|
4156 | #endif /* __WINDDI_H */
|
---|