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
,
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
2861 NtGdiEudcLoadUnloadLink(
2862 IN OPTIONAL LPCWSTR pBaseFaceName
,
2863 IN UINT cwcBaseFaceName
,
2864 IN LPCWSTR pEudcFontPath
,
2865 IN UINT cwcEudcFontPath
,
2867 IN INT iFontLinkType
,
2874 NtGdiGetStringBitmapW(
2885 NtGdiGetEudcTimeStampEx(
2886 IN OPTIONAL LPWSTR lpBaseFaceName
,
2887 IN ULONG cwcBaseFaceName
,
2888 IN BOOL bSystemTimeStamp
2894 NtGdiQueryFontAssocInfo(
2898 #if (_WIN32_WINNT >= 0x0500)
2902 NtGdiGetFontUnicodeRanges(
2904 OUT OPTIONAL LPGLYPHSET pgs
2912 NtGdiGetRealizationInfo(
2914 OUT PREALIZATION_INFO pri
,
2922 NtGdiAddRemoteMMInstanceToDC(
2924 IN DOWNLOADDESIGNVECTOR
*pddv
,
2931 NtGdiUnloadPrinterDriver(
2932 IN LPWSTR pDriverName
,
2933 IN ULONG cbDriverName
2939 NtGdiEngAssociateSurface(
2948 NtGdiEngEraseSurface(
2957 NtGdiEngCreateBitmap(
2962 IN OPTIONAL PVOID pvBits
2968 NtGdiEngDeleteSurface(
2975 NtGdiEngLockSurface(
2982 NtGdiEngUnlockSurface(
2989 NtGdiEngMarkBandingSurface(
2996 NtGdiEngCreateDeviceSurface(
2999 IN ULONG iFormatCompat
3005 NtGdiEngCreateDeviceBitmap(
3008 IN ULONG iFormatCompat
3017 IN OPTIONAL CLIPOBJ
*pco
,
3027 IN SURFOBJ
*psoDest
,
3029 IN SURFOBJ
*psoMask
,
3032 IN COLORADJUSTMENT
*pca
,
3033 IN POINTL
*pptlHTOrg
,
3036 IN POINTL
*pptlMask
,
3046 IN SURFOBJ
*psoMask
,
3051 IN POINTL
*pptlMask
,
3053 IN POINTL
*pptlBrush
,
3063 IN OPTIONAL SURFOBJ
*psoMsk
,
3066 IN COLORADJUSTMENT
*pca
,
3067 IN POINTL
*pptlBrushOrg
,
3068 IN POINTFIX
*pptfxDest
,
3070 IN OPTIONAL POINTL
*pptlMask
,
3077 NtGdiEngCreatePalette(
3080 IN ULONG
*pulColors
,
3089 NtGdiEngDeletePalette(
3102 IN POINTL
*pptlBrushOrg
,
3103 IN LINEATTRS
*plineattrs
,
3115 IN POINTL
*pptlBrushOrg
,
3123 NtGdiEngStrokeAndFillPath(
3126 IN CLIPOBJ
*pco
,IN XFORMOBJ
*pxo
,
3127 IN BRUSHOBJ
*pboStroke
,
3128 IN LINEATTRS
*plineattrs
,
3129 IN BRUSHOBJ
*pboFill
,
3130 IN POINTL
*pptlBrushOrg
,
3142 IN POINTL
*pptlBrushOrg
,
3157 IN RECTL
*prclBounds
,
3165 IN SURFOBJ
*psoDest
,
3171 IN BLENDOBJ
*pBlendObj
3177 NtGdiEngGradientFill(
3178 IN SURFOBJ
*psoDest
,
3181 IN TRIVERTEX
*pVertex
,
3185 IN RECTL
*prclExtents
,
3186 IN POINTL
*pptlDitherOrg
,
3193 NtGdiEngTransparentBlt(
3200 IN ULONG iTransColor
,
3212 IN RECTL
*prclExtra
,
3213 IN RECTL
*prclOpaque
,
3214 IN BRUSHOBJ
*pboFore
,
3215 IN BRUSHOBJ
*pboOpaque
,
3223 NtGdiEngStretchBltROP(
3226 IN SURFOBJ
*psoMask
,
3229 IN COLORADJUSTMENT
*pca
,
3230 IN POINTL
*pptlBrushOrg
,
3233 IN POINTL
*pptlMask
,
3242 NtGdiXLATEOBJ_cGetPalette(
3252 NtGdiCLIPOBJ_cEnumStart(
3256 IN ULONG iDirection
,
3272 NtGdiCLIPOBJ_ppoGetPath(
3279 NtGdiEngCreateClip();
3291 NtGdiBRUSHOBJ_pvAllocRbrush(
3299 NtGdiBRUSHOBJ_pvGetRbrush(
3306 NtGdiBRUSHOBJ_ulGetBrushColor(
3313 NtGdiBRUSHOBJ_hGetColorTransform(
3320 NtGdiXFORMOBJ_bApplyXform(
3331 NtGdiXFORMOBJ_iGetXform(
3333 OUT OPTIONAL XFORML
*pxform
3339 NtGdiFONTOBJ_vGetInfo(
3348 NtGdiFONTOBJ_cGetGlyphs(
3359 NtGdiFONTOBJ_pxoGetXform(
3380 NtGdiFONTOBJ_cGetAllGlyphHandles(
3382 OUT OPTIONAL HGLYPH
*phg
3388 NtGdiFONTOBJ_pvTrueTypeFontFile(
3396 NtGdiFONTOBJ_pQueryGlyphAttrs(
3407 OUT PGLYPHPOS
*ppgpos
3413 NtGdiSTROBJ_bEnumPositionsOnly(
3416 OUT PGLYPHPOS
*ppgpos
3422 NtGdiSTROBJ_vEnumStart(
3429 NtGdiSTROBJ_dwGetCodePage(
3436 NtGdiSTROBJ_bGetAdvanceWidths(
3446 NtGdiEngComputeGlyphSet(
3455 NtGdiXLATEOBJ_iXlate(
3463 NtGdiXLATEOBJ_hGetColorTransform(
3470 NtGdiPATHOBJ_vGetBounds(
3486 NtGdiPATHOBJ_vEnumStart(
3500 NtGdiPATHOBJ_vEnumStartClipLines(
3510 NtGdiPATHOBJ_bEnumClipLines(
3533 NtGdiHT_Get8BPPFormatPalette(
3534 OUT OPTIONAL LPPALETTEENTRY pPaletteEntry
,
3536 IN USHORT GreenGamma
,
3543 NtGdiHT_Get8BPPMaskPalette(
3544 OUT OPTIONAL LPPALETTEENTRY pPaletteEntry
,
3545 IN BOOL Use8BPPMaskPal
,
3548 IN USHORT GreenGamma
,
3554 NtGdiUpdateTransform(
3570 NtGdiMirrorWindowOrg(
3577 NtGdiGetDeviceWidth(
3592 NtGdiBRUSHOBJ_DeleteRbrush(
3599 NtGdiUMPDEngFreeUserMem(
3600 IN KERNEL_PVOID
*ppv
3606 NtGdiSetBitmapAttributes(
3614 NtGdiClearBitmapAttributes(
3622 NtGdiSetBrushAttributes(
3630 NtGdiClearBrushAttributes(
3647 NtGdiMakeObjectXferable(
3649 IN DWORD dwProcessId
3655 NtGdiMakeObjectUnXferable(
3664 /* FIXME wrong prototypes fix the build */
3668 NtGdiGetSpoolMessage( DWORD u1
,