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
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
,
2088 IN OPTIONAL HANDLE hspool
,
2089 IN OPTIONAL VOID
*pDriverInfo2
, // this is "typedef struct _DRIVER_INFO_2W DRIVER_INFO_2W;"
2114 NtGdiScaleViewportExtEx(
2120 OUT OPTIONAL LPSIZE pszOut
2126 NtGdiScaleWindowExtEx(
2132 OUT OPTIONAL LPSIZE pszOut
2138 NtGdiSetVirtualResolution(
2140 IN INT cxVirtualDevicePixel
,
2141 IN INT cyVirtualDevicePixel
,
2142 IN INT cxVirtualDeviceMm
,
2143 IN INT cyVirtualDeviceMm
2151 IN INT cxVirtualDevice
,
2152 IN INT cyVirtualDevice
2167 NtGdiModifyWorldTransform(
2169 IN OPTIONAL LPXFORM pxf
,
2176 NtGdiCombineTransform(
2185 NtGdiTransformPoints(
2196 NtGdiConvertMetafileRect(
2204 NtGdiGetTextCharsetInfo(
2206 OUT OPTIONAL LPFONTSIGNATURE lpSig
,
2223 NtGdiGetPerBandInfo(
2225 IN OUT PERBANDINFO
*ppbi
2236 IN UINT cjResultSize
2242 NtGdiSetMagicColors(
2244 IN PALETTEENTRY peMagic
,
2283 NtGdiExtSelectClipRgn(
2299 #ifdef _WINDOWBLT_NOTIFICATION_
2313 IN DWORD crBackColor
,
2330 IN DWORD crBackColor
2339 IN RECTL
* prectDst
,
2341 IN RECTL
* prectSrc
,
2342 IN POINTL
* pptlOrigin
,
2344 IN DWORD crBackColor
2350 NtGdiTransparentBlt(
2361 IN COLORREF TransColor
2378 NtGdiGetTextMetricsW(
2380 OUT TMW_INTERNAL
* ptm
,
2390 OUT OPTIONAL LPWSTR pszOut
,
2411 IN OPTIONAL LPRECT prcl
,
2414 IN OPTIONAL LPINT pdx
,
2421 NtGdiIntersectClipRect(
2457 IN PPOLYPATBLT pPoly
,
2465 NtGdiUnrealizeObject(
2472 NtGdiGetStockObject(
2479 NtGdiCreateCompatibleBitmap(
2501 OUT OPTIONAL LPPOINT pptOut
2510 OUT OPTIONAL LPVOID pvOut
2524 NtGdiGetDeviceCapsAll (
2526 OUT PDEVCAPS pDevCaps
2544 IN DWORD dwBackColor
2565 IN OPTIONAL LPBYTE pjInit
2571 NtGdiCreateHalftonePalette(
2586 NtGdiExcludeClipRect(
2634 NtGdiGetDIBitsInternal(
2639 OUT OPTIONAL LPBYTE pBits
,
2640 IN OUT LPBITMAPINFO pbmi
,
2701 NtGdiGetNearestColor(
2709 NtGdiGetSystemPaletteUse(
2716 NtGdiSetSystemPaletteUse(
2727 OUT OPTIONAL LPRGNDATA lpRgnData
2741 NtGdiAddFontResourceW(
2742 IN WCHAR
*pwszFiles
,
2747 IN OPTIONAL DESIGNVECTOR
*pdv
2750 #if (_WIN32_WINNT >= 0x0500)
2755 IN ENUMLOGFONTEXDVW
*pelfw
,
2766 IN LPEXTLOGFONTW pelfw
,
2777 NtGdiSetFontEnumeration(
2788 #if (_WIN32_WINNT >= 0x0500)
2794 IN ULONG_PTR idEnum
,
2797 OUT PENUMFONTDATAW pefdw
2807 IN FLONG flWin31Compat
,
2809 IN OPTIONAL LPWSTR pwszFaceName
,
2818 OUT PUNIVERSAL_FONT_ID pufiFontList
,
2819 IN ULONG nBufferSize
,
2820 OUT PLARGE_INTEGER pTimeStamp
2826 NtGdiConsoleTextOut(
2830 IN RECTL
*prclBounds
2836 NtGdiFullscreenControl(
2837 IN FULLSCREENCONTROL FullscreenCommand
,
2838 IN PVOID FullscreenInput
,
2839 IN DWORD FullscreenInputLength
,
2840 OUT PVOID FullscreenOutput
,
2841 IN OUT PULONG FullscreenOutputLength
2860 NtGdiEudcLoadUnloadLink(
2861 IN OPTIONAL LPCWSTR pBaseFaceName
,
2862 IN UINT cwcBaseFaceName
,
2863 IN LPCWSTR pEudcFontPath
,
2864 IN UINT cwcEudcFontPath
,
2866 IN INT iFontLinkType
,
2873 NtGdiGetStringBitmapW(
2884 NtGdiGetEudcTimeStampEx(
2885 IN OPTIONAL LPWSTR lpBaseFaceName
,
2886 IN ULONG cwcBaseFaceName
,
2887 IN BOOL bSystemTimeStamp
2893 NtGdiQueryFontAssocInfo(
2897 #if (_WIN32_WINNT >= 0x0500)
2900 NtGdiGetFontUnicodeRanges(
2902 OUT OPTIONAL LPGLYPHSET pgs
2909 NtGdiGetRealizationInfo(
2911 OUT PREALIZATION_INFO pri
,
2918 NtGdiAddRemoteMMInstanceToDC(
2920 IN DOWNLOADDESIGNVECTOR
*pddv
,
2927 NtGdiUnloadPrinterDriver(
2928 IN LPWSTR pDriverName
,
2929 IN ULONG cbDriverName
2935 NtGdiEngAssociateSurface(
2944 NtGdiEngEraseSurface(
2953 NtGdiEngCreateBitmap(
2958 IN OPTIONAL PVOID pvBits
2964 NtGdiEngDeleteSurface(
2971 NtGdiEngLockSurface(
2978 NtGdiEngUnlockSurface(
2985 NtGdiEngMarkBandingSurface(
2992 NtGdiEngCreateDeviceSurface(
2995 IN ULONG iFormatCompat
3001 NtGdiEngCreateDeviceBitmap(
3004 IN ULONG iFormatCompat
3013 IN OPTIONAL CLIPOBJ
*pco
,
3023 IN SURFOBJ
*psoDest
,
3025 IN SURFOBJ
*psoMask
,
3028 IN COLORADJUSTMENT
*pca
,
3029 IN POINTL
*pptlHTOrg
,
3032 IN POINTL
*pptlMask
,
3042 IN SURFOBJ
*psoMask
,
3047 IN POINTL
*pptlMask
,
3049 IN POINTL
*pptlBrush
,
3059 IN OPTIONAL SURFOBJ
*psoMsk
,
3062 IN COLORADJUSTMENT
*pca
,
3063 IN POINTL
*pptlBrushOrg
,
3064 IN POINTFIX
*pptfxDest
,
3066 IN OPTIONAL POINTL
*pptlMask
,
3073 NtGdiEngCreatePalette(
3076 IN ULONG
*pulColors
,
3085 NtGdiEngDeletePalette(
3098 IN POINTL
*pptlBrushOrg
,
3099 IN LINEATTRS
*plineattrs
,
3111 IN POINTL
*pptlBrushOrg
,
3119 NtGdiEngStrokeAndFillPath(
3122 IN CLIPOBJ
*pco
,IN XFORMOBJ
*pxo
,
3123 IN BRUSHOBJ
*pboStroke
,
3124 IN LINEATTRS
*plineattrs
,
3125 IN BRUSHOBJ
*pboFill
,
3126 IN POINTL
*pptlBrushOrg
,
3138 IN POINTL
*pptlBrushOrg
,
3153 IN RECTL
*prclBounds
,
3161 IN SURFOBJ
*psoDest
,
3167 IN BLENDOBJ
*pBlendObj
3173 NtGdiEngGradientFill(
3174 IN SURFOBJ
*psoDest
,
3177 IN TRIVERTEX
*pVertex
,
3181 IN RECTL
*prclExtents
,
3182 IN POINTL
*pptlDitherOrg
,
3189 NtGdiEngTransparentBlt(
3196 IN ULONG iTransColor
,
3208 IN RECTL
*prclExtra
,
3209 IN RECTL
*prclOpaque
,
3210 IN BRUSHOBJ
*pboFore
,
3211 IN BRUSHOBJ
*pboOpaque
,
3219 NtGdiEngStretchBltROP(
3222 IN SURFOBJ
*psoMask
,
3225 IN COLORADJUSTMENT
*pca
,
3226 IN POINTL
*pptlBrushOrg
,
3229 IN POINTL
*pptlMask
,
3238 NtGdiXLATEOBJ_cGetPalette(
3248 NtGdiCLIPOBJ_cEnumStart(
3252 IN ULONG iDirection
,
3268 NtGdiCLIPOBJ_ppoGetPath(
3275 NtGdiEngCreateClip();
3287 NtGdiBRUSHOBJ_pvAllocRbrush(
3295 NtGdiBRUSHOBJ_pvGetRbrush(
3302 NtGdiBRUSHOBJ_ulGetBrushColor(
3309 NtGdiBRUSHOBJ_hGetColorTransform(
3316 NtGdiXFORMOBJ_bApplyXform(
3327 NtGdiXFORMOBJ_iGetXform(
3329 OUT OPTIONAL XFORML
*pxform
3335 NtGdiFONTOBJ_vGetInfo(
3344 NtGdiFONTOBJ_cGetGlyphs(
3355 NtGdiFONTOBJ_pxoGetXform(
3376 NtGdiFONTOBJ_cGetAllGlyphHandles(
3378 OUT OPTIONAL HGLYPH
*phg
3384 NtGdiFONTOBJ_pvTrueTypeFontFile(
3392 NtGdiFONTOBJ_pQueryGlyphAttrs(
3403 OUT PGLYPHPOS
*ppgpos
3409 NtGdiSTROBJ_bEnumPositionsOnly(
3412 OUT PGLYPHPOS
*ppgpos
3418 NtGdiSTROBJ_vEnumStart(
3425 NtGdiSTROBJ_dwGetCodePage(
3432 NtGdiSTROBJ_bGetAdvanceWidths(
3442 NtGdiEngComputeGlyphSet(
3451 NtGdiXLATEOBJ_iXlate(
3459 NtGdiXLATEOBJ_hGetColorTransform(
3466 NtGdiPATHOBJ_vGetBounds(
3482 NtGdiPATHOBJ_vEnumStart(
3496 NtGdiPATHOBJ_vEnumStartClipLines(
3506 NtGdiPATHOBJ_bEnumClipLines(
3528 NtGdiHT_Get8BPPFormatPalette(
3529 OUT OPTIONAL LPPALETTEENTRY pPaletteEntry
,
3531 IN USHORT GreenGamma
,
3538 NtGdiHT_Get8BPPMaskPalette(
3539 OUT OPTIONAL LPPALETTEENTRY pPaletteEntry
,
3540 IN BOOL Use8BPPMaskPal
,
3543 IN USHORT GreenGamma
,
3549 NtGdiUpdateTransform(
3565 NtGdiMirrorWindowOrg(
3572 NtGdiGetDeviceWidth(
3587 NtGdiBRUSHOBJ_DeleteRbrush(
3594 NtGdiUMPDEngFreeUserMem(
3595 IN KERNEL_PVOID
*ppv
3601 NtGdiSetBitmapAttributes(
3609 NtGdiClearBitmapAttributes(
3617 NtGdiSetBrushAttributes(
3625 NtGdiClearBrushAttributes(
3642 NtGdiMakeObjectXferable(
3644 IN DWORD dwProcessId
3650 NtGdiMakeObjectUnXferable(
3659 /* FIXME wrong prototypes fix the build */
3663 NtGdiGetSpoolMessage( DWORD u1
,