8 #define W32KAPI DECLSPEC_ADDRSAFE
11 #ifndef _WINDOWBLT_NOTIFICATION_
12 #define _WINDOWBLT_NOTIFICATION_
15 #define TRACE_SURFACE_ALLOCS (DBG || 0)
17 /* NtGdiGetLinkedUfis */
18 #define FL_UFI_PRIVATEFONT 1
19 #define FL_UFI_DESIGNVECTOR_PFF 2
20 #define FL_UFI_MEMORYFONT 4
23 #define ICM_SET_MODE 1
24 #define ICM_SET_CALIBRATE_MODE 2
25 #define ICM_SET_COLOR_MODE 3
26 #define ICM_CHECK_COLOR_MODE 4
28 /* NtGdiCreateColorSpace */
29 #define LCSEX_ANSICREATED 1
30 #define LCSEX_TEMPPROFILE 2
33 #define GS_NUM_OBJS_ALL 0
34 #define GS_HANDOBJ_CURRENT 1
35 #define GS_HANDOBJ_MAX 2
36 #define GS_HANDOBJ_ALLOC 3
37 #define GS_LOOKASIDE_INFO 4
39 /* NtGdiEnumFontOpen */
40 #define TYPE_ENUMFONTS 1
41 #define TYPE_ENUMFONTFAMILIES 2
42 #define TYPE_ENUMFONTFAMILIESEX 3
44 typedef enum _COLORPALETTEINFO
48 } COLORPALETTEINFO
, *PCOLORPALETTEINFO
;
50 /* NtGdiIcmBrushInfo */
51 typedef enum _ICM_DIB_INFO_CMD
55 } ICM_DIB_INFO
, *PICM_DIB_INFO
;
57 /* NtGdiCreateColorSpace */
58 typedef struct _LOGCOLORSPACEEXW
60 LOGCOLORSPACEW lcsColorSpace
;
62 } LOGCOLORSPACEEXW
, *PLOGCOLORSPACEEXW
;
64 typedef struct _POLYPATBLT
71 } POLYPATBLT
, *PPOLYPATBLT
;
73 /* NtGdiAddRemoteMMInstanceToDC */
74 typedef struct tagDOWNLOADDESIGNVECTOR
76 UNIVERSAL_FONT_ID ufiBase
;
78 } DOWNLOADDESIGNVECTOR
;
88 NtGdiSetDIBitsToDeviceInternal(
103 IN BOOL bTransformCoordinates
,
104 IN OPTIONAL HANDLE hcmXform
110 NtGdiGetFontResourceInfoInternalW(
115 OUT LPDWORD pdwBytes
,
123 NtGdiGetGlyphIndicesW(
125 IN OPTIONAL LPWSTR pwc
,
127 OUT OPTIONAL LPWORD pgi
,
134 NtGdiGetGlyphIndicesWInternal(
136 IN OPTIONAL LPWSTR pwc
,
138 OUT OPTIONAL LPWORD pgi
,
146 NtGdiCreatePaletteInternal(
147 IN LPLOGPALETTE pLogPal
,
170 NtGdiStretchDIBitsInternal(
180 IN OPTIONAL LPBYTE pjInit
,
181 IN LPBITMAPINFO pbmi
,
192 NtGdiGetOutlineTextMetricsInternalW(
195 OUT OPTIONAL OUTLINETEXTMETRICW
*potmw
,
202 NtGdiGetAndSetDCDword(
230 OUT LPWSTR pszMonitorID
238 OUT OPTIONAL PUNIVERSAL_FONT_ID pufiLinkedUFIs
,
247 IN PUNIVERSAL_FONT_ID pufiLinks
,
256 OUT PUNIVERSAL_FONT_ID pufi
,
257 OUT OPTIONAL DESIGNVECTOR
*pdv
,
259 OUT ULONG
*pulBaseCheckSum
,
266 NtGdiForceUFIMapping(
268 IN PUNIVERSAL_FONT_ID pufi
275 IN PUNIVERSAL_FONT_ID pufi
,
276 OUT OPTIONAL ULONG
* pcwc
,
277 OUT OPTIONAL LPWSTR pwszPathname
,
278 OUT OPTIONAL ULONG
* pcNumFiles
,
280 OUT OPTIONAL BOOL
*pbMemFont
,
281 OUT OPTIONAL ULONG
*pcjView
,
282 OUT OPTIONAL PVOID pvView
,
283 OUT OPTIONAL BOOL
*pbTTC
,
284 OUT OPTIONAL ULONG
*piTTC
290 NtGdiAddRemoteFontToDC(
294 IN OPTIONAL PUNIVERSAL_FONT_ID pufi
300 NtGdiAddFontMemResourceEx(
303 IN DESIGNVECTOR
*pdv
,
311 NtGdiRemoveFontMemResourceEx(
325 NtGdiRemoveMergeFont(
327 IN UNIVERSAL_FONT_ID
*pufi
342 OUT PUNIVERSAL_FONT_ID pufi
,
343 OUT OPTIONAL DESIGNVECTOR
*pdv
,
345 OUT ULONG
*pulBaseCheckSum
,
347 OUT KERNEL_PVOID
*embFontID
360 NtGdiChangeGhostFont(
361 IN KERNEL_PVOID
*pfontID
,
406 NtGdiComputeXformCoefficients(
419 OUT OPTIONAL WIDTHDATA
*pwd
,
426 NtGdiDescribePixelFormat(
430 OUT PPIXELFORMATDESCRIPTOR ppfd
451 NtGdiSetupPublicCFONT(
453 IN OPTIONAL HFONT hf
,
460 NtGdiDxgGenericThunk(
461 IN ULONG_PTR ulIndex
,
462 IN ULONG_PTR ulHandle
,
463 IN OUT SIZE_T
*pdwSizeOfPtr1
,
465 IN OUT SIZE_T
*pdwSizeOfPtr2
,
472 NtGdiDdAddAttachedSurface(
474 IN HANDLE hSurfaceAttached
,
475 IN OUT PDD_ADDATTACHEDSURFACEDATA puAddAttachedSurfaceData
481 NtGdiDdAttachSurface(
482 IN HANDLE hSurfaceFrom
,
490 IN HANDLE hSurfaceDest
,
491 IN HANDLE hSurfaceSrc
,
492 IN OUT PDD_BLTDATA puBltData
498 NtGdiDdCanCreateSurface(
499 IN HANDLE hDirectDraw
,
500 IN OUT PDD_CANCREATESURFACEDATA puCanCreateSurfaceData
508 IN OUT PDD_COLORCONTROLDATA puColorControlData
514 NtGdiDdCreateDirectDrawObject(
521 NtGdiDdCreateSurface(
522 IN HANDLE hDirectDraw
,
524 IN OUT DDSURFACEDESC
* puSurfaceDescription
,
525 IN OUT DD_SURFACE_GLOBAL
* puSurfaceGlobalData
,
526 IN OUT DD_SURFACE_LOCAL
* puSurfaceLocalData
,
527 IN OUT DD_SURFACE_MORE
* puSurfaceMoreData
,
528 IN OUT DD_CREATESURFACEDATA
* puCreateSurfaceData
,
529 OUT HANDLE
* puhSurface
535 NtGdiDdCreateSurfaceObject(
536 IN HANDLE hDirectDrawLocal
,
538 IN PDD_SURFACE_LOCAL puSurfaceLocal
,
539 IN PDD_SURFACE_MORE puSurfaceMore
,
540 IN PDD_SURFACE_GLOBAL puSurfaceGlobal
,
547 NtGdiDdDeleteSurfaceObject(
554 NtGdiDdDeleteDirectDrawObject(
555 IN HANDLE hDirectDrawLocal
561 NtGdiDdDestroySurface(
570 IN HANDLE hSurfaceCurrent
,
571 IN HANDLE hSurfaceTarget
,
572 IN HANDLE hSurfaceCurrentLeft
,
573 IN HANDLE hSurfaceTargetLeft
,
574 IN OUT PDD_FLIPDATA puFlipData
580 NtGdiDdGetAvailDriverMemory(
581 IN HANDLE hDirectDraw
,
582 IN OUT PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData
590 IN OUT PDD_GETBLTSTATUSDATA puGetBltStatusData
598 IN PALETTEENTRY
* puColorTable
604 NtGdiDdGetDriverInfo(
605 IN HANDLE hDirectDraw
,
606 IN OUT PDD_GETDRIVERINFODATA puGetDriverInfoData
612 NtGdiDdGetFlipStatus(
614 IN OUT PDD_GETFLIPSTATUSDATA puGetFlipStatusData
621 IN HANDLE hDirectDraw
,
622 IN OUT PDD_GETSCANLINEDATA puGetScanLineData
628 NtGdiDdSetExclusiveMode(
629 IN HANDLE hDirectDraw
,
630 IN OUT PDD_SETEXCLUSIVEMODEDATA puSetExclusiveModeData
636 NtGdiDdFlipToGDISurface(
637 IN HANDLE hDirectDraw
,
638 IN OUT PDD_FLIPTOGDISURFACEDATA puFlipToGDISurfaceData
646 IN OUT PDD_LOCKDATA puLockData
,
653 NtGdiDdQueryDirectDrawObject(
654 IN HANDLE hDirectDrawLocal
,
655 OUT PDD_HALINFO pHalInfo
,
656 OUT DWORD
* pCallBackFlags
,
657 OUT OPTIONAL LPD3DNTHAL_CALLBACKS puD3dCallbacks
,
658 OUT OPTIONAL LPD3DNTHAL_GLOBALDRIVERDATA puD3dDriverData
,
659 OUT OPTIONAL PDD_D3DBUFCALLBACKS puD3dBufferCallbacks
,
660 OUT OPTIONAL LPDDSURFACEDESC puD3dTextureFormats
,
661 OUT DWORD
* puNumHeaps
,
662 OUT OPTIONAL VIDEOMEMORY
* puvmList
,
663 OUT DWORD
* puNumFourCC
,
664 OUT OPTIONAL DWORD
* puFourCC
670 NtGdiDdReenableDirectDrawObject(
671 IN HANDLE hDirectDrawLocal
,
672 IN OUT BOOL
* pubNewMode
695 IN OUT PDD_SETCOLORKEYDATA puSetColorKeyData
701 NtGdiDdSetOverlayPosition(
702 IN HANDLE hSurfaceSource
,
703 IN HANDLE hSurfaceDestination
,
704 IN OUT PDD_SETOVERLAYPOSITIONDATA puSetOverlayPositionData
710 NtGdiDdUnattachSurface(
712 IN HANDLE hSurfaceAttached
720 IN OUT PDD_UNLOCKDATA puUnlockData
726 NtGdiDdUpdateOverlay(
727 IN HANDLE hSurfaceDestination
,
728 IN HANDLE hSurfaceSource
,
729 IN OUT PDD_UPDATEOVERLAYDATA puUpdateOverlayData
735 NtGdiDdWaitForVerticalBlank(
736 IN HANDLE hDirectDraw
,
737 IN OUT PDD_WAITFORVERTICALBLANKDATA puWaitForVerticalBlankData
744 IN OPTIONAL HANDLE hDirectDraw
,
745 IN OPTIONAL HANDLE hSurface
,
753 IN HANDLE hDirectDraw
,
755 IN LPVOID lpGammaRamp
763 IN OUT PDD_LOCKDATA puLockData
771 IN OUT PDD_UNLOCKDATA puUnlockData
777 NtGdiDdCreateD3DBuffer(
778 IN HANDLE hDirectDraw
,
779 IN OUT HANDLE
* hSurface
,
780 IN OUT DDSURFACEDESC
* puSurfaceDescription
,
781 IN OUT DD_SURFACE_GLOBAL
* puSurfaceGlobalData
,
782 IN OUT DD_SURFACE_LOCAL
* puSurfaceLocalData
,
783 IN OUT DD_SURFACE_MORE
* puSurfaceMoreData
,
784 IN OUT DD_CREATESURFACEDATA
* puCreateSurfaceData
,
785 IN OUT HANDLE
* puhSurface
791 NtGdiDdCanCreateD3DBuffer(
792 IN HANDLE hDirectDraw
,
793 IN OUT PDD_CANCREATESURFACEDATA puCanCreateSurfaceData
799 NtGdiDdDestroyD3DBuffer(
806 NtGdiD3dContextCreate(
807 IN HANDLE hDirectDrawLocal
,
808 IN HANDLE hSurfColor
,
810 IN OUT D3DNTHAL_CONTEXTCREATEI
*pdcci
816 NtGdiD3dContextDestroy(
817 IN LPD3DNTHAL_CONTEXTDESTROYDATA pdcdd
823 NtGdiD3dContextDestroyAll(
824 OUT LPD3DNTHAL_CONTEXTDESTROYALLDATA pdcdad
830 NtGdiD3dValidateTextureStageState(
831 IN OUT LPD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA pData
837 NtGdiD3dDrawPrimitives2(
840 IN OUT LPD3DNTHAL_DRAWPRIMITIVES2DATA pded
,
841 IN OUT FLATPTR
* pfpVidMemCmd
,
842 IN OUT DWORD
* pdwSizeCmd
,
843 IN OUT FLATPTR
* pfpVidMemVtx
,
844 IN OUT DWORD
* pdwSizeVtx
850 NtGdiDdGetDriverState(
851 IN OUT PDD_GETDRIVERSTATEDATA pdata
857 NtGdiDdCreateSurfaceEx(
858 IN HANDLE hDirectDraw
,
860 IN DWORD dwSurfaceHandle
866 NtGdiDvpCanCreateVideoPort(
867 IN HANDLE hDirectDraw
,
868 IN OUT PDD_CANCREATEVPORTDATA puCanCreateVPortData
874 NtGdiDvpColorControl(
875 IN HANDLE hVideoPort
,
876 IN OUT PDD_VPORTCOLORDATA puVPortColorData
882 NtGdiDvpCreateVideoPort(
883 IN HANDLE hDirectDraw
,
884 IN OUT PDD_CREATEVPORTDATA puCreateVPortData
890 NtGdiDvpDestroyVideoPort(
891 IN HANDLE hVideoPort
,
892 IN OUT PDD_DESTROYVPORTDATA puDestroyVPortData
898 NtGdiDvpFlipVideoPort(
899 IN HANDLE hVideoPort
,
900 IN HANDLE hDDSurfaceCurrent
,
901 IN HANDLE hDDSurfaceTarget
,
902 IN OUT PDD_FLIPVPORTDATA puFlipVPortData
908 NtGdiDvpGetVideoPortBandwidth(
909 IN HANDLE hVideoPort
,
910 IN OUT PDD_GETVPORTBANDWIDTHDATA puGetVPortBandwidthData
916 NtGdiDvpGetVideoPortField(
917 IN HANDLE hVideoPort
,
918 IN OUT PDD_GETVPORTFIELDDATA puGetVPortFieldData
924 NtGdiDvpGetVideoPortFlipStatus(
925 IN HANDLE hDirectDraw
,
926 IN OUT PDD_GETVPORTFLIPSTATUSDATA puGetVPortFlipStatusData
932 NtGdiDvpGetVideoPortInputFormats(
933 IN HANDLE hVideoPort
,
934 IN OUT PDD_GETVPORTINPUTFORMATDATA puGetVPortInputFormatData
940 NtGdiDvpGetVideoPortLine(
941 IN HANDLE hVideoPort
,
942 IN OUT PDD_GETVPORTLINEDATA puGetVPortLineData
948 NtGdiDvpGetVideoPortOutputFormats(
949 IN HANDLE hVideoPort
,
950 IN OUT PDD_GETVPORTOUTPUTFORMATDATA puGetVPortOutputFormatData
956 NtGdiDvpGetVideoPortConnectInfo(
957 IN HANDLE hDirectDraw
,
958 IN OUT PDD_GETVPORTCONNECTDATA puGetVPortConnectData
964 NtGdiDvpGetVideoSignalStatus(
965 IN HANDLE hVideoPort
,
966 IN OUT PDD_GETVPORTSIGNALDATA puGetVPortSignalData
972 NtGdiDvpUpdateVideoPort(
973 IN HANDLE hVideoPort
,
974 IN HANDLE
* phSurfaceVideo
,
975 IN HANDLE
* phSurfaceVbi
,
976 IN OUT PDD_UPDATEVPORTDATA puUpdateVPortData
982 NtGdiDvpWaitForVideoPortSync(
983 IN HANDLE hVideoPort
,
984 IN OUT PDD_WAITFORVPORTSYNCDATA puWaitForVPortSyncData
990 NtGdiDvpAcquireNotification(
991 IN HANDLE hVideoPort
,
992 IN OUT HANDLE
* hEvent
,
993 IN LPDDVIDEOPORTNOTIFY pNotify
999 NtGdiDvpReleaseNotification(
1000 IN HANDLE hVideoPort
,
1007 NtGdiDdGetMoCompGuids(
1008 IN HANDLE hDirectDraw
,
1009 IN OUT PDD_GETMOCOMPGUIDSDATA puGetMoCompGuidsData
1015 NtGdiDdGetMoCompFormats(
1016 IN HANDLE hDirectDraw
,
1017 IN OUT PDD_GETMOCOMPFORMATSDATA puGetMoCompFormatsData
1023 NtGdiDdGetMoCompBuffInfo(
1024 IN HANDLE hDirectDraw
,
1025 IN OUT PDD_GETMOCOMPCOMPBUFFDATA puGetBuffData
1031 NtGdiDdGetInternalMoCompInfo(
1032 IN HANDLE hDirectDraw
,
1033 IN OUT PDD_GETINTERNALMOCOMPDATA puGetInternalData
1039 NtGdiDdCreateMoComp(
1040 IN HANDLE hDirectDraw
,
1041 IN OUT PDD_CREATEMOCOMPDATA puCreateMoCompData
1047 NtGdiDdDestroyMoComp(
1049 IN OUT PDD_DESTROYMOCOMPDATA puDestroyMoCompData
1055 NtGdiDdBeginMoCompFrame(
1057 IN OUT PDD_BEGINMOCOMPFRAMEDATA puBeginFrameData
1063 NtGdiDdEndMoCompFrame(
1065 IN OUT PDD_ENDMOCOMPFRAMEDATA puEndFrameData
1071 NtGdiDdRenderMoComp(
1073 IN OUT PDD_RENDERMOCOMPDATA puRenderMoCompData
1079 NtGdiDdQueryMoCompStatus(
1081 IN OUT PDD_QUERYMOCOMPSTATUSDATA puQueryMoCompStatusData
1088 IN HANDLE hSurfaceDest
,
1089 IN OPTIONAL HANDLE hSurfaceSrc
,
1090 IN OUT PDD_BLTDATA puBltData
1107 IN BLENDFUNCTION BlendFunction
,
1116 IN PTRIVERTEX pVertex
,
1135 NtGdiCreateColorSpace(
1136 IN PLOGCOLORSPACEEXW pLogColorSpace
1142 NtGdiDeleteColorSpace(
1143 IN HANDLE hColorSpace
1151 IN HCOLORSPACE hColorSpace
1157 NtGdiCreateColorTransform(
1159 IN LPLOGCOLORSPACEW pLogColorSpaceW
,
1160 IN OPTIONAL PVOID pvSrcProfile
,
1161 IN ULONG cjSrcProfile
,
1162 IN OPTIONAL PVOID pvDestProfile
,
1163 IN ULONG cjDestProfile
,
1164 IN OPTIONAL PVOID pvTargetProfile
,
1165 IN ULONG cjTargetProfile
1171 NtGdiDeleteColorTransform(
1173 IN HANDLE hColorTransform
1179 NtGdiCheckBitmapBits(
1181 IN HANDLE hColorTransform
,
1193 NtGdiColorCorrectPalette(
1196 IN ULONG FirstEntry
,
1197 IN ULONG NumberOfEntries
,
1198 IN OUT PALETTEENTRY
*ppalEntry
,
1205 NtGdiGetColorSpaceforBitmap(
1212 NtGdiGetDeviceGammaRamp(
1214 OUT LPVOID lpGammaRamp
1220 NtGdiSetDeviceGammaRamp(
1222 IN LPVOID lpGammaRamp
1231 IN OUT PBITMAPINFO pbmiDIB
,
1232 IN OUT PVOID pvBits
,
1233 IN OUT ULONG
*pulBits
,
1234 OUT OPTIONAL DWORD
*piUsage
,
1235 OUT OPTIONAL BOOL
*pbAlreadyTran
,
1247 NtGdiCreateMetafileDC(
1262 NtGdiCreateClientObj(
1269 NtGdiDeleteClientObj(
1279 OUT OPTIONAL PBYTE pjOut
1285 NtGdiDeleteObjectApp(
1294 OUT OPTIONAL LPPOINT pptlBuf
,
1295 OUT OPTIONAL LPBYTE pjTypes
,
1302 NtGdiCreateCompatibleDC(
1309 NtGdiCreateDIBitmapInternal(
1314 IN OPTIONAL LPBYTE pjInit
,
1315 IN OPTIONAL LPBITMAPINFO pbmi
,
1317 IN UINT cjMaxInitInfo
,
1326 NtGdiCreateDIBSection(
1328 IN OPTIONAL HANDLE hSectionApp
,
1330 IN LPBITMAPINFO pbmi
,
1334 IN ULONG_PTR dwColorSpace
,
1341 NtGdiCreateSolidBrush(
1343 IN OPTIONAL HBRUSH hbr
1349 NtGdiCreateDIBBrush(
1361 NtGdiCreatePatternBrushInternal(
1370 NtGdiCreateHatchBrushInternal(
1380 IN ULONG flPenStyle
,
1382 IN ULONG iBrushStyle
,
1384 IN ULONG_PTR lClientHatch
,
1385 IN ULONG_PTR lHatch
,
1387 IN OPTIONAL PULONG pulStyle
,
1389 IN BOOL bOldStylePen
,
1390 IN OPTIONAL HBRUSH hbrush
1396 NtGdiCreateEllipticRgn(
1406 NtGdiCreateRoundRectRgn(
1418 NtGdiCreateServerMetaFile(
1430 NtGdiExtCreateRegion(
1431 IN OPTIONAL LPXFORM px
,
1441 OUT PBYTE pjFontDir
,
1442 IN
unsigned cjFontDir
,
1443 IN LPWSTR pwszPathname
,
1444 IN
unsigned cjPathname
1470 NtGdiGetServerMetaFileBits(
1473 OUT OPTIONAL LPBYTE pjData
,
1491 NtGdiGetBitmapDimension(
1499 NtGdiGetNearestPaletteIndex(
1524 NtGdiRemoveFontResourceW(
1525 IN WCHAR
*pwszFiles
,
1530 IN OPTIONAL DESIGNVECTOR
*pdv
1544 NtGdiSetBitmapDimension(
1548 OUT OPTIONAL LPSIZE psizeOut
1570 NtGdiSetTextJustification(
1587 NtGdiGetTextExtentExW(
1589 IN OPTIONAL LPWSTR lpwsz
,
1592 OUT OPTIONAL ULONG
*pcCh
,
1593 OUT OPTIONAL PULONG pdxOut
,
1601 NtGdiGetCharABCWidthsW(
1605 IN OPTIONAL PWCHAR pwch
,
1613 NtGdiGetCharacterPlacementW(
1618 IN OUT LPGCP_RESULTSW pgcpw
,
1630 IN DWORD dwStartAngle
,
1631 IN DWORD dwSweepAngle
1644 NtGdiSelectClipPath(
1680 NtGdiStrokeAndFillPath(
1708 NtGdiFlushUserBatch(VOID
);
1723 IN OUT OPTIONAL PDWORD pdwOut
1792 IN DWORD crBackColor
1811 IN DWORD crBackColor
1821 IN COLORREF crColor
,
1884 OUT BOOL
*pbBanding
,
1916 IN OPTIONAL PWCHAR pwc
,
1924 NtGdiGetCharWidthInfo(
1926 OUT PCHWIDTHINFO pChWidthInfo
1936 IN OPTIONAL LPSTR pjIn
1944 IN OPTIONAL PWCHAR pDriver
,
1948 IN OPTIONAL LPSTR pjIn
,
1950 OUT OPTIONAL LPSTR pjOut
1960 OUT OPTIONAL PVOID pvBuf
,
1967 NtGdiGetGlyphOutline(
1971 OUT LPGLYPHMETRICS pgm
,
1973 OUT OPTIONAL PVOID pvBuf
,
1975 IN BOOL bIgnoreRotation
1983 OUT EXTTEXTMETRIC
*petm
1989 NtGdiGetRasterizerCaps(
1990 OUT LPRASTERIZER_STATUS praststat
,
1997 NtGdiGetKerningPairs(
2000 OUT OPTIONAL KERNINGPAIR
*pkpDst
2013 NtGdiGetObjectBitmapHandle(
2025 OUT OPTIONAL PVOID pvBuf
2031 // The exact size of the buffer at pdm is pdm->dmSize + pdm->dmDriverExtra.
2032 // But this can't be specified with current annotation language.
2034 // typedef struct _DRIVER_INFO_2W DRIVER_INFO_2W;
2043 OUT PBOOL pbBanding
,
2044 IN OPTIONAL VOID
*pDriverInfo2
, // this is "typedef struct _DRIVER_INFO_2W DRIVER_INFO_2W;"
2045 OUT VOID
*ppUMdhpdev
2060 NtGdiGetColorAdjustment(
2062 OUT PCOLORADJUSTMENT pcaOut
2068 NtGdiSetColorAdjustment(
2070 IN PCOLORADJUSTMENT pca
2084 IN OPTIONAL PUNICODE_STRING pustrDevice
,
2085 IN DEVMODEW
*pdm
, // See note for NtGdiResetDC
2086 IN PUNICODE_STRING pustrLogAddr
,
2089 IN OPTIONAL HANDLE hspool
,
2090 IN OPTIONAL VOID
*pDriverInfo2
, // this is "typedef struct _DRIVER_INFO_2W DRIVER_INFO_2W;"
2115 NtGdiScaleViewportExtEx(
2121 OUT OPTIONAL LPSIZE pszOut
2127 NtGdiScaleWindowExtEx(
2133 OUT OPTIONAL LPSIZE pszOut
2139 NtGdiSetVirtualResolution(
2141 IN INT cxVirtualDevicePixel
,
2142 IN INT cyVirtualDevicePixel
,
2143 IN INT cxVirtualDeviceMm
,
2144 IN INT cyVirtualDeviceMm
2152 IN INT cxVirtualDevice
,
2153 IN INT cyVirtualDevice
2168 NtGdiModifyWorldTransform(
2170 IN OPTIONAL LPXFORM pxf
,
2177 NtGdiCombineTransform(
2186 NtGdiTransformPoints(
2197 NtGdiConvertMetafileRect(
2205 NtGdiGetTextCharsetInfo(
2207 OUT OPTIONAL LPFONTSIGNATURE lpSig
,
2224 NtGdiGetPerBandInfo(
2226 IN OUT PERBANDINFO
*ppbi
2237 IN UINT cjResultSize
2243 NtGdiSetMagicColors(
2245 IN PALETTEENTRY peMagic
,
2284 NtGdiExtSelectClipRgn(
2300 #ifdef _WINDOWBLT_NOTIFICATION_
2314 IN DWORD crBackColor
,
2331 IN DWORD crBackColor
2340 IN RECTL
* prectDst
,
2342 IN RECTL
* prectSrc
,
2343 IN POINTL
* pptlOrigin
,
2345 IN DWORD crBackColor
2351 NtGdiTransparentBlt(
2362 IN COLORREF TransColor
2379 NtGdiGetTextMetricsW(
2381 OUT TMW_INTERNAL
* ptm
,
2391 OUT OPTIONAL LPWSTR pszOut
,
2412 IN OPTIONAL LPRECT prcl
,
2415 IN OPTIONAL LPINT pdx
,
2422 NtGdiIntersectClipRect(
2458 IN PPOLYPATBLT pPoly
,
2466 NtGdiUnrealizeObject(
2473 NtGdiGetStockObject(
2480 NtGdiCreateCompatibleBitmap(
2502 OUT OPTIONAL LPPOINT pptOut
2511 OUT OPTIONAL LPVOID pvOut
2525 NtGdiGetDeviceCapsAll (
2527 OUT PDEVCAPS pDevCaps
2545 IN DWORD dwBackColor
2566 IN OPTIONAL LPBYTE pjInit
2572 NtGdiCreateHalftonePalette(
2587 NtGdiExcludeClipRect(
2635 NtGdiGetDIBitsInternal(
2640 OUT OPTIONAL LPBYTE pBits
,
2641 IN OUT LPBITMAPINFO pbmi
,
2702 NtGdiGetNearestColor(
2710 NtGdiGetSystemPaletteUse(
2717 NtGdiSetSystemPaletteUse(
2728 OUT OPTIONAL LPRGNDATA lpRgnData
2742 NtGdiAddFontResourceW(
2743 IN WCHAR
*pwszFiles
,
2748 IN OPTIONAL DESIGNVECTOR
*pdv
2751 #if (_WIN32_WINNT >= 0x0500)
2756 IN ENUMLOGFONTEXDVW
*pelfw
,
2767 IN LPEXTLOGFONTW pelfw
,
2778 NtGdiSetFontEnumeration(
2789 #if (_WIN32_WINNT >= 0x0500)
2795 IN ULONG_PTR idEnum
,
2798 OUT PENUMFONTDATAW pefdw
2808 IN FLONG flWin31Compat
,
2810 IN OPTIONAL LPWSTR pwszFaceName
,
2819 OUT PUNIVERSAL_FONT_ID pufiFontList
,
2820 IN ULONG nBufferSize
,
2821 OUT PLARGE_INTEGER pTimeStamp
2827 NtGdiConsoleTextOut(
2831 IN RECTL
*prclBounds
2837 NtGdiFullscreenControl(
2838 IN FULLSCREENCONTROL FullscreenCommand
,
2839 IN PVOID FullscreenInput
,
2840 IN DWORD FullscreenInputLength
,
2841 OUT PVOID FullscreenOutput
,
2842 IN OUT PULONG FullscreenOutputLength
2862 NtGdiEudcLoadUnloadLink(
2863 IN OPTIONAL LPCWSTR pBaseFaceName
,
2864 IN UINT cwcBaseFaceName
,
2865 IN LPCWSTR pEudcFontPath
,
2866 IN UINT cwcEudcFontPath
,
2868 IN INT iFontLinkType
,
2875 NtGdiGetStringBitmapW(
2886 NtGdiGetEudcTimeStampEx(
2887 IN OPTIONAL LPWSTR lpBaseFaceName
,
2888 IN ULONG cwcBaseFaceName
,
2889 IN BOOL bSystemTimeStamp
2895 NtGdiQueryFontAssocInfo(
2899 #if (_WIN32_WINNT >= 0x0500)
2903 NtGdiGetFontUnicodeRanges(
2905 OUT OPTIONAL LPGLYPHSET pgs
2913 NtGdiGetRealizationInfo(
2915 OUT PREALIZATION_INFO pri
,
2923 NtGdiAddRemoteMMInstanceToDC(
2925 IN DOWNLOADDESIGNVECTOR
*pddv
,
2932 NtGdiUnloadPrinterDriver(
2933 IN LPWSTR pDriverName
,
2934 IN ULONG cbDriverName
2940 NtGdiEngAssociateSurface(
2949 NtGdiEngEraseSurface(
2958 NtGdiEngCreateBitmap(
2963 IN OPTIONAL PVOID pvBits
2969 NtGdiEngDeleteSurface(
2976 NtGdiEngLockSurface(
2983 NtGdiEngUnlockSurface(
2990 NtGdiEngMarkBandingSurface(
2997 NtGdiEngCreateDeviceSurface(
3000 IN ULONG iFormatCompat
3006 NtGdiEngCreateDeviceBitmap(
3009 IN ULONG iFormatCompat
3018 IN OPTIONAL CLIPOBJ
*pco
,
3028 IN SURFOBJ
*psoDest
,
3030 IN SURFOBJ
*psoMask
,
3033 IN COLORADJUSTMENT
*pca
,
3034 IN POINTL
*pptlHTOrg
,
3037 IN POINTL
*pptlMask
,
3047 IN SURFOBJ
*psoMask
,
3052 IN POINTL
*pptlMask
,
3054 IN POINTL
*pptlBrush
,
3064 IN OPTIONAL SURFOBJ
*psoMsk
,
3067 IN COLORADJUSTMENT
*pca
,
3068 IN POINTL
*pptlBrushOrg
,
3069 IN POINTFIX
*pptfxDest
,
3071 IN OPTIONAL POINTL
*pptlMask
,
3078 NtGdiEngCreatePalette(
3081 IN ULONG
*pulColors
,
3090 NtGdiEngDeletePalette(
3103 IN POINTL
*pptlBrushOrg
,
3104 IN LINEATTRS
*plineattrs
,
3116 IN POINTL
*pptlBrushOrg
,
3124 NtGdiEngStrokeAndFillPath(
3127 IN CLIPOBJ
*pco
,IN XFORMOBJ
*pxo
,
3128 IN BRUSHOBJ
*pboStroke
,
3129 IN LINEATTRS
*plineattrs
,
3130 IN BRUSHOBJ
*pboFill
,
3131 IN POINTL
*pptlBrushOrg
,
3143 IN POINTL
*pptlBrushOrg
,
3158 IN RECTL
*prclBounds
,
3166 IN SURFOBJ
*psoDest
,
3172 IN BLENDOBJ
*pBlendObj
3178 NtGdiEngGradientFill(
3179 IN SURFOBJ
*psoDest
,
3182 IN TRIVERTEX
*pVertex
,
3186 IN RECTL
*prclExtents
,
3187 IN POINTL
*pptlDitherOrg
,
3194 NtGdiEngTransparentBlt(
3201 IN ULONG iTransColor
,
3213 IN RECTL
*prclExtra
,
3214 IN RECTL
*prclOpaque
,
3215 IN BRUSHOBJ
*pboFore
,
3216 IN BRUSHOBJ
*pboOpaque
,
3224 NtGdiEngStretchBltROP(
3227 IN SURFOBJ
*psoMask
,
3230 IN COLORADJUSTMENT
*pca
,
3231 IN POINTL
*pptlBrushOrg
,
3234 IN POINTL
*pptlMask
,
3243 NtGdiXLATEOBJ_cGetPalette(
3253 NtGdiCLIPOBJ_cEnumStart(
3257 IN ULONG iDirection
,
3273 NtGdiCLIPOBJ_ppoGetPath(
3280 NtGdiEngCreateClip();
3292 NtGdiBRUSHOBJ_pvAllocRbrush(
3300 NtGdiBRUSHOBJ_pvGetRbrush(
3307 NtGdiBRUSHOBJ_ulGetBrushColor(
3314 NtGdiBRUSHOBJ_hGetColorTransform(
3321 NtGdiXFORMOBJ_bApplyXform(
3332 NtGdiXFORMOBJ_iGetXform(
3334 OUT OPTIONAL XFORML
*pxform
3340 NtGdiFONTOBJ_vGetInfo(
3349 NtGdiFONTOBJ_cGetGlyphs(
3360 NtGdiFONTOBJ_pxoGetXform(
3381 NtGdiFONTOBJ_cGetAllGlyphHandles(
3383 OUT OPTIONAL HGLYPH
*phg
3389 NtGdiFONTOBJ_pvTrueTypeFontFile(
3397 NtGdiFONTOBJ_pQueryGlyphAttrs(
3408 OUT PGLYPHPOS
*ppgpos
3414 NtGdiSTROBJ_bEnumPositionsOnly(
3417 OUT PGLYPHPOS
*ppgpos
3423 NtGdiSTROBJ_vEnumStart(
3430 NtGdiSTROBJ_dwGetCodePage(
3437 NtGdiSTROBJ_bGetAdvanceWidths(
3447 NtGdiEngComputeGlyphSet(
3456 NtGdiXLATEOBJ_iXlate(
3464 NtGdiXLATEOBJ_hGetColorTransform(
3471 NtGdiPATHOBJ_vGetBounds(
3487 NtGdiPATHOBJ_vEnumStart(
3501 NtGdiPATHOBJ_vEnumStartClipLines(
3511 NtGdiPATHOBJ_bEnumClipLines(
3534 NtGdiHT_Get8BPPFormatPalette(
3535 OUT OPTIONAL LPPALETTEENTRY pPaletteEntry
,
3537 IN USHORT GreenGamma
,
3544 NtGdiHT_Get8BPPMaskPalette(
3545 OUT OPTIONAL LPPALETTEENTRY pPaletteEntry
,
3546 IN BOOL Use8BPPMaskPal
,
3549 IN USHORT GreenGamma
,
3555 NtGdiUpdateTransform(
3571 NtGdiMirrorWindowOrg(
3578 NtGdiGetDeviceWidth(
3593 NtGdiBRUSHOBJ_DeleteRbrush(
3600 NtGdiUMPDEngFreeUserMem(
3601 IN KERNEL_PVOID
*ppv
3607 NtGdiSetBitmapAttributes(
3615 NtGdiClearBitmapAttributes(
3623 NtGdiSetBrushAttributes(
3631 NtGdiClearBrushAttributes(
3648 NtGdiMakeObjectXferable(
3650 IN DWORD dwProcessId
3656 NtGdiMakeObjectUnXferable(
3665 /* FIXME wrong prototypes fix the build */
3669 NtGdiGetSpoolMessage( DWORD u1
,