ReactOS  0.4.13-dev-52-g0efcfec
ntgdityp.h
Go to the documentation of this file.
1 /*
2  * COPYRIGHT: See COPYING in the top level directory
3  * PROJECT: ReactOS Win32 Graphical Subsystem (WIN32K)
4  * FILE: win32ss/include/ntgdityp.h
5  * PURPOSE: Win32 Shared GDI Types for NtGdi*
6  * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
7  */
8 
9 /* INCLUDES ******************************************************************/
10 
11 #ifndef _NTGDITYP_
12 #define _NTGDITYP_
13 
14 #include "ntwin32.h"
15 
16 /* ENUMERATIONS **************************************************************/
17 
18 typedef enum _ARCTYPE
19 {
24 } ARCTYPE, *PARCTYPE;
25 
26 typedef enum _PALFUNCTYPE
27 {
35 
36 typedef enum _POLYFUNCTYPE
37 {
45 
46 typedef enum _GETDCDWORD
47 {
59 
60 typedef enum _GETSETDCDWORD
61 {
71 
72 typedef enum _GETDCPOINT
73 {
81 
82 
83 typedef enum _GDIBATCHCMD
84 {
95 
96 typedef enum _TRANSFORMTYPE
97 {
101 
102 /* MATRIX flAccel flags */
103 enum
104 {
112 
113  /* ReactOS specific */
114  XFORM_INTEGER = 0x1000,
115 };
116 
117 typedef enum GDIObjType
118 {
153 
154 typedef enum GDILoObjType
155 {
172 
177 #define MWT_SET 0x04
178 
179 #define GdiWorldSpaceToPageSpace 0x203
180 #define GdiWorldSpaceToDeviceSpace 0x204
181 #define GdiPageSpaceToDeviceSpace 0x304
182 #define GdiDeviceSpaceToWorldSpace 0x402
183 
184 /* FIXME: Unknown */
186 typedef DWORD LFTYPE;
187 
188 /* Public LAST_STOCK = 19, plus 2 more internal entries */
189 #define NB_STOCK_OBJECTS 22
190 
191 /* extra stock object: default 1x1 bitmap for memory DCs */
192 #define DEFAULT_BITMAP (21)
193 
194 
195 /* DEFINES *******************************************************************/
196 
197 #define GDIBATCHBUFSIZE 0x136*4
198 #define GDI_BATCH_LIMIT 20
199 
200 // NtGdiGetCharWidthW Flags
201 #define GCW_WIN32 0x0001
202 #define GCW_NOFLOAT 0x0002
203 #define GCW_INDICES 0x0008
204 
205 // NtGdiGetCharABCWidthW Flags
206 #define GCABCW_NOFLOAT 0x0001
207 #define GCABCW_INDICES 0x0002
208 
209 // NtGdiGetTextExtent* flags (reactos own)
210 #define GTEF_INDICES 0x1
211 
212 /* CAPS1 support */
213 #define CAPS1 94
214 //#define C1_TRANSPARENT 0x0001
215 #define TC_TT_ABLE 0x0002
216 #define C1_TT_CR_ANY 0x0004
217 #define C1_EMF_COMPLIANT 0x0008
218 #define C1_DIBENGINE 0x0010
219 #define C1_GAMMA_RAMP 0x0040
220 #define C1_REINIT_ABLE 0x0080
221 #define C1_GLYPH_INDEX 0x0100
222 #define C1_BIT_PACKED 0x0200
223 #define C1_BYTE_PACKED 0x0400
224 #define C1_COLORCURSOR 0x0800
225 #define C1_CMYK_ABLE 0x1000
226 #define C1_SLOW_CARD 0x2000
227 #define C1_MIRRORING 0X4000
228 
229 // NtGdiGetRandomRgn iCodes
230 #define CLIPRGN 1 // GetClipRgn
231 #define METARGN 2 // GetMetaRgn
232 #define APIRGN 3
233 
234 /* New flag for fdwInit in CreateDIBitmap. See support.microsoft.com/kb/kbview/108497*/
235 #define CBM_CREATDIB 2
236 
237 /* New color use parameter. See support.microsoft.com/kb/kbview/108497 */
238 #define DIB_PAL_INDICES 2
239 
240 /* Get/SetBounds/Rect support. */
241 #define DCB_WINDOWMGR 0x8000 /* Queries the Windows bounding rectangle instead of the application's */
242 
243 /* TYPES *********************************************************************/
244 
246 typedef PVOID PUMDHPDEV;
248 #if !defined(_WINDDI_)
249 typedef LONG FIX;
250 #endif
251 
252 typedef struct _CHWIDTHINFO // Based on FD_DEVICEMETRICS
253 {
258 
259 typedef struct _UNIVERSAL_FONT_ID
260 {
264 
265 #define RI_TECH_BITMAP 1
266 #define RI_TECH_FIXED 2
267 #define RI_TECH_SCALABLE 3
268 
269 typedef struct _REALIZATION_INFO
270 {
275 
276 typedef struct _WIDTHDATA
277 {
289 
290 typedef struct _DEVCAPS // Very similar to GDIINFO
291 {
328 } DEVCAPS, *PDEVCAPS;
329 
330 /* Gdi Handle Cache Types and Structures */
331 #define GDI_CACHED_HANDLE_TYPES 4
332 #define CACHE_BRUSH_ENTRIES 10
333 #define CACHE_PEN_ENTRIES 8
334 #define CACHE_REGION_ENTRIES 8
335 #define CACHE_LFONT_ENTRIES 1
336 
337 typedef enum _HANDLECACHETYPE
338 {
344 
345 typedef struct _GDIHANDLECACHE
346 {
351 
352 /* Font Structures */
353 typedef struct _TMDIFF
354 {
360 } TMDIFF, *PTMDIFF;
361 
362 typedef struct _TMW_INTERNAL
363 {
367 
368 typedef struct _NTMW_INTERNAL
369 {
373 
374 typedef struct _ENUMFONTDATAW
375 {
379  ENUMLOGFONTEXDVW elfexdv; /* variable size! */
380  /* NTMW_INTERNAL ntmwi; use ulNtwmOffset */
382 
383 /* Number Representation */
384 typedef struct _EFLOAT_S
385 {
388 } EFLOAT_S;
389 
390 /* XFORM Structures */
391 typedef struct _MATRIX_S
392 {
402 } MATRIX_S;
403 
404 typedef struct _MATRIX
405 {
415 } MATRIX, *PMATRIX;
416 
417 /* Gdi XForm storage union */
418 typedef union
419 {
422 } gxf_long;
423 
424 #define CFONT_REALIZATION 0x0080
425 
426 typedef struct _CFONT
427 {
428  struct _CFONT *pcfNext;
430  ULONG cRef; // Count of all pointers to this CFONT.
432  LONG lHeight; // Precomputed logical height.
433  HDC hdc; // HDC of realization. 0 for display.
434  EFLOAT_S efM11; // efM11 of WtoD of DC of realization
435  EFLOAT_S efM22; // efM22 of WtoD of DC of realization
436  EFLOAT_S efDtoWBaseline; // Precomputed back transform. (FXtoL)
437  EFLOAT_S efDtoWAscent; // Precomputed back transform. (FXtoL)
440  USHORT sWidth[256]; // Widths in pels.
441  ULONG ulAveWidth; // bogus average used by USER
442  TMW_INTERNAL tmw; // cached metrics
447 } CFONT, *PCFONT;
448 
449 /* GDI Batch structures. */
450 typedef struct _GDIBATCHHDR
451 {
455 
456 typedef struct _GDIBSPATBLT
457 {
459  int nXLeft;
460  int nYLeft;
461  int nWidth;
462  int nHeight;
474 
475 /* FIXME: this should go to some "public" GDI32 header */
476 typedef struct _PATRECT
477 {
479  HBRUSH hBrush;
480 } PATRECT, * PPATRECT;
481 
482 typedef struct _GDIBSPPATBLT
483 {
495  PATRECT pRect[1]; // POLYPATBLT
497 
498 //
499 // Both ExtSelectClipRgn and TextOut pass a nill RECT.
500 //
501 #define GDIBS_NORECT 0x80000000
502 
503 typedef struct _GDIBSTEXTOUT
504 {
511  int x;
512  int y;
521  union {
524  };
526 
527 typedef struct _GDIBSEXTTEXTOUT
528 {
536 
537 typedef struct _GDIBSSETBRHORG
538 {
542 
543 typedef struct _GDIBSEXTSELCLPRGN
544 {
546  int fnMode;
549 
550 /* Use with GdiBCSelObj, GdiBCDelObj and GdiBCDelRgn. */
551 typedef struct _GDIBSOBJECT
552 {
556 
557 /* Declaration missing in ddk/winddi.h */
559 
560 /* Most of these are defined in ddk/winddi.h */
561 typedef struct _DRIVER_FUNCTIONS
562 {
655  PVOID Reserved11; /* 92 */
656 
657  /* ReactOS specify */
660 
661 #define ASSERT_PFN(pfn) \
662  C_ASSERT(FIELD_OFFSET(DRIVER_FUNCTIONS, pfn) == sizeof(PVOID) * INDEX_Drv##pfn)
663 
664 ASSERT_PFN(EnablePDEV);
665 ASSERT_PFN(CompletePDEV);
666 ASSERT_PFN(DisablePDEV);
667 ASSERT_PFN(EnableSurface);
668 ASSERT_PFN(DisableSurface);
669 ASSERT_PFN(AssertMode);
671 ASSERT_PFN(ResetPDEV);
672 ASSERT_PFN(DisableDriver);
673 ASSERT_PFN(CreateDeviceBitmap);
674 ASSERT_PFN(DeleteDeviceBitmap);
675 ASSERT_PFN(RealizeBrush);
676 ASSERT_PFN(DitherColor);
680 ASSERT_PFN(Paint);
682 ASSERT_PFN(CopyBits);
684 ASSERT_PFN(SetPalette);
688 ASSERT_PFN(QueryFont);
689 ASSERT_PFN(QueryFontTree);
690 ASSERT_PFN(QueryFontData);
691 ASSERT_PFN(SetPointerShape);
692 ASSERT_PFN(MovePointer);
694 ASSERT_PFN(SendPage);
698 ASSERT_PFN(GetGlyphMode);
699 ASSERT_PFN(Synchronize);
700 ASSERT_PFN(SaveScreenBits);
701 ASSERT_PFN(GetModes);
703 ASSERT_PFN(DestroyFont);
704 ASSERT_PFN(QueryFontCaps);
705 ASSERT_PFN(LoadFontFile);
706 ASSERT_PFN(UnloadFontFile);
707 ASSERT_PFN(FontManagement);
708 ASSERT_PFN(QueryTrueTypeTable);
709 ASSERT_PFN(QueryTrueTypeOutline);
710 ASSERT_PFN(GetTrueTypeFile);
711 ASSERT_PFN(QueryFontFile);
712 ASSERT_PFN(MovePanning);
713 ASSERT_PFN(QueryAdvanceWidths);
717 ASSERT_PFN(StartBanding);
718 ASSERT_PFN(NextBand);
719 ASSERT_PFN(GetDirectDrawInfo);
720 ASSERT_PFN(EnableDirectDraw);
721 ASSERT_PFN(DisableDirectDraw);
722 ASSERT_PFN(QuerySpoolType);
723 ASSERT_PFN(IcmCreateColorTransform);
724 ASSERT_PFN(IcmDeleteColorTransform);
725 ASSERT_PFN(IcmCheckBitmapBits);
726 ASSERT_PFN(IcmSetDeviceGammaRamp);
727 ASSERT_PFN(GradientFill);
728 ASSERT_PFN(StretchBltROP);
731 ASSERT_PFN(SynthesizeFont);
732 ASSERT_PFN(GetSynthesizedFontFiles);
734 ASSERT_PFN(QueryPerBandInfo);
735 ASSERT_PFN(QueryDeviceSupport);
741 ASSERT_PFN(Reserved6);
743 ASSERT_PFN(Reserved8);
744 ASSERT_PFN(DeriveSurface);
745 ASSERT_PFN(QueryGlyphAttrs);
747 ASSERT_PFN(SynchronizeSurface);
749 
750 #endif
#define CACHE_PEN_ENTRIES
Definition: ntgdityp.h:333
#define ASSERT_PFN(pfn)
Definition: ntgdityp.h:661
EFLOAT_S efM21
Definition: ntgdityp.h:395
TEXTMETRICW TextMetric
Definition: ntgdityp.h:364
PFN_DrvOffset Offset
Definition: ntgdityp.h:569
struct _MATRIX_S MATRIX_S
PFN_DrvDisablePDEV DisablePDEV
Definition: ntgdityp.h:565
BOOL WINAPI SHIM_OBJ_NAME() Notify(DWORD fdwReason, PVOID ptr)
POINTL ptlViewportOrg
Definition: ntgdityp.h:494
PFN_DrvQueryFontData QueryFontData
Definition: ntgdityp.h:591
FLOAT f
Definition: ntgdityp.h:420
DWORD rop4
Definition: ntgdityp.h:485
struct _GDIBSPATBLT * PGDIBSPATBLT
#define TransparentBlt
Definition: misc.c:292
FN_DrvSetPixelFormat * PFN_DrvSetPixelFormat
Definition: winddi.h:4024
FN_DrvEnableSurface * PFN_DrvEnableSurface
Definition: winddi.h:3564
FN_DrvIcmCheckBitmapBits * PFN_DrvIcmCheckBitmapBits
Definition: winddi.h:3667
PFN_DrvTextOut TextOut
Definition: ntgdityp.h:586
_GDIBATCHCMD
Definition: ntgdityp.h:83
COLORREF crBackgroundClr
Definition: ntgdityp.h:489
ULONG l
Definition: ntgdityp.h:421
struct _GDIBSSETBRHORG GDIBSSETBRHORG
PFN_DrvStartBanding StartBanding
Definition: ntgdityp.h:620
PFN_DrvSendPage SendPage
Definition: ntgdityp.h:595
ULONG ulBackgroundClr
Definition: ntgdityp.h:534
_POLYFUNCTYPE
Definition: ntgdityp.h:36
ULONG ulBltAlignment
Definition: ntgdityp.h:321
PATRECT pRect[1]
Definition: ntgdityp.h:495
PFN_DrvEnableSurface EnableSurface
Definition: ntgdityp.h:566
STRING Escape(const STRING &str)
Definition: fontsub.cpp:1030
FN_DrvQueryTrueTypeOutline * PFN_DrvQueryTrueTypeOutline
Definition: winddi.h:3935
PFN_DrvFree Free
Definition: ntgdityp.h:605
ULONG ulHorzRes
Definition: ntgdityp.h:298
FLOATOBJ efM21
Definition: ntgdityp.h:408
PFN_DrvSwapBuffers SwapBuffers
Definition: ntgdityp.h:619
ULONG ulBrushClr
Definition: ntgdityp.h:493
PFN_DrvCopyBits CopyBits
Definition: ntgdityp.h:582
FN_DrvTextOut * PFN_DrvTextOut
Definition: winddi.h:4184
FN_DrvPaint * PFN_DrvPaint
Definition: winddi.h:3769
struct _GDIHANDLECACHE GDIHANDLECACHE
FN_DrvQueryFontCaps * PFN_DrvQueryFontCaps
Definition: winddi.h:3851
COLORREF crBackgroundClr
Definition: ntgdityp.h:466
PFN_DrvQueryFontTree QueryFontTree
Definition: ntgdityp.h:590
#define CACHE_REGION_ENTRIES
Definition: ntgdityp.h:334
CHAR chLast
Definition: ntgdityp.h:357
LONG lMinC
Definition: ntgdityp.h:255
SHORT Size
Definition: ntgdityp.h:452
FN_DrvFillPath * PFN_DrvFillPath
Definition: winddi.h:3597
FN_DrvSendPage * PFN_DrvSendPage
Definition: winddi.h:4002
#define GDI_CACHED_HANDLE_TYPES
Definition: ntgdityp.h:331
_HANDLECACHETYPE
Definition: ntgdityp.h:337
PFN_DrvStrokePath StrokePath
Definition: ntgdityp.h:577
ULONG ulVertSizeM
Definition: ntgdityp.h:295
ULONG ulRasterCaps
Definition: ntgdityp.h:305
COLORREF crForegroundClr
Definition: ntgdityp.h:488
struct _MATRIX * PMATRIX
PFN_DrvGetTrueTypeFile GetTrueTypeFile
Definition: ntgdityp.h:613
FN_DrvNotify * PFN_DrvNotify
Definition: winddi.h:3750
DWORD dwRop
Definition: ntgdityp.h:464
struct _GDIBSEXTTEXTOUT * PGDIBSEXTTEXTOUT
DWORD ResetDevice(DWORD private_handle)
enum _POLYFUNCTYPE * PPOLYFUNCTYPE
char CHAR
Definition: xmlstorage.h:175
struct _CFONT CFONT
ULONG ulNumFonts
Definition: ntgdityp.h:303
DWORD dwUnknown
Definition: ntgdityp.h:445
SHORT Cmd
Definition: ntgdityp.h:453
enum _HANDLECACHETYPE * PHANDLECACHETYPE
ULONG ulDesktopVertRes
Definition: ntgdityp.h:320
COLORREF crForegroundClr
Definition: ntgdityp.h:465
static HDC
Definition: imagelist.c:92
GDIBATCHHDR gbHdr
Definition: ntgdityp.h:545
PFN_DrvGetDirectDrawInfo GetDirectDrawInfo
Definition: ntgdityp.h:622
enum _GDIBATCHCMD * PGDIBATCHCMD
GDIBATCHHDR gbHdr
Definition: ntgdityp.h:484
ULONG ulHorzSize
Definition: ntgdityp.h:296
struct _GDIBATCHHDR * PGDIBATCHHDR
struct _GDIBSEXTSELCLPRGN * PGDIBSEXTSELCLPRGN
FN_DrvMovePointer * PFN_DrvMovePointer
Definition: winddi.h:3735
ULONG ulNtmwiOffset
Definition: ntgdityp.h:377
struct _GDIBATCHHDR GDIBATCHHDR
BOOL WINAPI LineTo(_In_ HDC, _In_ int, _In_ int)
FLONG flAccel
Definition: ntgdityp.h:401
CHAR ChBreak
Definition: ntgdityp.h:359
DWORD dwFontType
Definition: ntgdityp.h:378
PFN_DrvQuerySpoolType QuerySpoolType
Definition: ntgdityp.h:625
PFN_DrvDrawEscape DrawEscape
Definition: ntgdityp.h:588
FN_DrvFontManagement * PFN_DrvFontManagement
Definition: winddi.h:3609
_GETDCPOINT
Definition: ntgdityp.h:72
PFN_DrvResetDevice ResetDevice
Definition: ntgdityp.h:652
PFN_DrvQueryFont QueryFont
Definition: ntgdityp.h:589
FN_DrvCreateDeviceBitmap * PFN_DrvCreateDeviceBitmap
Definition: winddi.h:3469
COLORREF crBrushClr
Definition: ntgdityp.h:467
ULONG ulBitsPixel
Definition: ntgdityp.h:300
FN_DrvStartDoc * PFN_DrvStartDoc
Definition: winddi.h:4073
PFN_DrvStrokeAndFillPath StrokeAndFillPath
Definition: ntgdityp.h:579
struct _ENUMFONTDATAW ENUMFONTDATAW
_TRANSFORMTYPE
Definition: ntgdityp.h:96
ULONG ulPhysicalHeight
Definition: ntgdityp.h:314
FN_DrvStartPage * PFN_DrvStartPage
Definition: winddi.h:4079
static VOID NTAPI BitBlt(IN ULONG Left, IN ULONG Top, IN ULONG Width, IN ULONG Height, IN PUCHAR Buffer, IN ULONG BitsPerPixel, IN ULONG Delta)
Definition: vga.c:416
struct _GDIBSOBJECT * PGDIBSOBJECT
PFN_DrvQueryDeviceSupport QueryDeviceSupport
Definition: ntgdityp.h:639
int32_t INT
Definition: typedefs.h:56
ULONG ulVRefresh
Definition: ntgdityp.h:318
FN_DrvIcmCreateColorTransform * PFN_DrvIcmCreateColorTransform
Definition: winddi.h:3681
EFLOAT_S efM22
Definition: ntgdityp.h:396
BOOL WINAPI StretchBlt(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_opt_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_ DWORD)
BOOL WINAPI SetPixelFormat(_In_ HDC, _In_ int, _In_ const PIXELFORMATDESCRIPTOR *)
struct _TMDIFF TMDIFF
PFN_DrvSetPointerShape SetPointerShape
Definition: ntgdityp.h:592
LONG lBkMode
Definition: ntgdityp.h:508
PFN_DrvDescribePixelFormat DescribePixelFormat
Definition: ntgdityp.h:618
USHORT sWidth[256]
Definition: ntgdityp.h:440
DWORD iUniq
Definition: ntgdityp.h:444
_In_opt_ PALLOCATE_FUNCTION _In_opt_ PFREE_FUNCTION Free
Definition: exfuncs.h:656
USHORT sDefaultInc
Definition: ntgdityp.h:287
DWORD iTechnology
Definition: ntgdityp.h:443
FN_DrvSynchronizeSurface * PFN_DrvSynchronizeSurface
Definition: winddi.h:4169
FLONG flTextAlign
Definition: ntgdityp.h:519
struct _GDIBSTEXTOUT * PGDIBSTEXTOUT
int WINAPI StartPage(_In_ HDC)
HANDLE hbrush
Definition: ntgdityp.h:463
ULONG ulPanningVertRes
Definition: ntgdityp.h:323
struct _TMW_INTERNAL TMW_INTERNAL
FN_DrvStrokeAndFillPath * PFN_DrvStrokeAndFillPath
Definition: winddi.h:4128
FN_DrvQueryFontData * PFN_DrvQueryFontData
Definition: winddi.h:3875
PFN_DrvSetPixelFormat SetPixelFormat
Definition: ntgdityp.h:617
PFN_DrvQueryPerBandInfo QueryPerBandInfo
Definition: ntgdityp.h:638
GDIBATCHHDR gbHdr
Definition: ntgdityp.h:505
ULONG ulShadeBlend
Definition: ntgdityp.h:326
EFLOAT_S efDtoWAscent
Definition: ntgdityp.h:437
PFN_DrvCreateDeviceBitmap CreateDeviceBitmap
Definition: ntgdityp.h:573
ULONG cRef
Definition: ntgdityp.h:430
TMDIFF tmd
Definition: ntgdityp.h:370
struct _TMW_INTERNAL * PTMW_INTERNAL
struct _DEVCAPS DEVCAPS
BOOL WINAPI PlgBlt(_In_ HDC hdcDest, _In_reads_(3) const POINT *lpPoint, _In_ HDC hdcSrc, _In_ int xSrc, _In_ int ySrc, _In_ int width, _In_ int height, _In_opt_ HBITMAP hbmMask, _In_ int xMask, _In_ int yMask)
PFN_DrvPlgBlt PlgBlt
Definition: ntgdityp.h:633
struct _WIDTHDATA WIDTHDATA
WIDTHDATA wd
Definition: ntgdityp.h:438
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
FN_DrvIcmDeleteColorTransform * PFN_DrvIcmDeleteColorTransform
Definition: winddi.h:3688
enum _ARCTYPE * PARCTYPE
D3DNTHAL_CONTEXTCREATEDATA D3DNTHAL_CONTEXTCREATEI
Definition: ntgdityp.h:247
PFN_DrvGetModes GetModes
Definition: ntgdityp.h:604
PFN_DrvGradientFill GradientFill
Definition: ntgdityp.h:631
long LONG
Definition: pedump.c:60
PFN_DrvRealizeBrush RealizeBrush
Definition: ntgdityp.h:575
short SHORT
Definition: pedump.c:59
ULONG ulNumPens
Definition: ntgdityp.h:302
PFN_DrvStretchBlt StretchBlt
Definition: ntgdityp.h:583
ULONG ulVertRes
Definition: ntgdityp.h:299
PFN_DrvBitBlt BitBlt
Definition: ntgdityp.h:581
BOOL WINAPI StrokeAndFillPath(_In_ HDC)
FN_DrvSaveScreenBits * PFN_DrvSaveScreenBits
Definition: winddi.h:3996
PVOID PUMDHPDEV
Definition: ntgdityp.h:246
int WINAPI DescribePixelFormat(_In_ HDC hdc, _In_ int iPixelFormat, _In_ UINT nBytes, _Out_writes_bytes_opt_(nBytes) LPPIXELFORMATDESCRIPTOR ppfd)
FN_DrvOffset * PFN_DrvOffset
Definition: winddi.h:3759
DWORD Count
Definition: ntgdityp.h:487
FN_DrvCompletePDEV * PFN_DrvCompletePDEV
Definition: winddi.h:3450
struct _REALIZATION_INFO REALIZATION_INFO
struct _GDIBSSETBRHORG * PGDIBSSETBRHORG
FN_DrvStrokePath * PFN_DrvStrokePath
Definition: winddi.h:4141
struct _GDIBSPPATBLT GDIBSPPATBLT
struct _GDIBSOBJECT GDIBSOBJECT
ULONG ulBackgroundClr
Definition: ntgdityp.h:492
EFLOAT_S efM22
Definition: ntgdityp.h:435
FN_DrvDeleteDeviceBitmap * PFN_DrvDeleteDeviceBitmap
Definition: winddi.h:3475
struct _TMDIFF * PTMDIFF
PFN_DrvNotify Notify
Definition: ntgdityp.h:650
ULONG ulVertSize
Definition: ntgdityp.h:297
FN_DrvDestroyFont * PFN_DrvDestroyFont
Definition: winddi.h:3497
COLORREF crBackgroundClr
Definition: ntgdityp.h:507
FN_DrvQueryTrueTypeTable * PFN_DrvQueryTrueTypeTable
Definition: winddi.h:3948
FN_DrvDisablePDEV * PFN_DrvDisablePDEV
Definition: winddi.h:3508
EFLOAT_S efDx
Definition: ntgdityp.h:397
FN_DrvEnableDriver * PFN_DrvEnableDriver
Definition: winddi.h:3542
struct _GDIBSPPATBLT * PGDIBSPPATBLT
ULONG xPanningAlignment
Definition: ntgdityp.h:324
FN_DrvLineTo * PFN_DrvLineTo
Definition: winddi.h:3714
FN_DrvGradientFill * PFN_DrvGradientFill
Definition: winddi.h:3658
BOOL WINAPI StrokePath(_In_ HDC)
ULONG ulAspectXY
Definition: ntgdityp.h:308
PFN_DrvIcmCreateColorTransform IcmCreateColorTransform
Definition: ntgdityp.h:627
LONG lHeight
Definition: ntgdityp.h:432
BYTE jDefault
Definition: ntgdityp.h:285
LONG FIX
Definition: ntgdityp.h:249
FN_DrvQuerySpoolType * PFN_DrvQuerySpoolType
Definition: winddi.h:4238
LONG lMinA
Definition: ntgdityp.h:254
DWORD LFTYPE
Definition: ntgdityp.h:186
Definition: bufpool.h:45
FN_DrvGetTrueTypeFile * PFN_DrvGetTrueTypeFile
Definition: winddi.h:3643
FLONG fl
Definition: ntgdityp.h:431
COLORREF crBrushClr
Definition: ntgdityp.h:490
Definition: bcd.h:202
unsigned long FLONG
Definition: ntbasedef.h:373
PFN_DrvLineTo LineTo
Definition: ntgdityp.h:594
UINT Options
Definition: ntgdityp.h:513
HFONT hf
Definition: ntgdityp.h:429
PFN_DrvStartDoc StartDoc
Definition: ntgdityp.h:598
enum _POLYFUNCTYPE POLYFUNCTYPE
FN_DrvQueryFont * PFN_DrvQueryFont
Definition: winddi.h:3838
BOOL WINAPI SwapBuffers(HDC)
Definition: wingl.c:187
FN_DrvDrawEscape * PFN_DrvDrawEscape
Definition: winddi.h:3534
ULONG ulColorRes
Definition: ntgdityp.h:312
EFLOAT_S efDy
Definition: ntgdityp.h:398
FN_DrvQueryAdvanceWidths * PFN_DrvQueryAdvanceWidths
Definition: winddi.h:3800
ULONG ulPhysicalOffsetY
Definition: ntgdityp.h:316
USHORT sBreak
Definition: ntgdityp.h:281
FN_DrvNextBand * PFN_DrvNextBand
Definition: winddi.h:3742
ULONG ulAspectY
Definition: ntgdityp.h:307
PFN_DrvEndDoc EndDoc
Definition: ntgdityp.h:597
_In_ HANDLE Handle
Definition: extypes.h:390
ULONG ulBackgroundClr
Definition: ntgdityp.h:510
FN_DrvFree * PFN_DrvFree
Definition: winddi.h:3616
HBRUSH hBrush
Definition: ntgdityp.h:479
RECT r
Definition: ntgdityp.h:478
FN_DrvGetGlyphMode * PFN_DrvGetGlyphMode
Definition: winddi.h:3628
FN_DrvGetDirectDrawInfo * PFN_DrvGetDirectDrawInfo
Definition: winddi.h:4231
struct _GDIHANDLECACHE * PGDIHANDLECACHE
ULONG ulPlanes
Definition: ntgdityp.h:301
ULONG cjotma
Definition: ntgdityp.h:355
ULONG ulVersion
Definition: ntgdityp.h:292
enum _GETDCDWORD GETDCDWORD
FN_DrvAlphaBlend * PFN_DrvAlphaBlend
Definition: winddi.h:3420
struct _DRIVER_FUNCTIONS * PDRIVER_FUNCTIONS
PVOID GetSynthesizedFontFiles
Definition: ntgdityp.h:636
FLOAT FLOATOBJ
Definition: winddi.h:677
__wchar_t WCHAR
Definition: xmlstorage.h:180
FN_DrvSetPalette * PFN_DrvSetPalette
Definition: winddi.h:4016
COLORREF crForegroundClr
Definition: ntgdityp.h:506
struct _DEVCAPS * PDEVCAPS
GDILoObjType
Definition: ntgdityp.h:154
struct _NTMW_INTERNAL NTMW_INTERNAL
HGDIOBJ hgdiobj
Definition: ntgdityp.h:554
PFN_DrvDisableSurface DisableSurface
Definition: ntgdityp.h:567
struct _DRIVER_FUNCTIONS DRIVER_FUNCTIONS
PFN_DrvIcmDeleteColorTransform IcmDeleteColorTransform
Definition: ntgdityp.h:628
DWORD COLORREF
Definition: windef.h:285
FN_DrvSetPointerShape * PFN_DrvSetPointerShape
Definition: winddi.h:4058
FN_DrvDescribePixelFormat * PFN_DrvDescribePixelFormat
Definition: winddi.h:3491
USHORT sOverhang
Definition: ntgdityp.h:278
FLOATOBJ efDy
Definition: ntgdityp.h:411
PFN_DrvIcmSetDeviceGammaRamp IcmSetDeviceGammaRamp
Definition: ntgdityp.h:630
struct _GDIBSTEXTOUT GDIBSTEXTOUT
FN_DrvLoadFontFile * PFN_DrvLoadFontFile
Definition: winddi.h:3726
PFN_DrvQueryTrueTypeOutline QueryTrueTypeOutline
Definition: ntgdityp.h:612
FN_DrvQueryGlyphAttrs * PFN_DrvQueryGlyphAttrs
Definition: winddi.h:3911
PFN_DrvFontManagement FontManagement
Definition: ntgdityp.h:610
enum _GETSETDCDWORD * PGETSETDCDWORD
USHORT sDBCSInc
Definition: ntgdityp.h:286
unsigned long DWORD
Definition: ntddk_ex.h:95
FN_DrvIcmSetDeviceGammaRamp * PFN_DrvIcmSetDeviceGammaRamp
Definition: winddi.h:3700
BYTE jFirst
Definition: ntgdityp.h:282
PFN_DrvFillPath FillPath
Definition: ntgdityp.h:578
POINTL ptlViewportOrg
Definition: ntgdityp.h:533
FN_DrvQueryDeviceSupport * PFN_DrvQueryDeviceSupport
Definition: winddi.h:3817
INT IcmBrushColor
Definition: ntgdityp.h:468
struct _NTMW_INTERNAL * PNTMW_INTERNAL
ULONG ulPanningHorzRes
Definition: ntgdityp.h:322
struct _REALIZATION_INFO * PREALIZATION_INFO
enum _PALFUNCTYPE * PPALFUNCTYPE
ULONG ulDesktopHorzRes
Definition: ntgdityp.h:319
FN_DrvQueryPerBandInfo * PFN_DrvQueryPerBandInfo
Definition: winddi.h:3918
LONG FIX
Definition: winddi.h:126
_ARCTYPE
Definition: ntgdityp.h:18
#define CACHE_BRUSH_ENTRIES
Definition: ntgdityp.h:332
FIX fxDy
Definition: ntgdityp.h:413
struct _WIDTHDATA * PWIDTHDATA
FLOATOBJ efM12
Definition: ntgdityp.h:407
#define CACHE_LFONT_ENTRIES
Definition: ntgdityp.h:335
PFN_DrvEnableDriver EnableDriver
Definition: ntgdityp.h:658
_GETDCDWORD
Definition: ntgdityp.h:46
enum _GETDCDWORD * PGETDCDWORD
ENUMLOGFONTEXDVW elfexdv
Definition: ntgdityp.h:379
ULONG ulLogPixelsY
Definition: ntgdityp.h:310
enum GDIObjType * PGDIOBJTYPE
PFN_DrvAlphaBlend AlphaBlend
Definition: ntgdityp.h:634
PFN_DrvStretchBltROP StretchBltROP
Definition: ntgdityp.h:632
FN_DrvStretchBlt * PFN_DrvStretchBlt
Definition: winddi.h:4095
PFN_DrvNextBand NextBand
Definition: ntgdityp.h:621
#define VOID
Definition: acefi.h:82
FLONG flAccel
Definition: ntgdityp.h:414
HANDLE hlfntNew
Definition: ntgdityp.h:518
PFN_DrvDisableDirectDraw DisableDirectDraw
Definition: ntgdityp.h:624
ULONG ulBackgroundClr
Definition: ntgdityp.h:471
unsigned char BYTE
Definition: mem.h:68
ULONG ulPhysicalOffsetX
Definition: ntgdityp.h:315
PFN_DrvQueryFontCaps QueryFontCaps
Definition: ntgdityp.h:607
FN_DrvDeriveSurface * PFN_DrvDeriveSurface
Definition: winddi.h:3482
ULONG ulNumHandles[GDI_CACHED_HANDLE_TYPES]
Definition: ntgdityp.h:348
_PALFUNCTYPE
Definition: ntgdityp.h:26
PFN_DrvDeleteDeviceBitmap DeleteDeviceBitmap
Definition: ntgdityp.h:574
PVOID KERNEL_PVOID
Definition: ntgdityp.h:245
struct _PATRECT * PPATRECT
PFN_DrvStartPage StartPage
Definition: ntgdityp.h:596
USHORT sHeight
Definition: ntgdityp.h:279
FN_DrvBitBlt * PFN_DrvBitBlt
Definition: winddi.h:3443
WCHAR String[2]
Definition: ntgdityp.h:522
struct _CHWIDTHINFO * PCHWIDTHINFO
GDIBATCHHDR gbHdr
Definition: ntgdityp.h:539
FN_DrvStretchBltROP * PFN_DrvStretchBltROP
Definition: winddi.h:4113
FN_DrvCopyBits * PFN_DrvCopyBits
Definition: winddi.h:3461
FLOATOBJ efM22
Definition: ntgdityp.h:409
POINTL ptlViewportOrg
Definition: ntgdityp.h:520
FN_DrvDitherColor * PFN_DrvDitherColor
Definition: winddi.h:3523
DWORD FULLSCREENCONTROL
Definition: ntgdityp.h:185
PFN_DrvMovePointer MovePointer
Definition: ntgdityp.h:593
ULONG ulBrushClr
Definition: ntgdityp.h:472
FN_DrvPlgBlt * PFN_DrvPlgBlt
Definition: winddi.h:3785
POINTL ptlViewportOrg
Definition: ntgdityp.h:469
struct _PATRECT PATRECT
struct _UNIVERSAL_FONT_ID UNIVERSAL_FONT_ID
struct _GDIBSEXTSELCLPRGN GDIBSEXTSELCLPRGN
TMW_INTERNAL tmw
Definition: ntgdityp.h:442
EFLOAT_S efM11
Definition: ntgdityp.h:393
DWORD iCS_CP
Definition: ntgdityp.h:515
FN_DrvStartBanding * PFN_DrvStartBanding
Definition: winddi.h:4065
enum GDILoObjType * PGDILOOBJTYPE
PFN_DrvDitherColor DitherColor
Definition: ntgdityp.h:576
PFN_DrvIcmCheckBitmapBits IcmCheckBitmapBits
Definition: ntgdityp.h:629
enum _GETDCPOINT GETDCPOINT
FIX fxDx
Definition: ntgdityp.h:399
FN_DrvGetModes * PFN_DrvGetModes
Definition: winddi.h:3636
enum _GDIBATCHCMD GDIBATCHCMD
struct _GDIBSPATBLT GDIBSPATBLT
FN_DrvEnableDirectDraw * PFN_DrvEnableDirectDraw
Definition: winddi.h:4220
GDIObjType
Definition: ntgdityp.h:117
LONG lExp
Definition: ntgdityp.h:387
struct _GDIBSEXTTEXTOUT GDIBSEXTTEXTOUT
FN_DrvMovePanning * PFN_DrvMovePanning
Definition: winddi.h:4257
FN_DrvQueryFontTree * PFN_DrvQueryFontTree
Definition: winddi.h:3904
enum _PALFUNCTYPE PALFUNCTYPE
unsigned short USHORT
Definition: pedump.c:61
FIX fxDy
Definition: ntgdityp.h:400
ULONG ulTextCaps
Definition: ntgdityp.h:317
CHAR ChDefault
Definition: ntgdityp.h:358
EFLOAT_S efDtoWBaseline
Definition: ntgdityp.h:436
PFN_DrvAssertMode AssertMode
Definition: ntgdityp.h:568
PFN_DrvSynchronizeSurface SynchronizeSurface
Definition: ntgdityp.h:651
PFN_DrvLoadFontFile LoadFontFile
Definition: ntgdityp.h:608
ULONG ulForegroundClr
Definition: ntgdityp.h:470
enum _ARCTYPE ARCTYPE
struct _CFONT * PCFONT
DWORD dwCFCount
Definition: ntgdityp.h:446
GDIBATCHHDR gbHdr
Definition: ntgdityp.h:529
enum _TRANSFORMTYPE * PTRANSFORMTYPE
unsigned int UINT
Definition: ndis.h:50
PFN_DrvDestroyFont DestroyFont
Definition: ntgdityp.h:606
FN_DrvRealizeBrush * PFN_DrvRealizeBrush
Definition: winddi.h:3964
ULONG ulPhysicalWidth
Definition: ntgdityp.h:313
PFN_DrvDisableDriver DisableDriver
Definition: ntgdityp.h:571
enum _GETDCPOINT * PGETDCPOINT
Definition: bcd.h:201
enum GDIObjType GDIOBJTYPE
PFN_DrvUnloadFontFile UnloadFontFile
Definition: ntgdityp.h:609
LONG lMant
Definition: ntgdityp.h:386
FLOATOBJ efM11
Definition: ntgdityp.h:406
enum _TRANSFORMTYPE TRANSFORMTYPE
PFN_DrvSetPalette SetPalette
Definition: ntgdityp.h:585
FLONG flInfo
Definition: ntgdityp.h:439
EFLOAT_S efM12
Definition: ntgdityp.h:394
TMDIFF Diff
Definition: ntgdityp.h:365
struct _EFLOAT_S EFLOAT_S
enum _HANDLECACHETYPE HANDLECACHETYPE
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
PFN_DrvQueryAdvanceWidths QueryAdvanceWidths
Definition: ntgdityp.h:616
FN_DrvEndDoc * PFN_DrvEndDoc
Definition: winddi.h:3574
PFN_DrvQueryGlyphAttrs QueryGlyphAttrs
Definition: ntgdityp.h:649
FN_DrvTransparentBlt * PFN_DrvTransparentBlt
Definition: winddi.h:4197
ULONG ulAspectX
Definition: ntgdityp.h:306
USHORT sCharInc
Definition: ntgdityp.h:280
#define AlphaBlend
Definition: misc.c:293
struct _ENUMFONTDATAW * PENUMFONTDATAW
EFLOAT_S efM11
Definition: ntgdityp.h:434
struct _UNIVERSAL_FONT_ID * PUNIVERSAL_FONT_ID
PFN_DrvEnablePDEV EnablePDEV
Definition: ntgdityp.h:563
PFN_DrvGetGlyphMode GetGlyphMode
Definition: ntgdityp.h:600
float FLOAT
Definition: typedefs.h:67
POINTL ptlBrushOrigin
Definition: ntgdityp.h:540
PFN_DrvPaint Paint
Definition: ntgdityp.h:580
PFN_DrvSaveScreenBits SaveScreenBits
Definition: ntgdityp.h:603
int WINAPI DrawEscape(_In_ HDC hdc, _In_ int iEscape, _In_ int cjIn, _In_reads_bytes_opt_(cjIn) LPCSTR lpIn)
FN_DrvEnablePDEV * PFN_DrvEnablePDEV
Definition: winddi.h:3558
PFN_DrvEnableDirectDraw EnableDirectDraw
Definition: ntgdityp.h:623
unsigned int ULONG
Definition: retypes.h:1
#define TextOut
Definition: wingdi.h:4461
FN_DrvAssertMode * PFN_DrvAssertMode
Definition: winddi.h:3427
UINT cbCount
Definition: ntgdityp.h:516
FN_DrvSwapBuffers * PFN_DrvSwapBuffers
Definition: winddi.h:4148
DWORD Mode
Definition: ntgdityp.h:486
ULONG ulColorMgmtCaps
Definition: ntgdityp.h:327
PFN_DrvTransparentBlt TransparentBlt
Definition: ntgdityp.h:637
PFN_DrvQueryTrueTypeTable QueryTrueTypeTable
Definition: ntgdityp.h:611
ULONG ulHorzSizeM
Definition: ntgdityp.h:294
LONG lMinD
Definition: ntgdityp.h:256
ULONG cbSize
Definition: ntgdityp.h:376
#define StartDoc
Definition: wingdi.h:4460
ULONG ulNumColors
Definition: ntgdityp.h:304
PFN_DrvSynchronize Synchronize
Definition: ntgdityp.h:601
FN_DrvEscape * PFN_DrvEscape
Definition: winddi.h:3585
PFN_DrvQueryFontFile QueryFontFile
Definition: ntgdityp.h:614
struct _CFONT * pcfNext
Definition: ntgdityp.h:428
FIX fxDx
Definition: ntgdityp.h:412
PFN_DrvCompletePDEV CompletePDEV
Definition: ntgdityp.h:564
ULONG ulForegroundClr
Definition: ntgdityp.h:509
BOOL WINAPI FillPath(_In_ HDC)
struct _MATRIX MATRIX
BYTE jBreak
Definition: ntgdityp.h:284
PFN_DrvMovePanning MovePanning
Definition: ntgdityp.h:615
ULONG ulSizePalette
Definition: ntgdityp.h:311
_GETSETDCDWORD
Definition: ntgdityp.h:60
enum GDILoObjType GDILOOBJTYPE
PFN_DrvResetDevice ResetPDEV
Definition: ntgdityp.h:570
ULONG yPanningAlignment
Definition: ntgdityp.h:325
ULONG ulAveWidth
Definition: ntgdityp.h:441
ULONG ulLogPixelsX
Definition: ntgdityp.h:309
FN_DrvSynchronize * PFN_DrvSynchronize
Definition: winddi.h:4155
GDIBATCHHDR gbHdr
Definition: ntgdityp.h:458
FN_DrvDisableDirectDraw * PFN_DrvDisableDirectDraw
Definition: winddi.h:4211
FN_DrvDisableSurface * PFN_DrvDisableSurface
Definition: winddi.h:3514
FN_DrvDisableDriver * PFN_DrvDisableDriver
Definition: winddi.h:3502
BYTE jLast
Definition: ntgdityp.h:283
PVOID SynthesizeFont
Definition: ntgdityp.h:635
PFN_DrvDeriveSurface DeriveSurface
Definition: ntgdityp.h:648
ULONG ulTechnology
Definition: ntgdityp.h:293
FN_DrvResetDevice * PFN_DrvResetDevice
Definition: winddi.h:3975
FN_DrvUnloadFontFile * PFN_DrvUnloadFontFile
Definition: winddi.h:4203
enum _GETSETDCDWORD GETSETDCDWORD
FN_DrvQueryFontFile * PFN_DrvQueryFontFile
Definition: winddi.h:3888
#define APIENTRY
Definition: api.h:79
struct _CHWIDTHINFO CHWIDTHINFO
PFN_DrvEscape Escape
Definition: ntgdityp.h:587
HDC hdc
Definition: ntgdityp.h:433
GDIBATCHHDR gbHdr
Definition: ntgdityp.h:553
FLOATOBJ efDx
Definition: ntgdityp.h:410
CHAR chFirst
Definition: ntgdityp.h:356
NEWTEXTMETRICEXW ntmw
Definition: ntgdityp.h:371
int WINAPI EndDoc(_In_ HDC)
ULONG ulForegroundClr
Definition: ntgdityp.h:491