/* * NtGdi Entrypoints */ #pragma once #ifndef _NTGDI_ #define _NTGDI_ #ifndef W32KAPI #define W32KAPI DECLSPEC_ADDRSAFE #endif #ifndef _WINDOWBLT_NOTIFICATION_ #define _WINDOWBLT_NOTIFICATION_ #endif #ifdef COMBOX_SANDBOX #define DX_LONGHORN_PRESERVEDC #endif #define TRACE_SURFACE_ALLOCS (DBG || 0) /* NtGdiGetLinkedUfis */ #define FL_UFI_PRIVATEFONT 1 #define FL_UFI_DESIGNVECTOR_PFF 2 #define FL_UFI_MEMORYFONT 4 /* NtGdiSetIcmMode */ #define ICM_SET_MODE 1 #define ICM_SET_CALIBRATE_MODE 2 #define ICM_SET_COLOR_MODE 3 #define ICM_CHECK_COLOR_MODE 4 /* NtGdiCreateColorSpace */ #define LCSEX_ANSICREATED 1 #define LCSEX_TEMPPROFILE 2 /* NtGdiGetStats */ #define GS_NUM_OBJS_ALL 0 #define GS_HANDOBJ_CURRENT 1 #define GS_HANDOBJ_MAX 2 #define GS_HANDOBJ_ALLOC 3 #define GS_LOOKASIDE_INFO 4 /* NtGdiEnumFontOpen */ #define TYPE_ENUMFONTS 1 #define TYPE_ENUMFONTFAMILIES 2 #define TYPE_ENUMFONTFAMILIESEX 3 typedef enum _COLORPALETTEINFO { ColorPaletteQuery, ColorPaletteSet } COLORPALETTEINFO, *PCOLORPALETTEINFO; /* NtGdiIcmBrushInfo */ typedef enum _ICM_DIB_INFO_CMD { IcmQueryBrush, IcmSetBrush } ICM_DIB_INFO, *PICM_DIB_INFO; /* NtGdiCreateColorSpace */ typedef struct _LOGCOLORSPACEEXW { LOGCOLORSPACEW lcsColorSpace; DWORD dwFlags; } LOGCOLORSPACEEXW, *PLOGCOLORSPACEEXW; typedef struct _POLYPATBLT { INT nXLeft; INT nYLeft; INT nWidth; INT nHeight; HBRUSH hBrush; } POLYPATBLT, *PPOLYPATBLT; /* NtGdiAddRemoteMMInstanceToDC */ typedef struct tagDOWNLOADDESIGNVECTOR { UNIVERSAL_FONT_ID ufiBase; DESIGNVECTOR dv; } DOWNLOADDESIGNVECTOR; /* NtGdiResetDC */ typedef struct _DRIVER_INFO_2W DRIVER_INFO_2W; #if 0 typedef struct _HLSURF_INFORMATION_PROBE { union { HLSURF_INFORMATION_SURFACE Surface; HLSURF_INFORMATION_PRESENTFLAGS PresentFlags; HLSURF_INFORMATION_TOKENUPDATEID UpdateId; HLSURF_INFORMATION_SET_SIGNALING SetSignaling; DWMSURFACEDATA SurfaceData; HLSURF_INFORMATION_DIRTYREGIONS DirtyRegions; HLSURF_INFORMATION_REDIRSTYLE RedirStyle; HLSURF_INFORMATION_SET_GERNERATE_MOVE_DATA SetGenerateMoveData; } u; } HLSURF_INFORMATION_PROBE, *PHLSURF_INFORMATION_PROBE; #endif // 0 __kernel_entry W32KAPI BOOL APIENTRY NtGdiInit( VOID); __kernel_entry W32KAPI INT APIENTRY NtGdiSetDIBitsToDeviceInternal( _In_ HDC hdcDest, _In_ INT xDst, _In_ INT yDst, _In_ DWORD cx, _In_ DWORD cy, _In_ INT xSrc, _In_ INT ySrc, _In_ DWORD iStartScan, _In_ DWORD cNumScan, _In_reads_bytes_(cjMaxBits) LPBYTE pInitBits, _In_reads_bytes_(cjMaxInfo) LPBITMAPINFO pbmi, _In_ DWORD iUsage, _In_ UINT cjMaxBits, _In_ UINT cjMaxInfo, _In_ BOOL bTransformCoordinates, _In_opt_ HANDLE hcmXform ); #if WINVER >= 0x601 __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateSessionMappedDIBSection( _In_opt_ HDC hdc, _In_opt_ HANDLE hSectionApp, _In_ DWORD dwOffset, _In_reads_bytes_opt_(cjHeader) LPBITMAPINFO pbmi, _In_ DWORD iUsage, _In_ UINT cjHeader, _In_ FLONG fl, _In_ ULONG_PTR dwColorSpace); #endif __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetFontResourceInfoInternalW( _In_reads_z_(cwc) LPWSTR pwszFiles, _In_ ULONG cwc, _In_ ULONG cFiles, _In_ UINT cjBuf, _Out_ LPDWORD pdwBytes, _Out_writes_bytes_(cjBuf) LPVOID pvBuf, _In_ DWORD iType); __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetGlyphIndicesW( _In_ HDC hdc, _In_reads_opt_(cwc) LPCWSTR pwc, _In_ INT cwc, _Out_writes_opt_(cwc) LPWORD pgi, _In_ DWORD iMode); __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetGlyphIndicesWInternal( _In_ HDC hdc, _In_reads_opt_(cwc) LPWSTR pwc, _In_ INT cwc, _Out_writes_opt_(cwc) LPWORD pgi, _In_ DWORD iMode, _In_ BOOL bSubset); __kernel_entry W32KAPI HPALETTE APIENTRY NtGdiCreatePaletteInternal( _In_reads_bytes_(cEntries * 4 + 4) LPLOGPALETTE pLogPal, _In_ UINT cEntries); __kernel_entry W32KAPI BOOL APIENTRY NtGdiArcInternal( _In_ ARCTYPE arctype, _In_ HDC hdc, _In_ INT x1, _In_ INT y1, _In_ INT x2, _In_ INT y2, _In_ INT x3, _In_ INT y3, _In_ INT x4, _In_ INT y4); __kernel_entry W32KAPI INT APIENTRY NtGdiStretchDIBitsInternal( _In_ HDC hdc, _In_ INT xDst, _In_ INT yDst, _In_ INT cxDst, _In_ INT cyDst, _In_ INT xSrc, _In_ INT ySrc, _In_ INT cxSrc, _In_ INT cySrc, _In_reads_bytes_opt_(cjMaxBits) LPBYTE pjInit, _In_ LPBITMAPINFO pbmi, _In_ DWORD dwUsage, _In_ DWORD dwRop4, _In_ UINT cjMaxInfo, _In_ UINT cjMaxBits, _In_opt_ HANDLE hcmXform); __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetOutlineTextMetricsInternalW( _In_ HDC hdc, _In_ ULONG cjotm, _Out_writes_bytes_opt_(cjotm) OUTLINETEXTMETRICW *potmw, _Out_ TMDIFF *ptmd); _Success_(return != FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetAndSetDCDword( _In_ HDC hdc, _In_ UINT u, _In_ DWORD dwIn, _Out_ DWORD *pdwResult); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiGetDCObject( _In_ HDC hdc, _In_ INT itype); __kernel_entry W32KAPI HDC APIENTRY NtGdiGetDCforBitmap( _In_ HBITMAP hsurf); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetMonitorID( _In_ HDC hdc, _In_ DWORD cjSize, _Out_writes_bytes_(cjSize) LPWSTR pszMonitorID); __kernel_entry W32KAPI INT APIENTRY NtGdiGetLinkedUFIs( _In_ HDC hdc, _Out_writes_opt_(cBufferSize) PUNIVERSAL_FONT_ID pufiLinkedUFIs, _In_ INT cBufferSize); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetLinkedUFIs( _In_ HDC hdc, _In_reads_(uNumUFIs) PUNIVERSAL_FONT_ID pufiLinks, _In_ ULONG uNumUFIs); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetUFI( _In_ HDC hdc, _Out_ PUNIVERSAL_FONT_ID pufi, _Out_opt_ DESIGNVECTOR *pdv, _Out_ ULONG *pcjDV, _Out_ ULONG *pulBaseCheckSum, _Out_ FLONG *pfl); __kernel_entry W32KAPI BOOL APIENTRY NtGdiForceUFIMapping( _In_ HDC hdc, _In_ PUNIVERSAL_FONT_ID pufi); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetUFIPathname( _In_ PUNIVERSAL_FONT_ID pufi, _Deref_out_range_(0, MAX_PATH * 3) ULONG* pcwc, _Out_writes_to_opt_(MAX_PATH * 3, *pcwc) LPWSTR pwszPathname, _Out_opt_ ULONG* pcNumFiles, _In_ FLONG fl, _Out_opt_ BOOL *pbMemFont, _Out_opt_ ULONG *pcjView, _Out_opt_ PVOID pvView, _Out_opt_ BOOL *pbTTC, _Out_opt_ ULONG *piTTC); __kernel_entry W32KAPI BOOL APIENTRY NtGdiAddRemoteFontToDC( _In_ HDC hdc, _In_reads_bytes_(cjBuffer) PVOID pvBuffer, _In_ ULONG cjBuffer, _In_opt_ PUNIVERSAL_FONT_ID pufi); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiAddFontMemResourceEx( _In_reads_bytes_(cjBuffer) PVOID pvBuffer, _In_ DWORD cjBuffer, _In_reads_bytes_opt_(cjDV) DESIGNVECTOR *pdv, _In_ ULONG cjDV, _Out_ DWORD *pNumFonts); __kernel_entry W32KAPI BOOL APIENTRY NtGdiRemoveFontMemResourceEx( _In_ HANDLE hMMFont); __kernel_entry W32KAPI BOOL APIENTRY NtGdiUnmapMemFont( _In_ PVOID pvView); __kernel_entry W32KAPI BOOL APIENTRY NtGdiRemoveMergeFont( _In_ HDC hdc, _In_ UNIVERSAL_FONT_ID *pufi); __kernel_entry W32KAPI BOOL APIENTRY NtGdiAnyLinkedFonts( VOID); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetEmbUFI( _In_ HDC hdc, _Out_ PUNIVERSAL_FONT_ID pufi, _Out_opt_ DESIGNVECTOR *pdv, _Out_ ULONG *pcjDV, _Out_ ULONG *pulBaseCheckSum, _Out_ FLONG *pfl, _Out_ KERNEL_PVOID *embFontID); __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetEmbedFonts( VOID); __kernel_entry W32KAPI BOOL APIENTRY NtGdiChangeGhostFont( _In_ KERNEL_PVOID *pfontID, _In_ BOOL bLoad); __kernel_entry W32KAPI BOOL APIENTRY NtGdiAddEmbFontToDC( _In_ HDC hdc, _In_ PVOID *pFontID); __kernel_entry W32KAPI BOOL APIENTRY NtGdiFontIsLinked( _In_ HDC hdc); __kernel_entry W32KAPI ULONG_PTR APIENTRY NtGdiPolyPolyDraw( _In_ HDC hdc, _In_ PPOINT ppt, _In_reads_(ccpt) PULONG pcpt, _In_ ULONG ccpt, _In_ INT iFunc); __kernel_entry W32KAPI LONG APIENTRY NtGdiDoPalette( _In_ HGDIOBJ hObj, _In_ WORD iStart, _In_ WORD cEntries, _When_(bInbound!=0, _In_reads_bytes_(cEntries*sizeof(PALETTEENTRY))) _When_(bInbound==0, _Out_writes_bytes_(cEntries*sizeof(PALETTEENTRY))) LPVOID pEntries, _In_ DWORD iFunc, _In_ BOOL bInbound); __kernel_entry W32KAPI BOOL APIENTRY NtGdiComputeXformCoefficients( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetWidthTable( _In_ HDC hdc, _In_ ULONG cSpecial, _In_reads_(cwc) WCHAR *pwc, _In_ ULONG cwc, _Out_writes_(cwc) USHORT *psWidth, _Out_opt_ WIDTHDATA *pwd, _Out_ FLONG *pflInfo); _Success_(return != 0) __kernel_entry W32KAPI INT APIENTRY NtGdiDescribePixelFormat( _In_ HDC hdc, _In_ INT ipfd, _In_ UINT cjpfd, _Out_writes_bytes_(cjpfd) PPIXELFORMATDESCRIPTOR ppfd); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetPixelFormat( _In_ HDC hdc, _In_ INT ipfd); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSwapBuffers( _In_ HDC hdc); /* Not in MS ntgdi.h */ __kernel_entry W32KAPI INT APIENTRY NtGdiSetupPublicCFONT( _In_ HDC hdc, _In_opt_ HFONT hf, _In_ ULONG ulAve); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDxgGenericThunk( _In_ ULONG_PTR ulIndex, _In_ ULONG_PTR ulHandle, _Inout_ SIZE_T *pdwSizeOfPtr1, _Inout_ PVOID pvPtr1, _Inout_ SIZE_T *pdwSizeOfPtr2, _Inout_ PVOID pvPtr2); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdAddAttachedSurface( _In_ HANDLE hSurface, _In_ HANDLE hSurfaceAttached, _Inout_ PDD_ADDATTACHEDSURFACEDATA puAddAttachedSurfaceData); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDdAttachSurface( _In_ HANDLE hSurfaceFrom, _In_ HANDLE hSurfaceTo); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdBlt( _In_ HANDLE hSurfaceDest, _In_ HANDLE hSurfaceSrc, _Inout_ PDD_BLTDATA puBltData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdCanCreateSurface( _In_ HANDLE hDirectDraw, _Inout_ PDD_CANCREATESURFACEDATA puCanCreateSurfaceData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdColorControl( _In_ HANDLE hSurface, _Inout_ PDD_COLORCONTROLDATA puColorControlData); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiDdCreateDirectDrawObject( _In_ HDC hdc); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdCreateSurface( _In_ HANDLE hDirectDraw, _In_ HANDLE* hSurface, _Inout_ DDSURFACEDESC* puSurfaceDescription, _Inout_ DD_SURFACE_GLOBAL* puSurfaceGlobalData, _Inout_ DD_SURFACE_LOCAL* puSurfaceLocalData, _Inout_ DD_SURFACE_MORE* puSurfaceMoreData, _Inout_ DD_CREATESURFACEDATA* puCreateSurfaceData, _Out_ HANDLE* puhSurface); #ifdef DX_LONGHORN_PRESERVEDC __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdChangeSurfacePointer( _In_ HANDLE hSurface, _In_ PVOID pSurfacePointer); #endif /* DX_LONGHORN_PRESERVEDC */ __kernel_entry W32KAPI HANDLE APIENTRY NtGdiDdCreateSurfaceObject( _In_ HANDLE hDirectDrawLocal, _In_ HANDLE hSurface, _In_ PDD_SURFACE_LOCAL puSurfaceLocal, _In_ PDD_SURFACE_MORE puSurfaceMore, _In_ PDD_SURFACE_GLOBAL puSurfaceGlobal, _In_ BOOL bComplete); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDdDeleteSurfaceObject( _In_ HANDLE hSurface); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDdDeleteDirectDrawObject( _In_ HANDLE hDirectDrawLocal); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDestroySurface( _In_ HANDLE hSurface, _In_ BOOL bRealDestroy); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdFlip( _In_ HANDLE hSurfaceCurrent, _In_ HANDLE hSurfaceTarget, _In_ HANDLE hSurfaceCurrentLeft, _In_ HANDLE hSurfaceTargetLeft, _Inout_ PDD_FLIPDATA puFlipData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetAvailDriverMemory( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETAVAILDRIVERMEMORYDATA puGetAvailDriverMemoryData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetBltStatus( _In_ HANDLE hSurface, _Inout_ PDD_GETBLTSTATUSDATA puGetBltStatusData); __kernel_entry W32KAPI HDC APIENTRY NtGdiDdGetDC( _In_ HANDLE hSurface, _In_ PALETTEENTRY* puColorTable); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetDriverInfo( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETDRIVERINFODATA puGetDriverInfoData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetFlipStatus( _In_ HANDLE hSurface, _Inout_ PDD_GETFLIPSTATUSDATA puGetFlipStatusData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetScanLine( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETSCANLINEDATA puGetScanLineData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdSetExclusiveMode( _In_ HANDLE hDirectDraw, _Inout_ PDD_SETEXCLUSIVEMODEDATA puSetExclusiveModeData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdFlipToGDISurface( _In_ HANDLE hDirectDraw, _Inout_ PDD_FLIPTOGDISURFACEDATA puFlipToGDISurfaceData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdLock( _In_ HANDLE hSurface, _Inout_ PDD_LOCKDATA puLockData, _In_ HDC hdcClip); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDdQueryDirectDrawObject( _In_ HANDLE hDirectDrawLocal, _Out_ PDD_HALINFO pHalInfo, _Out_writes_(3) DWORD* pCallBackFlags, _Out_opt_ LPD3DNTHAL_CALLBACKS puD3dCallbacks, _Out_opt_ LPD3DNTHAL_GLOBALDRIVERDATA puD3dDriverData, _Out_opt_ PDD_D3DBUFCALLBACKS puD3dBufferCallbacks, _Out_opt_ LPDDSURFACEDESC puD3dTextureFormats, _Out_ DWORD* puNumHeaps, _Out_opt_ VIDEOMEMORY* puvmList, _Out_ DWORD* puNumFourCC, _Out_opt_ DWORD* puFourCC); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDdReenableDirectDrawObject( _In_ HANDLE hDirectDrawLocal, _Inout_ BOOL* pubNewMode); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDdReleaseDC( _In_ HANDLE hSurface); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDdResetVisrgn( _In_ HANDLE hSurface, _In_ HWND hwnd); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdSetColorKey( _In_ HANDLE hSurface, _Inout_ PDD_SETCOLORKEYDATA puSetColorKeyData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdSetOverlayPosition( _In_ HANDLE hSurfaceSource, _In_ HANDLE hSurfaceDestination, _Inout_ PDD_SETOVERLAYPOSITIONDATA puSetOverlayPositionData); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiDdUnattachSurface( _In_ HANDLE hSurface, _In_ HANDLE hSurfaceAttached); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdUnlock( _In_ HANDLE hSurface, _Inout_ PDD_UNLOCKDATA puUnlockData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdUpdateOverlay( _In_ HANDLE hSurfaceDestination, _In_ HANDLE hSurfaceSource, _Inout_ PDD_UPDATEOVERLAYDATA puUpdateOverlayData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdWaitForVerticalBlank( _In_ HANDLE hDirectDraw, _Inout_ PDD_WAITFORVERTICALBLANKDATA puWaitForVerticalBlankData); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiDdGetDxHandle( _In_opt_ HANDLE hDirectDraw, _In_opt_ HANDLE hSurface, _In_ BOOL bRelease); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDdSetGammaRamp( _In_ HANDLE hDirectDraw, _In_ HDC hdc, _In_reads_bytes_(sizeof(GAMMARAMP)) LPVOID lpGammaRamp); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdLockD3D( _In_ HANDLE hSurface, _Inout_ PDD_LOCKDATA puLockData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdUnlockD3D( _In_ HANDLE hSurface, _Inout_ PDD_UNLOCKDATA puUnlockData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdCreateD3DBuffer( _In_ HANDLE hDirectDraw, _Inout_ HANDLE* hSurface, _Inout_ DDSURFACEDESC* puSurfaceDescription, _Inout_ DD_SURFACE_GLOBAL* puSurfaceGlobalData, _Inout_ DD_SURFACE_LOCAL* puSurfaceLocalData, _Inout_ DD_SURFACE_MORE* puSurfaceMoreData, _Inout_ DD_CREATESURFACEDATA* puCreateSurfaceData, _Inout_ HANDLE* puhSurface); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdCanCreateD3DBuffer( _In_ HANDLE hDirectDraw, _Inout_ PDD_CANCREATESURFACEDATA puCanCreateSurfaceData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDestroyD3DBuffer( _In_ HANDLE hSurface); __kernel_entry W32KAPI BOOL APIENTRY NtGdiD3dContextCreate( _In_ HANDLE hDirectDrawLocal, _In_ HANDLE hSurfColor, _In_ HANDLE hSurfZ, _Inout_ D3DNTHAL_CONTEXTCREATEI *pdcci); __kernel_entry W32KAPI DWORD APIENTRY NtGdiD3dContextDestroy( _In_ LPD3DNTHAL_CONTEXTDESTROYDATA pdcdd); __kernel_entry W32KAPI DWORD APIENTRY NtGdiD3dContextDestroyAll( _Out_ LPD3DNTHAL_CONTEXTDESTROYALLDATA pdcdad); __kernel_entry W32KAPI DWORD APIENTRY NtGdiD3dValidateTextureStageState( _Inout_ LPD3DNTHAL_VALIDATETEXTURESTAGESTATEDATA pData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiD3dDrawPrimitives2( _In_ HANDLE hCmdBuf, _In_ HANDLE hVBuf, _Inout_ LPD3DNTHAL_DRAWPRIMITIVES2DATA pded, _Inout_ FLATPTR* pfpVidMemCmd, _Inout_ DWORD* pdwSizeCmd, _Inout_ FLATPTR* pfpVidMemVtx, _Inout_ DWORD* pdwSizeVtx); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetDriverState( _Inout_ PDD_GETDRIVERSTATEDATA pdata); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdCreateSurfaceEx( _In_ HANDLE hDirectDraw, _In_ HANDLE hSurface, _In_ DWORD dwSurfaceHandle); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDDICreateDCFromMemory( _Inout_ D3DKMT_CREATEDCFROMMEMORY *desc); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDDIDestroyDCFromMemory( _In_ CONST D3DKMT_DESTROYDCFROMMEMORY *desc); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpCanCreateVideoPort( _In_ HANDLE hDirectDraw, _Inout_ PDD_CANCREATEVPORTDATA puCanCreateVPortData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpColorControl( _In_ HANDLE hVideoPort, _Inout_ PDD_VPORTCOLORDATA puVPortColorData); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiDvpCreateVideoPort( _In_ HANDLE hDirectDraw, _Inout_ PDD_CREATEVPORTDATA puCreateVPortData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpDestroyVideoPort( _In_ HANDLE hVideoPort, _Inout_ PDD_DESTROYVPORTDATA puDestroyVPortData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpFlipVideoPort( _In_ HANDLE hVideoPort, _In_ HANDLE hDDSurfaceCurrent, _In_ HANDLE hDDSurfaceTarget, _Inout_ PDD_FLIPVPORTDATA puFlipVPortData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortBandwidth( _In_ HANDLE hVideoPort, _Inout_ PDD_GETVPORTBANDWIDTHDATA puGetVPortBandwidthData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortField( _In_ HANDLE hVideoPort, _Inout_ PDD_GETVPORTFIELDDATA puGetVPortFieldData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortFlipStatus( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETVPORTFLIPSTATUSDATA puGetVPortFlipStatusData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortInputFormats( _In_ HANDLE hVideoPort, _Inout_ PDD_GETVPORTINPUTFORMATDATA puGetVPortInputFormatData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortLine( _In_ HANDLE hVideoPort, _Inout_ PDD_GETVPORTLINEDATA puGetVPortLineData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortOutputFormats( _In_ HANDLE hVideoPort, _Inout_ PDD_GETVPORTOUTPUTFORMATDATA puGetVPortOutputFormatData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortConnectInfo( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETVPORTCONNECTDATA puGetVPortConnectData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoSignalStatus( _In_ HANDLE hVideoPort, _Inout_ PDD_GETVPORTSIGNALDATA puGetVPortSignalData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpUpdateVideoPort( _In_ HANDLE hVideoPort, _In_ HANDLE* phSurfaceVideo, _In_ HANDLE* phSurfaceVbi, _Inout_ PDD_UPDATEVPORTDATA puUpdateVPortData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpWaitForVideoPortSync( _In_ HANDLE hVideoPort, _Inout_ PDD_WAITFORVPORTSYNCDATA puWaitForVPortSyncData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpAcquireNotification( _In_ HANDLE hVideoPort, _Inout_ HANDLE* hEvent, _In_ LPDDVIDEOPORTNOTIFY pNotify); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpReleaseNotification( _In_ HANDLE hVideoPort, _In_ HANDLE hEvent); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetMoCompGuids( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETMOCOMPGUIDSDATA puGetMoCompGuidsData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetMoCompFormats( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETMOCOMPFORMATSDATA puGetMoCompFormatsData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetMoCompBuffInfo( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETMOCOMPCOMPBUFFDATA puGetBuffData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetInternalMoCompInfo( _In_ HANDLE hDirectDraw, _Inout_ PDD_GETINTERNALMOCOMPDATA puGetInternalData); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiDdCreateMoComp( _In_ HANDLE hDirectDraw, _Inout_ PDD_CREATEMOCOMPDATA puCreateMoCompData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDestroyMoComp( _In_ HANDLE hMoComp, _Inout_ PDD_DESTROYMOCOMPDATA puDestroyMoCompData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdBeginMoCompFrame( _In_ HANDLE hMoComp, _Inout_ PDD_BEGINMOCOMPFRAMEDATA puBeginFrameData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdEndMoCompFrame( _In_ HANDLE hMoComp, _Inout_ PDD_ENDMOCOMPFRAMEDATA puEndFrameData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdRenderMoComp( _In_ HANDLE hMoComp, _Inout_ PDD_RENDERMOCOMPDATA puRenderMoCompData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdQueryMoCompStatus( _In_ HANDLE hMoComp, _Inout_ PDD_QUERYMOCOMPSTATUSDATA puQueryMoCompStatusData); __kernel_entry W32KAPI DWORD APIENTRY NtGdiDdAlphaBlt( _In_ HANDLE hSurfaceDest, _In_opt_ HANDLE hSurfaceSrc, _Inout_ PDD_BLTDATA puBltData); __kernel_entry W32KAPI BOOL APIENTRY NtGdiAlphaBlend( _In_ HDC hdcDst, _In_ LONG DstX, _In_ LONG DstY, _In_ LONG DstCx, _In_ LONG DstCy, _In_ HDC hdcSrc, _In_ LONG SrcX, _In_ LONG SrcY, _In_ LONG SrcCx, _In_ LONG SrcCy, _In_ BLENDFUNCTION BlendFunction, _In_ HANDLE hcmXform); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGradientFill( _In_ HDC hdc, _In_ PTRIVERTEX pVertex, _In_ ULONG nVertex, _In_ PVOID pMesh, _In_ ULONG nMesh, _In_ ULONG ulMode); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetIcmMode( _In_ HDC hdc, _In_ ULONG nCommand, _In_ ULONG ulMode); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiCreateColorSpace( _In_ PLOGCOLORSPACEEXW pLogColorSpace); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteColorSpace( _In_ HANDLE hColorSpace); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetColorSpace( _In_ HDC hdc, _In_ HCOLORSPACE hColorSpace); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiCreateColorTransform( _In_ HDC hdc, _In_ LPLOGCOLORSPACEW pLogColorSpaceW, _In_reads_bytes_opt_(cjSrcProfile) PVOID pvSrcProfile, _In_ ULONG cjSrcProfile, _In_reads_bytes_opt_(cjDestProfile) PVOID pvDestProfile, _In_ ULONG cjDestProfile, _In_reads_bytes_opt_(cjTargetProfile) PVOID pvTargetProfile, _In_ ULONG cjTargetProfile); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteColorTransform( _In_ HDC hdc, _In_ HANDLE hColorTransform); __kernel_entry W32KAPI BOOL APIENTRY NtGdiCheckBitmapBits( _In_ HDC hdc, _In_ HANDLE hColorTransform, _In_reads_bytes_(dwStride * dwHeight) PVOID pvBits, _In_ ULONG bmFormat, _In_ DWORD dwWidth, _In_ DWORD dwHeight, _In_ DWORD dwStride, _Out_writes_bytes_(dwWidth * dwHeight) PBYTE paResults); __kernel_entry W32KAPI ULONG APIENTRY NtGdiColorCorrectPalette( _In_ HDC hdc, _In_ HPALETTE hpal, _In_ ULONG uFirstEntry, _In_ ULONG cPalEntries, _Inout_updates_(cPalEntries) PALETTEENTRY *ppalEntry, _In_ ULONG uCommand); __kernel_entry W32KAPI ULONG_PTR APIENTRY NtGdiGetColorSpaceforBitmap( _In_ HBITMAP hsurf); _Success_(return!=FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetDeviceGammaRamp( _In_ HDC hdc, _Out_writes_bytes_(sizeof(GAMMARAMP)) LPVOID lpGammaRamp); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetDeviceGammaRamp( _In_ HDC hdc, _In_reads_bytes_(sizeof(GAMMARAMP)) LPVOID lpGammaRamp); __kernel_entry W32KAPI BOOL APIENTRY NtGdiIcmBrushInfo( _In_ HDC hdc, _In_ HBRUSH hbrush, _Inout_updates_bytes_(sizeof(BITMAPINFO) + ((/*MAX_COLORTABLE*/256 - 1) * sizeof(RGBQUAD))) PBITMAPINFO pbmiDIB, _Inout_updates_bytes_(*pulBits) PVOID pvBits, _Inout_ ULONG *pulBits, _Out_opt_ DWORD *piUsage, _Out_opt_ BOOL *pbAlreadyTran, _In_ ULONG Command); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiFlush( VOID); __kernel_entry W32KAPI HDC APIENTRY NtGdiCreateMetafileDC( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiMakeInfoDC( _In_ HDC hdc, _In_ BOOL bSet); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiCreateClientObj( _In_ ULONG ulType); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteClientObj( _In_ HANDLE h); __kernel_entry W32KAPI LONG APIENTRY NtGdiGetBitmapBits( _In_ HBITMAP hbm, _In_ ULONG cjMax, _Out_writes_bytes_opt_(cjMax) PBYTE pjOut); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteObjectApp( _In_ HANDLE hobj); __kernel_entry W32KAPI INT APIENTRY NtGdiGetPath( _In_ HDC hdc, _Out_writes_opt_(cptBuf) LPPOINT pptlBuf, _Out_writes_opt_(cptBuf) LPBYTE pjTypes, _In_ INT cptBuf); __kernel_entry W32KAPI HDC APIENTRY NtGdiCreateCompatibleDC( _In_opt_ HDC hdc); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateDIBitmapInternal( _In_ HDC hdc, _In_ INT cx, _In_ INT cy, _In_ DWORD fInit, _In_reads_bytes_opt_(cjMaxBits) LPBYTE pjInit, _In_reads_bytes_opt_(cjMaxInitInfo) LPBITMAPINFO pbmi, _In_ DWORD iUsage, _In_ UINT cjMaxInitInfo, _In_ UINT cjMaxBits, _In_ FLONG f, _In_ HANDLE hcmXform); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateDIBSection( _In_ HDC hdc, _In_opt_ HANDLE hSectionApp, _In_ DWORD dwOffset, _In_reads_bytes_opt_(cjHeader) LPBITMAPINFO pbmi, _In_ DWORD iUsage, _In_ UINT cjHeader, _In_ FLONG fl, _In_ ULONG_PTR dwColorSpace, _Outptr_ PVOID *ppvBits); __kernel_entry W32KAPI HBRUSH APIENTRY NtGdiCreateSolidBrush( _In_ COLORREF cr, _In_opt_ HBRUSH hbr); __kernel_entry W32KAPI HBRUSH APIENTRY NtGdiCreateDIBBrush( _In_reads_bytes_(cj) PVOID pv, _In_ FLONG fl, _In_ UINT cj, _In_ BOOL b8X8, _In_ BOOL bPen, _In_ PVOID pClient); __kernel_entry W32KAPI HBRUSH APIENTRY NtGdiCreatePatternBrushInternal( _In_ HBITMAP hbm, _In_ BOOL bPen, _In_ BOOL b8X8); __kernel_entry W32KAPI HBRUSH APIENTRY NtGdiCreateHatchBrushInternal( _In_ ULONG ulStyle, _In_ COLORREF clrr, _In_ BOOL bPen); __kernel_entry W32KAPI HPEN APIENTRY NtGdiExtCreatePen( _In_ ULONG flPenStyle, _In_ ULONG ulWidth, _In_ ULONG iBrushStyle, _In_ ULONG ulColor, _In_ ULONG_PTR lClientHatch, _In_ ULONG_PTR lHatch, _In_ ULONG cstyle, _In_reads_opt_(cstyle) PULONG pulStyle, _In_ ULONG cjDIB, _In_ BOOL bOldStylePen, _In_opt_ HBRUSH hbrush); __kernel_entry W32KAPI HRGN APIENTRY NtGdiCreateEllipticRgn( _In_ INT xLeft, _In_ INT yTop, _In_ INT xRight, _In_ INT yBottom); __kernel_entry W32KAPI HRGN APIENTRY NtGdiCreateRoundRectRgn( _In_ INT xLeft, _In_ INT yTop, _In_ INT xRight, _In_ INT yBottom, _In_ INT xWidth, _In_ INT yHeight); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiCreateServerMetaFile( _In_ DWORD iType, _In_ ULONG cjData, _In_reads_bytes_(cjData) LPBYTE pjData, _In_ DWORD mm, _In_ DWORD xExt, _In_ DWORD yExt); __kernel_entry W32KAPI HRGN APIENTRY NtGdiExtCreateRegion( _In_opt_ LPXFORM px, _In_ DWORD cj, _In_reads_bytes_(cj) LPRGNDATA prgndata); __kernel_entry W32KAPI ULONG APIENTRY NtGdiMakeFontDir( _In_ FLONG flEmbed, _Out_writes_bytes_(cjFontDir) PBYTE pjFontDir, _In_ UINT cjFontDir, _In_reads_bytes_(cjPathname) LPWSTR pwszPathname, _In_ UINT cjPathname); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPolyDraw( _In_ HDC hdc, _In_reads_(cpt) LPPOINT ppt, _In_reads_(cpt) LPBYTE pjAttr, _In_ ULONG cpt); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPolyTextOutW( _In_ HDC hdc, _In_reads_(cStr) POLYTEXTW *pptw, _In_ UINT cStr, _In_ DWORD dwCodePage); __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetServerMetaFileBits( _In_ HANDLE hmo, _In_ ULONG cjData, _Out_writes_bytes_opt_(cjData) LPBYTE pjData, _Out_ PDWORD piType, _Out_ PDWORD pmm, _Out_ PDWORD pxExt, _Out_ PDWORD pyExt); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEqualRgn( _In_ HRGN hrgn1, _In_ HRGN hrgn2); _Must_inspect_result_ _Success_(return!=FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetBitmapDimension( _In_ HBITMAP hbm, _Out_ LPSIZE psize); __kernel_entry W32KAPI UINT APIENTRY NtGdiGetNearestPaletteIndex( _In_ HPALETTE hpal, _In_ COLORREF crColor); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPtVisible( _In_ HDC hdc, _In_ INT x, _In_ INT y); __kernel_entry W32KAPI BOOL APIENTRY NtGdiRectVisible( _In_ HDC hdc, _In_ LPRECT prc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiRemoveFontResourceW( _In_reads_(cwc) WCHAR *pwszFiles, _In_ ULONG cwc, _In_ ULONG cFiles, _In_ ULONG fl, _In_ DWORD dwPidTid, _In_opt_ DESIGNVECTOR *pdv); __kernel_entry W32KAPI BOOL APIENTRY NtGdiResizePalette( _In_ HPALETTE hpal, _In_ UINT cEntry); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetBitmapDimension( _In_ HBITMAP hbm, _In_ INT cx, _In_ INT cy, _In_opt_ LPSIZE psizeOut); __kernel_entry W32KAPI INT APIENTRY NtGdiOffsetClipRgn( _In_ HDC hdc, _In_ INT x, _In_ INT y); __kernel_entry W32KAPI INT APIENTRY NtGdiSetMetaRgn( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetTextJustification( _In_ HDC hdc, _In_ INT lBreakExtra, _In_ INT cBreak); _Success_(return!=ERROR) __kernel_entry W32KAPI INT APIENTRY NtGdiGetAppClipBox( _In_ HDC hdc, _Out_ LPRECT prc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetTextExtentExW( _In_ HDC hdc, _In_reads_opt_(cwc) LPWSTR pwsz, _In_ ULONG cwc, _In_ ULONG dxMax, _Out_opt_ ULONG *pcCh, _Out_writes_to_opt_(cwc, *pcCh) PULONG pdxOut, _Out_ LPSIZE psize, _In_ FLONG fl); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetCharABCWidthsW( _In_ HDC hdc, _In_ UINT wchFirst, _In_ ULONG cwch, _In_reads_opt_(cwch) PWCHAR pwch, _In_ FLONG fl, _Out_writes_bytes_(cwch * sizeof(ABC)) PVOID pvBuf); __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetCharacterPlacementW( _In_ HDC hdc, _In_reads_z_(nCount) LPWSTR pwsz, _In_ INT nCount, _In_ INT nMaxExtent, _Inout_ LPGCP_RESULTSW pgcpw, _In_ DWORD dwFlags); __kernel_entry W32KAPI BOOL APIENTRY NtGdiAngleArc( _In_ HDC hdc, _In_ INT x, _In_ INT y, _In_ DWORD dwRadius, _In_ DWORD dwStartAngle, _In_ DWORD dwSweepAngle); __kernel_entry W32KAPI BOOL APIENTRY NtGdiBeginPath( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSelectClipPath( _In_ HDC hdc, _In_ INT iMode); __kernel_entry W32KAPI BOOL APIENTRY NtGdiCloseFigure( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEndPath( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiAbortPath( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiFillPath( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiStrokeAndFillPath( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiStrokePath( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiWidenPath( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiFlattenPath( _In_ HDC hdc); __kernel_entry W32KAPI HRGN APIENTRY NtGdiPathToRegion( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetMiterLimit( _In_ HDC hdc, _In_ DWORD dwNew, _Inout_opt_ PDWORD pdwOut); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetFontXform( _In_ HDC hdc, _In_ DWORD dwxScale, _In_ DWORD dwyScale); _Success_(return != FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetMiterLimit( _In_ HDC hdc, _Out_ PDWORD pdwOut); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEllipse( _In_ HDC hdc, _In_ INT xLeft, _In_ INT yTop, _In_ INT xRight, _In_ INT yBottom); __kernel_entry W32KAPI BOOL APIENTRY NtGdiRectangle( _In_ HDC hdc, _In_ INT xLeft, _In_ INT yTop, _In_ INT xRight, _In_ INT yBottom); __kernel_entry W32KAPI BOOL APIENTRY NtGdiRoundRect( _In_ HDC hdc, _In_ INT x1, _In_ INT y1, _In_ INT x2, _In_ INT y2, _In_ INT x3, _In_ INT y3); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPlgBlt( _In_ HDC hdcTrg, _In_reads_(3) LPPOINT pptlTrg, _In_ HDC hdcSrc, _In_ INT xSrc, _In_ INT ySrc, _In_ INT cxSrc, _In_ INT cySrc, _In_opt_ HBITMAP hbmMask, _In_ INT xMask, _In_ INT yMask, _In_ DWORD crBackColor); __kernel_entry W32KAPI BOOL APIENTRY NtGdiMaskBlt( _In_ HDC hdc, _In_ INT xDst, _In_ INT yDst, _In_ INT cx, _In_ INT cy, _In_ HDC hdcSrc, _In_ INT xSrc, _In_ INT ySrc, _In_opt_ HBITMAP hbmMask, _In_ INT xMask, _In_ INT yMask, _In_ DWORD dwRop4, _In_ DWORD crBackColor); __kernel_entry W32KAPI BOOL APIENTRY NtGdiExtFloodFill( _In_ HDC hdc, _In_ INT x, _In_ INT y, _In_ COLORREF crColor, _In_ UINT iFillType); __kernel_entry W32KAPI BOOL APIENTRY NtGdiFillRgn( _In_ HDC hdc, _In_ HRGN hrgn, _In_ HBRUSH hbrush); __kernel_entry W32KAPI BOOL APIENTRY NtGdiFrameRgn( _In_ HDC hdc, _In_ HRGN hrgn, _In_ HBRUSH hbrush, _In_ INT xWidth, _In_ INT yHeight); __kernel_entry W32KAPI COLORREF APIENTRY NtGdiSetPixel( _In_ HDC hdcDst, _In_ INT x, _In_ INT y, _In_ COLORREF crColor); __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetPixel( _In_ HDC hdc, _In_ INT x, _In_ INT y); __kernel_entry W32KAPI BOOL APIENTRY NtGdiStartPage( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEndPage( _In_ HDC hdc); __kernel_entry W32KAPI INT APIENTRY NtGdiStartDoc( _In_ HDC hdc, _In_ DOCINFOW *pdi, _Out_ BOOL *pbBanding, _In_ INT iJob); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEndDoc( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiAbortDoc( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiUpdateColors( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetCharWidthW( _In_ HDC hdc, _In_ UINT wcFirst, _In_ UINT cwc, _In_reads_opt_(cwc) PWCHAR pwc, _In_ FLONG fl, _Out_writes_bytes_(cwc * sizeof(ULONG)) PVOID pvBuf); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetCharWidthInfo( _In_ HDC hdc, _Out_ PCHWIDTHINFO pChWidthInfo); __kernel_entry W32KAPI INT APIENTRY NtGdiDrawEscape( _In_ HDC hdc, _In_ INT iEsc, _In_ INT cjIn, _In_reads_bytes_opt_(cjIn) LPSTR pjIn); __kernel_entry W32KAPI INT APIENTRY NtGdiExtEscape( _In_opt_ HDC hdc, _In_reads_opt_(cwcDriver) PWCHAR pDriver, _In_ INT cwcDriver, _In_ INT iEsc, _In_ INT cjIn, _In_reads_bytes_opt_(cjIn) LPSTR pjIn, _In_ INT cjOut, _Out_writes_bytes_opt_(cjOut) LPSTR pjOut); _Success_(return != GDI_ERROR) __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetFontData( _In_ HDC hdc, _In_ DWORD dwTable, _In_ DWORD dwOffset, _Out_writes_bytes_to_opt_(cjBuf, return) PVOID pvBuf, _In_ ULONG cjBuf); __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetFontFileData( _In_ UINT uFileCollectionID, _In_ UINT uFileIndex, _In_ PULONGLONG pullFileOffset, _Out_writes_bytes_(cjBuf) PVOID pvBuf, _In_ SIZE_T cjBuf); #if (_WIN32_WINNT >= _WIN32_WINNT_WIN7) __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetFontFileInfo( _In_ UINT uFileCollectionID, _In_ UINT uFileIndex, _Out_writes_bytes_(cjSize) PFONT_FILE_INFO pffi, _In_ SIZE_T cjSize, _Out_opt_ PSIZE_T pcjActualSize); #endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN7) */ __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetGlyphOutline( _In_ HDC hdc, _In_ WCHAR wch, _In_ UINT iFormat, _Out_ LPGLYPHMETRICS pgm, _In_ ULONG cjBuf, _Out_writes_bytes_opt_(cjBuf) PVOID pvBuf, _In_ LPMAT2 pmat2, _In_ BOOL bIgnoreRotation); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetETM( _In_ HDC hdc, _Out_opt_ EXTTEXTMETRIC *petm); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetRasterizerCaps( _Out_writes_bytes_(cjBytes) LPRASTERIZER_STATUS praststat, _In_ ULONG cjBytes); __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetKerningPairs( _In_ HDC hdc, _In_ ULONG cPairs, _Out_writes_to_opt_(cPairs, return) KERNINGPAIR *pkpDst); __kernel_entry W32KAPI BOOL APIENTRY NtGdiMonoBitmap( _In_ HBITMAP hbm); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiGetObjectBitmapHandle( _In_ HBRUSH hbr, _Out_ UINT *piUsage); __kernel_entry W32KAPI ULONG APIENTRY NtGdiEnumObjects( _In_ HDC hdc, _In_ INT iObjectType, _In_ ULONG cjBuf, _Out_writes_bytes_opt_(cjBuf) PVOID pvBuf); __kernel_entry W32KAPI BOOL APIENTRY NtGdiResetDC( _In_ HDC hdc, _In_ LPDEVMODEW pdm, _Out_ PBOOL pbBanding, _In_opt_ DRIVER_INFO_2W *pDriverInfo2, _At_((PUMDHPDEV*)ppUMdhpdev, _Out_) PVOID ppUMdhpdev); __kernel_entry W32KAPI DWORD APIENTRY NtGdiSetBoundsRect( _In_ HDC hdc, _In_ LPRECT prc, _In_ DWORD f); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetColorAdjustment( _In_ HDC hdc, _Out_ PCOLORADJUSTMENT pcaOut); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetColorAdjustment( _In_ HDC hdc, _In_ PCOLORADJUSTMENT pca); __kernel_entry W32KAPI BOOL APIENTRY NtGdiCancelDC( _In_ HDC hdc); __kernel_entry W32KAPI HDC APIENTRY NtGdiOpenDCW( _In_opt_ PUNICODE_STRING pustrDevice, _In_ DEVMODEW *pdm, _In_ PUNICODE_STRING pustrLogAddr, _In_ ULONG iType, _In_ BOOL bDisplay, _In_opt_ HANDLE hspool, _At_((PUMDHPDEV*)pUMdhpdev, _Out_) PVOID pUMdhpdev); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetDCDword( _In_ HDC hdc, _In_ UINT u, _Out_ DWORD *Result); _Success_(return!=FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetDCPoint( _In_ HDC hdc, _In_ UINT iPoint, _Out_ PPOINTL pptOut); __kernel_entry W32KAPI BOOL APIENTRY NtGdiScaleViewportExtEx( _In_ HDC hdc, _In_ INT xNum, _In_ INT xDenom, _In_ INT yNum, _In_ INT yDenom, _Out_opt_ LPSIZE pszOut); __kernel_entry W32KAPI BOOL APIENTRY NtGdiScaleWindowExtEx( _In_ HDC hdc, _In_ INT xNum, _In_ INT xDenom, _In_ INT yNum, _In_ INT yDenom, _Out_opt_ LPSIZE pszOut); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetVirtualResolution( _In_ HDC hdc, _In_ INT cxVirtualDevicePixel, _In_ INT cyVirtualDevicePixel, _In_ INT cxVirtualDeviceMm, _In_ INT cyVirtualDeviceMm); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetSizeDevice( _In_ HDC hdc, _In_ INT cxVirtualDevice, _In_ INT cyVirtualDevice); _Success_(return !=FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetTransform( _In_ HDC hdc, _In_ DWORD iXform, _Out_ LPXFORM pxf); __kernel_entry W32KAPI BOOL APIENTRY NtGdiModifyWorldTransform( _In_ HDC hdc, _In_opt_ LPXFORM pxf, _In_ DWORD iXform); __kernel_entry W32KAPI BOOL APIENTRY NtGdiCombineTransform( _Out_ LPXFORM pxfDst, _In_ LPXFORM pxfSrc1, _In_ LPXFORM pxfSrc2); __kernel_entry W32KAPI BOOL APIENTRY NtGdiTransformPoints( _In_ HDC hdc, _In_reads_(c) PPOINT pptIn, _Out_writes_(c) PPOINT pptOut, _In_ INT c, _In_ INT iMode); __kernel_entry W32KAPI LONG APIENTRY NtGdiConvertMetafileRect( _In_ HDC hdc, _Inout_ PRECTL prect); __kernel_entry W32KAPI INT APIENTRY NtGdiGetTextCharsetInfo( _In_ HDC hdc, _Out_opt_ LPFONTSIGNATURE lpSig, _In_ DWORD dwFlags); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDoBanding( _In_ HDC hdc, _In_ BOOL bStart, _Out_ POINTL *pptl, _Out_ PSIZE pSize); __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetPerBandInfo( _In_ HDC hdc, _Inout_ PERBANDINFO *ppbi); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiGetStats( _In_ HANDLE hProcess, _In_ INT iIndex, _In_ INT iPidType, _Out_writes_bytes_(cjResultSize) PVOID pResults, _In_ UINT cjResultSize); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetMagicColors( _In_ HDC hdc, _In_ PALETTEENTRY peMagic, _In_ ULONG Index); __kernel_entry W32KAPI HBRUSH APIENTRY NtGdiSelectBrush( _In_ HDC hdc, _In_ HBRUSH hbrush); __kernel_entry W32KAPI HPEN APIENTRY NtGdiSelectPen( _In_ HDC hdc, _In_ HPEN hpen); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiSelectBitmap( _In_ HDC hdc, _In_ HBITMAP hbm); __kernel_entry W32KAPI HFONT APIENTRY NtGdiSelectFont( _In_ HDC hdc, _In_ HFONT hf); __kernel_entry W32KAPI INT APIENTRY NtGdiExtSelectClipRgn( _In_ HDC hdc, _In_opt_ HRGN hrgn, _In_ INT iMode); __kernel_entry W32KAPI HPEN APIENTRY NtGdiCreatePen( _In_ INT iPenStyle, _In_ INT iPenWidth, _In_ COLORREF cr, _In_opt_ HBRUSH hbr); #ifdef _WINDOWBLT_NOTIFICATION_ __kernel_entry W32KAPI BOOL APIENTRY NtGdiBitBlt( _In_ HDC hdcDst, _In_ INT x, _In_ INT y, _In_ INT cx, _In_ INT cy, _In_opt_ HDC hdcSrc, _In_ INT xSrc, _In_ INT ySrc, _In_ DWORD rop4, _In_ DWORD crBackColor, _In_ FLONG fl); #else __kernel_entry W32KAPI BOOL APIENTRY NtGdiBitBlt( _In_ HDC hdcDst, _In_ INT x, _In_ INT y, _In_ INT cx, _In_ INT cy, _In_opt_ HDC hdcSrc, _In_ INT xSrc, _In_ INT ySrc, _In_ DWORD rop4, _In_ DWORD crBackColor); #endif __kernel_entry W32KAPI BOOL APIENTRY NtGdiTileBitBlt( _In_ HDC hdcDst, _In_ RECTL *prectDst, _In_ HDC hdcSrc, _In_ RECTL *prectSrc, _In_ POINTL *pptlOrigin, _In_ DWORD rop4, _In_ DWORD crBackColor); __kernel_entry W32KAPI BOOL APIENTRY NtGdiTransparentBlt( _In_ HDC hdcDst, _In_ INT xDst, _In_ INT yDst, _In_ INT cxDst, _In_ INT cyDst, _In_ HDC hdcSrc, _In_ INT xSrc, _In_ INT ySrc, _In_ INT cxSrc, _In_ INT cySrc, _In_ COLORREF TransColor); __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetTextExtent( _In_ HDC hdc, _In_reads_(cwc) LPWSTR lpwsz, _In_ INT cwc, _Out_ LPSIZE psize, _In_ UINT flOpts); _Success_(return != FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetTextMetricsW( _In_ HDC hdc, _Out_writes_bytes_(cj) TMW_INTERNAL *ptm, _In_ ULONG cj); __kernel_entry W32KAPI INT APIENTRY NtGdiGetTextFaceW( _In_ HDC hdc, _In_ INT cChar, _Out_writes_to_opt_(cChar, return) LPWSTR pszOut, _In_ BOOL bAliasName); __kernel_entry W32KAPI INT APIENTRY NtGdiGetRandomRgn( _In_ HDC hdc, _In_ HRGN hrgn, _In_ INT iRgn); __kernel_entry W32KAPI BOOL APIENTRY NtGdiExtTextOutW( _In_ HDC hdc, _In_ INT x, _In_ INT y, _In_ UINT flOpts, _In_opt_ LPRECT prcl, _In_reads_opt_(cwc) LPWSTR pwsz, _In_range_(0, 0xffff) INT cwc, _In_reads_opt_(_Inexpressible_(cwc)) LPINT pdx, _In_ DWORD dwCodePage); __kernel_entry W32KAPI INT APIENTRY NtGdiIntersectClipRect( _In_ HDC hdc, _In_ INT xLeft, _In_ INT yTop, _In_ INT xRight, _In_ INT yBottom); __kernel_entry W32KAPI HRGN APIENTRY NtGdiCreateRectRgn( _In_ INT xLeft, _In_ INT yTop, _In_ INT xRight, _In_ INT yBottom); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPatBlt( _In_ HDC hdcDest, _In_ INT x, _In_ INT y, _In_ INT cx, _In_ INT cy, _In_ DWORD dwRop); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPolyPatBlt( _In_ HDC hdc, _In_ DWORD rop4, _In_reads_(cPoly) PPOLYPATBLT pPoly, _In_ DWORD cPoly, _In_ DWORD dwMode); __kernel_entry W32KAPI BOOL APIENTRY NtGdiUnrealizeObject( _In_ HANDLE h); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiGetStockObject( _In_ INT iObject); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateCompatibleBitmap( _In_ HDC hdc, _In_ INT cx, _In_ INT cy); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateBitmapFromDxSurface( _In_ HDC hdc, _In_ UINT uiWidth, _In_ UINT uiHeight, _In_ DWORD Format, _In_opt_ HANDLE hDxSharedSurface); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateBitmapFromDxSurface2( _In_ HDC hdc, _In_ UINT uiWidth, _In_ UINT uiHeight, _In_ DWORD Format, _In_ DWORD SubresourceIndex, _In_ BOOL bSharedSurfaceNtHandle, _In_opt_ HANDLE hDxSharedSurface); __kernel_entry W32KAPI BOOL APIENTRY NtGdiBeginGdiRendering( _In_ HBITMAP hbm, _In_ BOOL bDiscard, _In_ PVOID KernelModeDeviceHandle); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEndGdiRendering( _In_ HBITMAP hbm, _In_ BOOL bDiscard, _Out_ BOOL* pbDeviceRemoved, _In_ PVOID KernelModeDeviceHandle); __kernel_entry W32KAPI BOOL APIENTRY NtGdiLineTo( _In_ HDC hdc, _In_ INT x, _In_ INT y); _Success_(return != FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiMoveTo( _In_ HDC hdc, _In_ INT x, _In_ INT y, _Out_opt_ LPPOINT pptOut); _Success_(return != 0) __kernel_entry W32KAPI INT APIENTRY NtGdiExtGetObjectW( _In_ HANDLE h, _In_ INT cj, _Out_writes_bytes_opt_(cj) LPVOID pvOut); __kernel_entry W32KAPI INT APIENTRY NtGdiGetDeviceCaps( _In_ HDC hdc, _In_ INT i); _Success_(return!=FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetDeviceCapsAll ( _In_opt_ HDC hdc, _Out_ PDEVCAPS pDevCaps); __kernel_entry W32KAPI BOOL APIENTRY NtGdiStretchBlt( _In_ HDC hdcDst, _In_ INT xDst, _In_ INT yDst, _In_ INT cxDst, _In_ INT cyDst, _In_opt_ HDC hdcSrc, _In_ INT xSrc, _In_ INT ySrc, _In_ INT cxSrc, _In_ INT cySrc, _In_ DWORD dwRop, _In_ DWORD dwBackColor); _Success_(return!=FALSE) __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetBrushOrg( _In_ HDC hdc, _In_ INT x, _In_ INT y, _Out_opt_ LPPOINT pptOut); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateBitmap( _In_ INT cx, _In_ INT cy, _In_ UINT cPlanes, _In_ UINT cBPP, _In_opt_ LPBYTE pjInit); __kernel_entry W32KAPI HPALETTE APIENTRY NtGdiCreateHalftonePalette( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiRestoreDC( _In_ HDC hdc, _In_ INT iLevel); __kernel_entry W32KAPI INT APIENTRY NtGdiExcludeClipRect( _In_ HDC hdc, _In_ INT xLeft, _In_ INT yTop, _In_ INT xRight, _In_ INT yBottom); __kernel_entry W32KAPI INT APIENTRY NtGdiSaveDC( _In_ HDC hdc); __kernel_entry W32KAPI INT APIENTRY NtGdiCombineRgn( _In_ HRGN hrgnDst, _In_ HRGN hrgnSrc1, _In_opt_ HRGN hrgnSrc2, _In_ INT iMode); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetRectRgn( _In_ HRGN hrgn, _In_ INT xLeft, _In_ INT yTop, _In_ INT xRight, _In_ INT yBottom); __kernel_entry W32KAPI LONG APIENTRY NtGdiSetBitmapBits( _In_ HBITMAP hbm, _In_ ULONG cj, _In_reads_bytes_(cj) PBYTE pjInit); _Success_(return!=0) __kernel_entry W32KAPI INT APIENTRY NtGdiGetDIBitsInternal( _In_ HDC hdc, _In_ HBITMAP hbm, _In_ UINT iStartScan, _In_ UINT cScans, _Out_writes_bytes_opt_(cjMaxBits) LPBYTE pjBits, _Inout_ LPBITMAPINFO pbmi, _In_ UINT iUsage, _In_ UINT cjMaxBits, _In_ UINT cjMaxInfo); __kernel_entry W32KAPI INT APIENTRY NtGdiOffsetRgn( _In_ HRGN hrgn, _In_ INT cx, _In_ INT cy); _Success_(return!=ERROR) __kernel_entry W32KAPI INT APIENTRY NtGdiGetRgnBox( _In_ HRGN hrgn, _Out_ LPRECT prcOut); __kernel_entry W32KAPI BOOL APIENTRY NtGdiRectInRegion( _In_ HRGN hrgn, _Inout_ LPRECT prcl); _Success_(return!=0) __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetBoundsRect( _In_ HDC hdc, _Out_ LPRECT prc, _In_ DWORD f); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPtInRegion( _In_ HRGN hrgn, _In_ INT x, _In_ INT y); __kernel_entry W32KAPI COLORREF APIENTRY NtGdiGetNearestColor( _In_ HDC hdc, _In_ COLORREF cr); __kernel_entry W32KAPI UINT APIENTRY NtGdiGetSystemPaletteUse( _In_ HDC hdc); __kernel_entry W32KAPI UINT APIENTRY NtGdiSetSystemPaletteUse( _In_ HDC hdc, _In_ UINT ui); _Success_(return!=0) __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetRegionData( _In_ HRGN hrgn, _In_ ULONG cjBuffer, _Out_writes_bytes_to_opt_(cjBuffer, return) LPRGNDATA lpRgnData); __kernel_entry W32KAPI BOOL APIENTRY NtGdiInvertRgn( _In_ HDC hdc, _In_ HRGN hrgn); __kernel_entry INT W32KAPI APIENTRY NtGdiAddFontResourceW( _In_reads_(cwc) WCHAR *pwszFiles, _In_ ULONG cwc, _In_ ULONG cFiles, _In_ FLONG f, _In_ DWORD dwPidTid, _In_opt_ DESIGNVECTOR *pdv); __kernel_entry W32KAPI HFONT APIENTRY NtGdiHfontCreate( _In_reads_bytes_(cjElfw) ENUMLOGFONTEXDVW *pelfw, _In_ ULONG cjElfw, _In_ LFTYPE lft, _In_ FLONG fl, _In_ PVOID pvCliData); __kernel_entry W32KAPI ULONG APIENTRY NtGdiSetFontEnumeration( _In_ ULONG ulType); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEnumFonts( _In_ HDC hdc, _In_ ULONG iEnumType, _In_ FLONG flWin31Compat, _In_ ULONG cchFaceName, _In_reads_opt_(cchFaceName) LPCWSTR pwszFaceName, _In_ ULONG lfCharSet, _Inout_ ULONG *pulCount, _Out_writes_bytes_opt_(*pulCount) PVOID pvUserModeBuffer); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEnumFontClose( _In_ ULONG_PTR idEnum); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEnumFontChunk( _In_ HDC hdc, _In_ ULONG_PTR idEnum, _In_ ULONG cjEfdw, _Out_ ULONG *pcjEfdw, _Out_ PENUMFONTDATAW pefdw); __kernel_entry W32KAPI ULONG_PTR APIENTRY NtGdiEnumFontOpen( _In_ HDC hdc, _In_ ULONG iEnumType, _In_ FLONG flWin31Compat, _In_ ULONG cwchMax, _In_opt_ LPWSTR pwszFaceName, _In_ ULONG lfCharSet, _Out_ ULONG *pulCount); __kernel_entry W32KAPI INT APIENTRY NtGdiQueryFonts( _Out_writes_(nBufferSize) PUNIVERSAL_FONT_ID pufiFontList, _In_ ULONG nBufferSize, _Out_ PLARGE_INTEGER pTimeStamp); __kernel_entry W32KAPI BOOL APIENTRY NtGdiConsoleTextOut( _In_ HDC hdc, _In_ POLYTEXTW *lpto, _In_ UINT nStrings, _In_ RECTL *prclBounds); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiFullscreenControl( _In_ FULLSCREENCONTROL FullscreenCommand, _In_ PVOID FullscreenInput, _In_ DWORD FullscreenInputLength, _Out_ PVOID FullscreenOutput, _Inout_ PULONG FullscreenOutputLength); __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetCharSet( _In_ HDC hdc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEnableEudc( _In_ BOOL b); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEudcLoadUnloadLink( _In_reads_opt_(cwcBaseFaceName) LPCWSTR pBaseFaceName, _In_ UINT cwcBaseFaceName, _In_reads_(cwcEudcFontPath) LPCWSTR pEudcFontPath, _In_ UINT cwcEudcFontPath, _In_ INT iPriority, _In_ INT iFontLinkType, _In_ BOOL bLoadLin); __kernel_entry W32KAPI UINT APIENTRY NtGdiGetStringBitmapW( _In_ HDC hdc, _In_ LPWSTR pwsz, _In_ UINT cwc, _Out_writes_bytes_(cj) BYTE *lpSB, _In_ UINT cj); __kernel_entry W32KAPI ULONG APIENTRY NtGdiGetEudcTimeStampEx( _In_reads_opt_(cwcBaseFaceName) LPWSTR lpBaseFaceName, _In_ ULONG cwcBaseFaceName, _In_ BOOL bSystemTimeStamp); __kernel_entry W32KAPI ULONG APIENTRY NtGdiQueryFontAssocInfo( _In_ HDC hdc); __kernel_entry W32KAPI DWORD APIENTRY NtGdiGetFontUnicodeRanges( _In_ HDC hdc, _Out_ _Post_bytecount_(return) LPGLYPHSET pgs); #ifdef LANGPACK #if (_WIN32_WINNT >= _WIN32_WINNT_WIN7) __kernel_entry W32KAPI BOOL NtGdiGetRealizationInfo( _In_ HDC hdc, _Out_ PFONT_REALIZATION_INFO pri); #else __kernel_entry W32KAPI BOOL APIENTRY NtGdiGetRealizationInfo( _In_ HDC hdc, _Out_ PREALIZATION_INFO pri, _In_ HFONT hf); #endif #endif __kernel_entry W32KAPI BOOL APIENTRY NtGdiAddRemoteMMInstanceToDC( _In_ HDC hdc, _In_reads_bytes_(cjDDV) DOWNLOADDESIGNVECTOR *pddv, _In_ ULONG cjDDV); __kernel_entry W32KAPI BOOL APIENTRY NtGdiUnloadPrinterDriver( _In_reads_bytes_(cbDriverName) LPWSTR pDriverName, _In_ ULONG cbDriverName); __kernel_entry W32KAPI BOOL APIENTRY NtGdiInitSpool( VOID); __kernel_entry W32KAPI INT APIENTRY NtGdiGetSpoolMessage( DWORD u1, DWORD u2, DWORD u3, DWORD u4); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngAssociateSurface( _In_ HSURF hsurf, _In_ HDEV hdev, _In_ FLONG flHooks); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngEraseSurface( _In_ SURFOBJ *pso, _In_ RECTL *prcl, _In_ ULONG iColor); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiEngCreateBitmap( _In_ SIZEL sizl, _In_ LONG lWidth, _In_ ULONG iFormat, _In_ FLONG fl, _In_opt_ PVOID pvBits); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngDeleteSurface( _In_ HSURF hsurf); __kernel_entry W32KAPI SURFOBJ* APIENTRY NtGdiEngLockSurface( _In_ HSURF hsurf); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiEngUnlockSurface( _In_ SURFOBJ *pso); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngMarkBandingSurface( _In_ HSURF hsurf); __kernel_entry W32KAPI HSURF APIENTRY NtGdiEngCreateDeviceSurface( _In_ DHSURF dhsurf, _In_ SIZEL sizl, _In_ ULONG iFormatCompat); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiEngCreateDeviceBitmap( _In_ DHSURF dhsurf, _In_ SIZEL sizl, _In_ ULONG iFormatCompat); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngCopyBits( _In_ SURFOBJ *psoDst, _In_ SURFOBJ *psoSrc, _In_opt_ CLIPOBJ *pco, _In_opt_ XLATEOBJ *pxlo, _In_ RECTL *prclDst, _In_ POINTL *pptlSrc); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngStretchBlt( _In_ SURFOBJ *psoDest, _In_ SURFOBJ *psoSrc, _In_opt_ SURFOBJ *psoMask, _In_opt_ CLIPOBJ *pco, _In_opt_ XLATEOBJ *pxlo, _In_opt_ COLORADJUSTMENT *pca, _In_ POINTL *pptlHTOrg, _In_ RECTL *prclDest, _In_ RECTL *prclSrc, _In_opt_ POINTL *pptlMask, _In_ ULONG iMode); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngBitBlt( _In_ SURFOBJ *psoTrg, _In_opt_ SURFOBJ *psoSrc, _In_opt_ SURFOBJ *psoMask, _In_opt_ CLIPOBJ *pco, _In_opt_ XLATEOBJ *pxlo, _In_ RECTL *prclTrg, _In_opt_ POINTL *pptlSrc, _In_opt_ POINTL *pptlMask, _In_opt_ BRUSHOBJ *pbo, _In_opt_ POINTL *pptlBrush, _In_ ROP4 rop4); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngPlgBlt( _In_ SURFOBJ *psoTrg, _In_ SURFOBJ *psoSrc, _In_opt_ SURFOBJ *psoMsk, _In_ CLIPOBJ *pco, _In_opt_ XLATEOBJ *pxlo, _In_ COLORADJUSTMENT *pca, _In_ POINTL *pptlBrushOrg, _In_ POINTFIX *pptfx, _In_ RECTL *prcl, _In_opt_ POINTL *pptl, _In_ ULONG iMode); __kernel_entry W32KAPI HPALETTE APIENTRY NtGdiEngCreatePalette( _In_ ULONG iMode, _In_ ULONG cColors, _In_ ULONG *pulColors, _In_ FLONG flRed, _In_ FLONG flGreen, _In_ FLONG flBlue); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngDeletePalette( _In_ HPALETTE hPal); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngStrokePath( _In_ SURFOBJ *pso, _In_ PATHOBJ *ppo, _In_ CLIPOBJ *pco, _In_ XFORMOBJ *pxo, _In_ BRUSHOBJ *pbo, _In_ POINTL *pptlBrushOrg, _In_ LINEATTRS *plineattrs, _In_ MIX mix); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngFillPath( _In_ SURFOBJ *pso, _In_ PATHOBJ *ppo, _In_ CLIPOBJ *pco, _In_ BRUSHOBJ *pbo, _In_ POINTL *pptlBrushOrg, _In_ MIX mix, _In_ FLONG flOptions); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngStrokeAndFillPath( _In_ SURFOBJ *pso, _In_ PATHOBJ *ppo, _In_ CLIPOBJ *pco,IN XFORMOBJ *pxo, _In_ BRUSHOBJ *pboStroke, _In_ LINEATTRS *plineattrs, _In_ BRUSHOBJ *pboFill, _In_ POINTL *pptlBrushOrg, _In_ MIX mix, _In_ FLONG flOptions); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngPaint( _In_ SURFOBJ *pso, _In_ CLIPOBJ *pco, _In_ BRUSHOBJ *pbo, _In_ POINTL *pptlBrushOrg, _In_ MIX mix); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngLineTo( _In_ SURFOBJ *pso, _In_ CLIPOBJ *pco, _In_ BRUSHOBJ *pbo, _In_ LONG x1, _In_ LONG y1, _In_ LONG x2, _In_ LONG y2, _In_ RECTL *prclBounds, _In_ MIX mix); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngAlphaBlend( _In_ SURFOBJ *psoDest, _In_ SURFOBJ *psoSrc, _In_ CLIPOBJ *pco, _In_ XLATEOBJ *pxlo, _In_ RECTL *prclDest, _In_ RECTL *prclSrc, _In_ BLENDOBJ *pBlendObj); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngGradientFill( _In_ SURFOBJ *psoDest, _In_ CLIPOBJ *pco, _In_ XLATEOBJ *pxlo, _In_reads_(nVertex) TRIVERTEX *pVertex, _In_ ULONG nVertex, _In_ /* _In_reads_(nMesh) */ PVOID pMesh, _In_ ULONG nMesh, _In_ RECTL *prclExtents, _In_ POINTL *pptlDitherOrg, _In_ ULONG ulMode); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngTransparentBlt( _In_ SURFOBJ *psoDst, _In_ SURFOBJ *psoSrc, _In_ CLIPOBJ *pco, _In_ XLATEOBJ *pxlo, _In_ RECTL *prclDst, _In_ RECTL *prclSrc, _In_ ULONG iTransColor, _In_ ULONG ulReserved); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngTextOut( _In_ SURFOBJ *pso, _In_ STROBJ *pstro, _In_ FONTOBJ *pfo, _In_ CLIPOBJ *pco, _In_ RECTL *prclExtra, _In_ RECTL *prclOpaque, _In_ BRUSHOBJ *pboFore, _In_ BRUSHOBJ *pboOpaque, _In_ POINTL *pptlOrg, _In_ MIX mix); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngStretchBltROP( _In_ SURFOBJ *psoTrg, _In_ SURFOBJ *psoSrc, _In_ SURFOBJ *psoMask, _In_ CLIPOBJ *pco, _In_ XLATEOBJ *pxlo, _In_ COLORADJUSTMENT *pca, _In_ POINTL *pptlBrushOrg, _In_ RECTL *prclTrg, _In_ RECTL *prclSrc, _In_ POINTL *pptlMask, _In_ ULONG iMode, _In_ BRUSHOBJ *pbo, _In_ ROP4 rop4); __kernel_entry W32KAPI ULONG APIENTRY NtGdiXLATEOBJ_cGetPalette( _In_ XLATEOBJ *pxlo, _In_ ULONG iPal, _In_ ULONG cPal, _Out_writes_(cPal) ULONG *pPal); __kernel_entry W32KAPI ULONG APIENTRY NtGdiCLIPOBJ_cEnumStart( _In_ CLIPOBJ *pco, _In_ BOOL bAll, _In_ ULONG iType, _In_ ULONG iDirection, _In_ ULONG cLimit); __kernel_entry W32KAPI BOOL APIENTRY NtGdiCLIPOBJ_bEnum( _In_ CLIPOBJ *pco, _In_ ULONG cj, _Out_writes_bytes_(cj) ULONG *pul); __kernel_entry W32KAPI PATHOBJ* APIENTRY NtGdiCLIPOBJ_ppoGetPath( _In_ CLIPOBJ *pco); __kernel_entry W32KAPI CLIPOBJ* APIENTRY NtGdiEngCreateClip( VOID); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiEngDeleteClip( _In_ CLIPOBJ*pco); __kernel_entry W32KAPI PVOID APIENTRY NtGdiBRUSHOBJ_pvAllocRbrush( _In_ BRUSHOBJ *pbo, _In_ ULONG cj); __kernel_entry W32KAPI PVOID APIENTRY NtGdiBRUSHOBJ_pvGetRbrush( _In_ BRUSHOBJ *pbo); __kernel_entry W32KAPI ULONG APIENTRY NtGdiBRUSHOBJ_ulGetBrushColor( _In_ BRUSHOBJ *pbo); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiBRUSHOBJ_hGetColorTransform( _In_ BRUSHOBJ *pbo); __kernel_entry W32KAPI BOOL APIENTRY NtGdiXFORMOBJ_bApplyXform( _In_ XFORMOBJ *pxo, _In_ ULONG iMode, _In_ ULONG cPoints, _In_reads_(cPoints) PPOINTL pptIn, _Out_writes_(cPoints) PPOINTL pptOut); __kernel_entry W32KAPI ULONG APIENTRY NtGdiXFORMOBJ_iGetXform( _In_ XFORMOBJ *pxo, _Out_opt_ XFORML *pxform); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiFONTOBJ_vGetInfo( _In_ FONTOBJ *pfo, _In_ ULONG cjSize, _Out_writes_bytes_(cjSize) FONTINFO *pfi); __kernel_entry W32KAPI ULONG APIENTRY NtGdiFONTOBJ_cGetGlyphs( _In_ FONTOBJ *pfo, _In_ ULONG iMode, _In_ ULONG cGlyph, _In_ HGLYPH *phg, _At_((GLYPHDATA**)ppvGlyph, _Outptr_) PVOID *ppvGlyph); __kernel_entry W32KAPI XFORMOBJ* APIENTRY NtGdiFONTOBJ_pxoGetXform( _In_ FONTOBJ *pfo); __kernel_entry W32KAPI IFIMETRICS* APIENTRY NtGdiFONTOBJ_pifi( _In_ FONTOBJ *pfo); __kernel_entry W32KAPI FD_GLYPHSET* APIENTRY NtGdiFONTOBJ_pfdg( _In_ FONTOBJ *pfo); __kernel_entry W32KAPI ULONG APIENTRY NtGdiFONTOBJ_cGetAllGlyphHandles( _In_ FONTOBJ *pfo, _Out_opt_ _Post_count_(return) HGLYPH *phg); __kernel_entry W32KAPI PVOID APIENTRY NtGdiFONTOBJ_pvTrueTypeFontFile( _In_ FONTOBJ *pfo, _Out_ ULONG *pcjFile); __kernel_entry W32KAPI PFD_GLYPHATTR APIENTRY NtGdiFONTOBJ_pQueryGlyphAttrs( _In_ FONTOBJ *pfo, _In_ ULONG iMode); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSTROBJ_bEnum( _In_ STROBJ *pstro, _Out_ ULONG *pc, _Outptr_result_buffer_(*pc) PGLYPHPOS *ppgpos); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSTROBJ_bEnumPositionsOnly( _In_ STROBJ *pstro, _Out_ ULONG *pc, _Outptr_result_buffer_(*pc) PGLYPHPOS *ppgpos); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiSTROBJ_vEnumStart( _Inout_ STROBJ *pstro); __kernel_entry W32KAPI DWORD APIENTRY NtGdiSTROBJ_dwGetCodePage( _In_ STROBJ *pstro); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSTROBJ_bGetAdvanceWidths( _In_ STROBJ*pstro, _In_ ULONG iFirst, _In_ ULONG c, _Out_writes_(c) POINTQF*pptqD); __kernel_entry W32KAPI FD_GLYPHSET* APIENTRY NtGdiEngComputeGlyphSet( _In_ INT nCodePage, _In_ INT nFirstChar, _In_ INT cChars); __kernel_entry W32KAPI ULONG APIENTRY NtGdiXLATEOBJ_iXlate( _In_ XLATEOBJ *pxlo, _In_ ULONG iColor); __kernel_entry W32KAPI HANDLE APIENTRY NtGdiXLATEOBJ_hGetColorTransform( _In_ XLATEOBJ *pxlo); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiPATHOBJ_vGetBounds( _In_ PATHOBJ *ppo, _Out_ PRECTFX prectfx); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPATHOBJ_bEnum( _In_ PATHOBJ *ppo, _Out_ PATHDATA *ppd); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiPATHOBJ_vEnumStart( _In_ PATHOBJ *ppo); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiEngDeletePath( _In_ PATHOBJ *ppo); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiPATHOBJ_vEnumStartClipLines( _In_ PATHOBJ *ppo, _In_ CLIPOBJ *pco, _In_ SURFOBJ *pso, _In_ LINEATTRS *pla); __kernel_entry W32KAPI BOOL APIENTRY NtGdiPATHOBJ_bEnumClipLines( _In_ PATHOBJ *ppo, _In_ ULONG cb, _Out_writes_bytes_(cb) CLIPLINE *pcl); __kernel_entry W32KAPI BOOL APIENTRY NtGdiEngCheckAbort( _In_ SURFOBJ *pso); __kernel_entry W32KAPI DHPDEV APIENTRY NtGdiGetDhpdev( _In_ HDEV hdev); __kernel_entry W32KAPI LONG APIENTRY NtGdiHT_Get8BPPFormatPalette( _Out_opt_ _Post_count_(return) LPPALETTEENTRY pPaletteEntry, _In_ USHORT RedGamma, _In_ USHORT GreenGamma, _In_ USHORT BlueGamma); __kernel_entry W32KAPI LONG APIENTRY NtGdiHT_Get8BPPMaskPalette( _Out_opt_ _Post_count_(return) LPPALETTEENTRY pPaletteEntry, _In_ BOOL Use8BPPMaskPal, _In_ BYTE CMYMask, _In_ USHORT RedGamma, _In_ USHORT GreenGamma, _In_ USHORT BlueGamma); __kernel_entry W32KAPI BOOL APIENTRY NtGdiUpdateTransform( _In_ HDC hdc); __kernel_entry W32KAPI DWORD APIENTRY NtGdiSetLayout( _In_ HDC hdc, _In_ LONG wox, _In_ DWORD dwLayout); __kernel_entry W32KAPI BOOL APIENTRY NtGdiMirrorWindowOrg( _In_ HDC hdc); __kernel_entry W32KAPI LONG APIENTRY NtGdiGetDeviceWidth( _In_ HDC hdc); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiSetUMPDSandboxState( _In_ BOOL bEnabled); __kernel_entry W32KAPI BOOL APIENTRY NtGdiSetPUMPDOBJ( _In_opt_ HUMPD humpd, _In_ BOOL bStoreID, _Inout_opt_ HUMPD *phumpd, _Out_opt_ BOOL *pbWOW64); __kernel_entry W32KAPI BOOL APIENTRY NtGdiBRUSHOBJ_DeleteRbrush( _In_opt_ BRUSHOBJ *pbo, _In_opt_ BRUSHOBJ *pboB); __kernel_entry W32KAPI BOOL APIENTRY NtGdiUMPDEngFreeUserMem( _In_ KERNEL_PVOID *ppv); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiSetBitmapAttributes( _In_ HBITMAP hbm, _In_ DWORD dwFlags); __kernel_entry W32KAPI HBITMAP APIENTRY NtGdiClearBitmapAttributes( _In_ HBITMAP hbm, _In_ DWORD dwFlags); __kernel_entry W32KAPI HBRUSH APIENTRY NtGdiSetBrushAttributes( _In_ HBRUSH hbm, _In_ DWORD dwFlags); __kernel_entry W32KAPI HBRUSH APIENTRY NtGdiClearBrushAttributes( _In_ HBRUSH hbm, _In_ DWORD dwFlags); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDrawStream( _In_ HDC hdcDst, _In_ ULONG cjIn, _In_reads_bytes_(cjIn) VOID *pvIn); __kernel_entry W32KAPI BOOL APIENTRY NtGdiMakeObjectXferable( _In_ HANDLE h, _In_ DWORD dwProcessId); __kernel_entry W32KAPI BOOL APIENTRY NtGdiMakeObjectUnXferable( _In_ HANDLE h); #ifdef PRIVATE_DWM_INTERFACE __kernel_entry W32KAPI BOOL NtGdiSfmRegisterLogicalSurfaceForSignaling( _In_ HLSURF hlsurf, BOOL fSignalOnDirty); __kernel_entry W32KAPI BOOL NtGdiDwmGetHighColorMode( _Out_ DXGI_FORMAT* pdxgiFormat); __kernel_entry W32KAPI BOOL NtGdiDwmSetHighColorMode( _In_ DXGI_FORMAT dxgiFormat); __kernel_entry W32KAPI HANDLE NtGdiDwmCaptureScreen( _In_ const RECT* prcCapture, _In_ DXGI_FORMAT dxgiFormat); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiDdCreateFullscreenSprite( _In_ HDC hdc, _In_ COLORREF crKey, _Out_ HANDLE* phSprite, _Out_ HDC* phdcSprite); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiDdNotifyFullscreenSpriteUpdate( _In_ HDC hdc, _In_ HANDLE hSprite); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiDdDestroyFullscreenSprite( _In_ HDC hdc, _In_ HANDLE hSprite); __kernel_entry W32KAPI ULONG APIENTRY NtGdiDdQueryVisRgnUniqueness( VOID); __kernel_entry W32KAPI BOOL APIENTRY NtGdiHLSurfGetInformation( _In_ HLSURF hlsurf, _In_ HLSURF_INFORMATION_CLASS InformationClass, _In_reads_bytes_opt_(*pcjInfoBuffer) PVOID pvInfoBuffer, _Inout_ PULONG pcjInfoBuffer); __kernel_entry W32KAPI BOOL APIENTRY NtGdiHLSurfSetInformation( _In_ HLSURF hlsurf, _In_ HLSURF_INFORMATION_CLASS InformationClass, _In_reads_bytes_opt_(cjInfoBuffer) PVOID pvInfoBuffer, _In_ ULONG cjInfoBuffer); __kernel_entry W32KAPI BOOL APIENTRY NtGdiDwmCreatedBitmapRemotingOutput( VOID); __kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiGetCurrentDpiInfo( _In_ HMONITOR hmon, _Out_ PVOID pvStruct); #endif /* PRIVATE_DWM_INTERFACE */ #endif /* _NTGDI_ */