ReactOS 0.4.15-dev-7788-g1ad9096
ntgdi.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _LOGCOLORSPACEEXW
 
struct  _POLYPATBLT
 
struct  tagDOWNLOADDESIGNVECTOR
 

Macros

#define _NTGDI_
 
#define W32KAPI   DECLSPEC_ADDRSAFE
 
#define _WINDOWBLT_NOTIFICATION_
 
#define TRACE_SURFACE_ALLOCS   (DBG || 0)
 
#define FL_UFI_PRIVATEFONT   1
 
#define FL_UFI_DESIGNVECTOR_PFF   2
 
#define FL_UFI_MEMORYFONT   4
 
#define ICM_SET_MODE   1
 
#define ICM_SET_CALIBRATE_MODE   2
 
#define ICM_SET_COLOR_MODE   3
 
#define ICM_CHECK_COLOR_MODE   4
 
#define LCSEX_ANSICREATED   1
 
#define LCSEX_TEMPPROFILE   2
 
#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
 
#define TYPE_ENUMFONTS   1
 
#define TYPE_ENUMFONTFAMILIES   2
 
#define TYPE_ENUMFONTFAMILIESEX   3
 

Typedefs

typedef enum _COLORPALETTEINFO COLORPALETTEINFO
 
typedef enum _COLORPALETTEINFOPCOLORPALETTEINFO
 
typedef enum _ICM_DIB_INFO_CMD ICM_DIB_INFO
 
typedef enum _ICM_DIB_INFO_CMDPICM_DIB_INFO
 
typedef struct _LOGCOLORSPACEEXW LOGCOLORSPACEEXW
 
typedef struct _LOGCOLORSPACEEXWPLOGCOLORSPACEEXW
 
typedef struct _POLYPATBLT POLYPATBLT
 
typedef struct _POLYPATBLTPPOLYPATBLT
 
typedef struct tagDOWNLOADDESIGNVECTOR DOWNLOADDESIGNVECTOR
 
typedef struct _DRIVER_INFO_2W DRIVER_INFO_2W
 

Enumerations

enum  _COLORPALETTEINFO { ColorPaletteQuery , ColorPaletteSet }
 
enum  _ICM_DIB_INFO_CMD { IcmQueryBrush , IcmSetBrush }
 

Functions

__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)
 
__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
 
__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)
 
_In_ INT _In_ UINT _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)
 
__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)
 
__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)+((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)
 
__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)
 
__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)
 
__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)
 
_In_ DWORD _In_ DWORD _Out_writes_bytes_to_opt_ (cjBuf, return) PVOID pvBuf
 
__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)
 
__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)
 
__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)
 
__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)
 
__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)
 
__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)
 
__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)
 
 _Out_writes_bytes_ (cj) TMW_INTERNAL *ptm
 
__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)
 
_In_ INT _Out_writes_bytes_opt_ (cj) LPVOID pvOut)
 
__kernel_entry W32KAPI INT APIENTRY NtGdiGetDeviceCaps (_In_ HDC hdc, _In_ INT i)
 
__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)
 
__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)
 
_In_ HBITMAP _In_ UINT _In_ UINT _Out_writes_bytes_opt_ (cjMaxBits) LPBYTE pjBits
 
__kernel_entry W32KAPI INT APIENTRY NtGdiOffsetRgn (_In_ HRGN hrgn, _In_ INT cx, _In_ INT cy)
 
__kernel_entry W32KAPI BOOL APIENTRY NtGdiRectInRegion (_In_ HRGN hrgn, _Inout_ LPRECT prcl)
 
__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)
 
_In_ ULONG _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)
 
__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_ 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)
 

Variables

_In_ UINT u
 
_In_ UINT _In_ DWORD dwIn
 
_In_ UINT _In_ DWORD _Out_ DWORDpdwResult
 
_In_ INT ipfd
 
_In_ INT _In_ UINT cjpfd
 
_Must_inspect_result_ _Out_ LPSIZE psize
 
_Out_ LPRECT prc
 
_Out_ PDWORD pdwOut
 
_In_ DWORD dwTable
 
_In_ DWORD _In_ DWORD dwOffset
 
_In_ DWORD _In_ DWORD _In_ ULONG cjBuf
 
_In_ UINT iPoint
 
_In_ UINT _Out_ PPOINTL pptOut
 
_In_ DWORD iXform
 
_In_ DWORD _Out_ LPXFORM pxf
 
_In_ ULONG cj
 
_In_ INT x
 
_In_ INT _In_ INT y
 
_Out_ PDEVCAPS pDevCaps
 
_In_ HBITMAP hbm
 
_In_ HBITMAP _In_ UINT iStartScan
 
_In_ HBITMAP _In_ UINT _In_ UINT cScans
 
_In_ HBITMAP _In_ UINT _In_ UINT _Inout_ LPBITMAPINFO pbmi
 
_In_ HBITMAP _In_ UINT _In_ UINT _Inout_ LPBITMAPINFO _In_ UINT iUsage
 
_In_ HBITMAP _In_ UINT _In_ UINT _Inout_ LPBITMAPINFO _In_ UINT _In_ UINT cjMaxBits
 
_In_ HBITMAP _In_ UINT _In_ UINT _Inout_ LPBITMAPINFO _In_ UINT _In_ UINT _In_ UINT cjMaxInfo
 
_Out_ LPRECT prcOut
 
_Out_ LPRECT _In_ DWORD f
 
_In_ ULONG cjBuffer
 

Macro Definition Documentation

◆ _NTGDI_

#define _NTGDI_

Definition at line 6 of file ntgdi.h.

◆ _WINDOWBLT_NOTIFICATION_

#define _WINDOWBLT_NOTIFICATION_

Definition at line 13 of file ntgdi.h.

◆ FL_UFI_DESIGNVECTOR_PFF

#define FL_UFI_DESIGNVECTOR_PFF   2

Definition at line 24 of file ntgdi.h.

◆ FL_UFI_MEMORYFONT

#define FL_UFI_MEMORYFONT   4

Definition at line 25 of file ntgdi.h.

◆ FL_UFI_PRIVATEFONT

#define FL_UFI_PRIVATEFONT   1

Definition at line 23 of file ntgdi.h.

◆ GS_HANDOBJ_ALLOC

#define GS_HANDOBJ_ALLOC   3

Definition at line 41 of file ntgdi.h.

◆ GS_HANDOBJ_CURRENT

#define GS_HANDOBJ_CURRENT   1

Definition at line 39 of file ntgdi.h.

◆ GS_HANDOBJ_MAX

#define GS_HANDOBJ_MAX   2

Definition at line 40 of file ntgdi.h.

◆ GS_LOOKASIDE_INFO

#define GS_LOOKASIDE_INFO   4

Definition at line 42 of file ntgdi.h.

◆ GS_NUM_OBJS_ALL

#define GS_NUM_OBJS_ALL   0

Definition at line 38 of file ntgdi.h.

◆ ICM_CHECK_COLOR_MODE

#define ICM_CHECK_COLOR_MODE   4

Definition at line 31 of file ntgdi.h.

◆ ICM_SET_CALIBRATE_MODE

#define ICM_SET_CALIBRATE_MODE   2

Definition at line 29 of file ntgdi.h.

◆ ICM_SET_COLOR_MODE

#define ICM_SET_COLOR_MODE   3

Definition at line 30 of file ntgdi.h.

◆ ICM_SET_MODE

#define ICM_SET_MODE   1

Definition at line 28 of file ntgdi.h.

◆ LCSEX_ANSICREATED

#define LCSEX_ANSICREATED   1

Definition at line 34 of file ntgdi.h.

◆ LCSEX_TEMPPROFILE

#define LCSEX_TEMPPROFILE   2

Definition at line 35 of file ntgdi.h.

◆ TRACE_SURFACE_ALLOCS

#define TRACE_SURFACE_ALLOCS   (DBG || 0)

Definition at line 20 of file ntgdi.h.

◆ TYPE_ENUMFONTFAMILIES

#define TYPE_ENUMFONTFAMILIES   2

Definition at line 46 of file ntgdi.h.

◆ TYPE_ENUMFONTFAMILIESEX

#define TYPE_ENUMFONTFAMILIESEX   3

Definition at line 47 of file ntgdi.h.

◆ TYPE_ENUMFONTS

#define TYPE_ENUMFONTS   1

Definition at line 45 of file ntgdi.h.

◆ W32KAPI

#define W32KAPI   DECLSPEC_ADDRSAFE

Definition at line 9 of file ntgdi.h.

Typedef Documentation

◆ COLORPALETTEINFO

◆ DOWNLOADDESIGNVECTOR

◆ DRIVER_INFO_2W

Definition at line 86 of file ntgdi.h.

◆ ICM_DIB_INFO

◆ LOGCOLORSPACEEXW

◆ PCOLORPALETTEINFO

◆ PICM_DIB_INFO

◆ PLOGCOLORSPACEEXW

◆ POLYPATBLT

◆ PPOLYPATBLT

Enumeration Type Documentation

◆ _COLORPALETTEINFO

Enumerator
ColorPaletteQuery 
ColorPaletteSet 

Definition at line 49 of file ntgdi.h.

50{
enum _COLORPALETTEINFO * PCOLORPALETTEINFO
@ ColorPaletteSet
Definition: ntgdi.h:52
@ ColorPaletteQuery
Definition: ntgdi.h:51
enum _COLORPALETTEINFO COLORPALETTEINFO

◆ _ICM_DIB_INFO_CMD

Enumerator
IcmQueryBrush 
IcmSetBrush 

Definition at line 56 of file ntgdi.h.

57{
@ IcmSetBrush
Definition: ntgdi.h:59
@ IcmQueryBrush
Definition: ntgdi.h:58
enum _ICM_DIB_INFO_CMD * PICM_DIB_INFO
enum _ICM_DIB_INFO_CMD ICM_DIB_INFO

Function Documentation

◆ _Out_writes_bytes_() [1/3]

_Out_writes_bytes_ ( cj  )

◆ _Out_writes_bytes_() [2/3]

_In_ INT _In_ UINT _Out_writes_bytes_ ( cjpfd  )

◆ _Out_writes_bytes_() [3/3]

_Out_writes_bytes_ ( sizeof(GAMMARAMP )

◆ _Out_writes_bytes_opt_() [1/2]

_In_ INT _Out_writes_bytes_opt_ ( cj  )

◆ _Out_writes_bytes_opt_() [2/2]

_In_ HBITMAP _In_ UINT _In_ UINT _Out_writes_bytes_opt_ ( cjMaxBits  )

◆ _Out_writes_bytes_to_opt_() [1/2]

_In_ DWORD _In_ DWORD _Out_writes_bytes_to_opt_ ( cjBuf  ,
return   
)

◆ _Out_writes_bytes_to_opt_() [2/2]

_In_ ULONG _Out_writes_bytes_to_opt_ ( cjBuffer  ,
return   
)

◆ _Success_() [1/2]

_Success_ ( return = FALSE)

Definition at line 1028 of file fsctrl.c.

3189{
3191
3192 PVPB Vpb = Vcb->Vpb;
3193 PVPB OldVpb;
3194
3195 BOOLEAN Remount = FALSE;
3196
3197 PAGED_CODE();
3198
3199 UNREFERENCED_PARAMETER( IrpContext );
3200
3201 //
3202 // Check whether we are looking for a device only Mvcb.
3203 //
3204
3205 for (Link = CdData.VcbQueue.Flink;
3206 Link != &CdData.VcbQueue;
3207 Link = Link->Flink) {
3208
3209 *OldVcb = CONTAINING_RECORD( Link, VCB, VcbLinks );
3210
3211 //
3212 // Skip ourselves.
3213 //
3214
3215 if (Vcb == *OldVcb) { continue; }
3216
3217 //
3218 // Look at the Vpb and state of the previous Vcb.
3219 //
3220
3221 OldVpb = (*OldVcb)->Vpb;
3222
3223 if ((OldVpb != Vpb) &&
3224 (OldVpb->RealDevice == Vpb->RealDevice) &&
3225 ((*OldVcb)->VcbCondition == VcbNotMounted)) {
3226
3227 //
3228 // If the current disk is a raw disk then it can match a previous music or
3229 // raw disk.
3230 //
3231
3232 if (FlagOn( Vcb->VcbState, VCB_STATE_AUDIO_DISK)) {
3233
3234 if (FlagOn( (*OldVcb)->VcbState, VCB_STATE_AUDIO_DISK )) {
3235
3236 //
3237 // If we have both TOC then fail the remount if the lengths
3238 // are different or they don't match.
3239 //
3240
3241 if ((Vcb->TocLength != (*OldVcb)->TocLength) ||
3242 ((Vcb->TocLength != 0) &&
3243 !RtlEqualMemory( Vcb->CdromToc,
3244 (*OldVcb)->CdromToc,
3245 Vcb->TocLength ))) {
3246
3247 continue;
3248 }
3249
3250 Remount = TRUE;
3251 break;
3252 }
3253
3254 //
3255 // The current disk is not a raw disk. Go ahead and compare
3256 // serial numbers, volume label and TOC.
3257 //
3258
3259 }
3260 else if ((OldVpb->SerialNumber == Vpb->SerialNumber) &&
3261 (Vcb->TocLength == (*OldVcb)->TocLength) &&
3262 ((Vcb->TocLength == 0) || RtlEqualMemory( Vcb->CdromToc,
3263 (*OldVcb)->CdromToc,
3264 Vcb->TocLength )) &&
3265 (Vpb->VolumeLabelLength == OldVpb->VolumeLabelLength) &&
3266 (RtlEqualMemory( OldVpb->VolumeLabel,
3267 Vpb->VolumeLabel,
3268 Vpb->VolumeLabelLength ))) {
3269 //
3270 // Remember the old Vcb. Then set the return value to
3271 // TRUE and break.
3272 //
3273
3274 Remount = TRUE;
3275 break;
3276 }
3277 }
3278 }
3279
3280 return Remount;
3281}
#define PAGED_CODE()
unsigned char BOOLEAN
CD_DATA CdData
Definition: cddata.c:42
#define VCB_STATE_AUDIO_DISK
Definition: cdstruc.h:712
@ VcbNotMounted
Definition: cdstruc.h:490
#define TRUE
Definition: types.h:120
#define FALSE
Definition: types.h:117
#define FlagOn(_F, _SF)
Definition: ext2fs.h:179
IN OUT PVCB IN PDEVICE_OBJECT IN PVPB Vpb
Definition: fatprocs.h:1675
#define RtlEqualMemory(a, b, c)
Definition: kdvm.h:18
#define UNREFERENCED_PARAMETER(P)
Definition: ntbasedef.h:317
#define Vcb
Definition: cdprocs.h:1415
LIST_ENTRY VcbQueue
Definition: cdstruc.h:334
Definition: typedefs.h:120
struct _LIST_ENTRY * Flink
Definition: typedefs.h:121
Definition: cdstruc.h:498
Definition: iotypes.h:189
WCHAR VolumeLabel[MAXIMUM_VOLUME_LABEL_LENGTH/sizeof(WCHAR)]
Definition: iotypes.h:198
USHORT VolumeLabelLength
Definition: iotypes.h:193
ULONG SerialNumber
Definition: iotypes.h:196
struct _DEVICE_OBJECT * RealDevice
Definition: iotypes.h:195
#define CONTAINING_RECORD(address, type, field)
Definition: typedefs.h:260
static int Link(const char **args)
Definition: vfdcmd.c:2414

◆ _Success_() [2/2]

_Success_ ( return!  = FALSE)

◆ NtGdiAbortDoc()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiAbortDoc ( _In_ HDC  hdc)

Referenced by AbortDoc().

◆ NtGdiAbortPath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiAbortPath ( _In_ HDC  hdc)

Referenced by AbortPath().

◆ NtGdiAddEmbFontToDC()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiAddEmbFontToDC ( _In_ HDC  hdc,
_In_ PVOID pFontID 
)

◆ NtGdiAddFontMemResourceEx()

__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 
)

Referenced by AddFontMemResourceEx().

◆ NtGdiAddFontResourceW()

__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 
)

◆ NtGdiAddRemoteFontToDC()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiAddRemoteFontToDC ( _In_ HDC  hdc,
_In_reads_bytes_(cjBuffer) PVOID  pvBuffer,
_In_ ULONG  cjBuffer,
_In_opt_ PUNIVERSAL_FONT_ID  pufi 
)

◆ NtGdiAddRemoteMMInstanceToDC()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiAddRemoteMMInstanceToDC ( _In_ HDC  hdc,
_In_reads_bytes_(cjDDV) DOWNLOADDESIGNVECTOR pddv,
_In_ ULONG  cjDDV 
)

◆ NtGdiAlphaBlend()

__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 
)

◆ NtGdiAngleArc()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiAngleArc ( _In_ HDC  hdc,
_In_ INT  x,
_In_ INT  y,
_In_ DWORD  dwRadius,
_In_ DWORD  dwStartAngle,
_In_ DWORD  dwSweepAngle 
)

Referenced by AngleArc().

◆ NtGdiAnyLinkedFonts()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiAnyLinkedFonts ( VOID  )

Definition at line 669 of file stubs.c.

670{
672 return FALSE;
673}
#define UNIMPLEMENTED
Definition: stubs.c:6

◆ NtGdiArcInternal()

__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 
)

Referenced by Arc(), ArcTo(), Chord(), Pie(), and START_TEST().

◆ NtGdiBeginGdiRendering()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiBeginGdiRendering ( _In_ HBITMAP  hbm,
_In_ BOOL  bDiscard,
_In_ PVOID  KernelModeDeviceHandle 
)

◆ NtGdiBeginPath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiBeginPath ( _In_ HDC  hdc)

Referenced by BeginPath().

◆ NtGdiBitBlt()

◆ NtGdiBRUSHOBJ_DeleteRbrush()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiBRUSHOBJ_DeleteRbrush ( _In_opt_ BRUSHOBJ pbo,
_In_opt_ BRUSHOBJ pboB 
)

Definition at line 73 of file umpdstubs.c.

76{
78 return 0;
79}
#define UNIMPLEMENTED
Definition: umpdstubs.c:4

◆ NtGdiBRUSHOBJ_hGetColorTransform()

__kernel_entry W32KAPI HANDLE APIENTRY NtGdiBRUSHOBJ_hGetColorTransform ( _In_ BRUSHOBJ pbo)

Definition at line 32 of file umpdstubs.c.

34{
36 return NULL;
37}
#define NULL
Definition: types.h:112

◆ NtGdiBRUSHOBJ_pvAllocRbrush()

__kernel_entry W32KAPI PVOID APIENTRY NtGdiBRUSHOBJ_pvAllocRbrush ( _In_ BRUSHOBJ pbo,
_In_ ULONG  cj 
)

Definition at line 42 of file umpdstubs.c.

45{
47 return NULL;
48}

◆ NtGdiBRUSHOBJ_pvGetRbrush()

__kernel_entry W32KAPI PVOID APIENTRY NtGdiBRUSHOBJ_pvGetRbrush ( _In_ BRUSHOBJ pbo)

Definition at line 53 of file umpdstubs.c.

55{
57 return NULL;
58}

◆ NtGdiBRUSHOBJ_ulGetBrushColor()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiBRUSHOBJ_ulGetBrushColor ( _In_ BRUSHOBJ pbo)

Definition at line 63 of file umpdstubs.c.

65{
67 return 0;
68}

◆ NtGdiCancelDC()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiCancelDC ( _In_ HDC  hdc)

Referenced by CancelDC().

◆ NtGdiChangeGhostFont()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiChangeGhostFont ( _In_ KERNEL_PVOID pfontID,
_In_ BOOL  bLoad 
)

◆ NtGdiCheckBitmapBits()

__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 
)

◆ NtGdiClearBitmapAttributes()

__kernel_entry W32KAPI HBITMAP APIENTRY NtGdiClearBitmapAttributes ( _In_ HBITMAP  hbm,
_In_ DWORD  dwFlags 
)

Referenced by ClearBitmapAttributes().

◆ NtGdiClearBrushAttributes()

__kernel_entry W32KAPI HBRUSH APIENTRY NtGdiClearBrushAttributes ( _In_ HBRUSH  hbm,
_In_ DWORD  dwFlags 
)

Definition at line 579 of file brush.cpp.

582{
583 PBRUSH pbr;
584 if ( dwFlags & SC_BB_STOCKOBJ )
585 {
587 {
588 pbr = BRUSH::LockAny(hbr);
589 if (pbr == NULL)
590 {
591 ERR("Failed to lock brush %p\n", hbr);
592 return NULL;
593 }
594 if (!pbr->bAllocateBrushAttr())
595 {
596 ERR("Failed to allocate brush attribute\n");
597 }
598 pbr->vUnlock();
599 return hbr;
600 }
601 }
602 return NULL;
603}
#define ERR(fmt,...)
Definition: debug.h:110
#define SC_BB_STOCKOBJ
Definition: ntgdihdl.h:199
Definition: types.h:101
BOOL NTAPI GDIOBJ_ConvertFromStockObj(HGDIOBJ *phObj)
Definition: gdiobj.c:1489
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1176

Referenced by ClearBrushAttributes().

◆ NtGdiCLIPOBJ_bEnum()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiCLIPOBJ_bEnum ( _In_ CLIPOBJ pco,
_In_ ULONG  cj,
_Out_writes_bytes_(cj) ULONG pul 
)

Definition at line 84 of file umpdstubs.c.

88{
90 return FALSE;
91}

◆ NtGdiCLIPOBJ_cEnumStart()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiCLIPOBJ_cEnumStart ( _In_ CLIPOBJ pco,
_In_ BOOL  bAll,
_In_ ULONG  iType,
_In_ ULONG  iDirection,
_In_ ULONG  cLimit 
)

Definition at line 96 of file umpdstubs.c.

102{
104 return 0;
105}

◆ NtGdiCLIPOBJ_ppoGetPath()

__kernel_entry W32KAPI PATHOBJ *APIENTRY NtGdiCLIPOBJ_ppoGetPath ( _In_ CLIPOBJ pco)

Definition at line 110 of file umpdstubs.c.

112{
114 return NULL;
115}

◆ NtGdiCloseFigure()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiCloseFigure ( _In_ HDC  hdc)

Referenced by CloseFigure().

◆ NtGdiColorCorrectPalette()

__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 
)

◆ NtGdiCombineRgn()

◆ NtGdiCombineTransform()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiCombineTransform ( _Out_ LPXFORM  pxfDst,
_In_ LPXFORM  pxfSrc1,
_In_ LPXFORM  pxfSrc2 
)

◆ NtGdiComputeXformCoefficients()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiComputeXformCoefficients ( _In_ HDC  hdc)

◆ NtGdiConsoleTextOut()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiConsoleTextOut ( _In_ HDC  hdc,
_In_ POLYTEXTW lpto,
_In_ UINT  nStrings,
_In_ RECTL prclBounds 
)

◆ NtGdiConvertMetafileRect()

__kernel_entry W32KAPI LONG APIENTRY NtGdiConvertMetafileRect ( _In_ HDC  hdc,
_Inout_ PRECTL  prect 
)

◆ NtGdiCreateBitmap()

__kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateBitmap ( _In_ INT  cx,
_In_ INT  cy,
_In_ UINT  cPlanes,
_In_ UINT  cBPP,
_In_opt_ LPBYTE  pjInit 
)

◆ NtGdiCreateBitmapFromDxSurface()

__kernel_entry W32KAPI HBITMAP APIENTRY NtGdiCreateBitmapFromDxSurface ( _In_ HDC  hdc,
_In_ UINT  uiWidth,
_In_ UINT  uiHeight,
_In_ DWORD  Format,
_In_opt_ HANDLE  hDxSharedSurface 
)

◆ NtGdiCreateBitmapFromDxSurface2()

__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 
)

◆ NtGdiCreateClientObj()

__kernel_entry W32KAPI HANDLE APIENTRY NtGdiCreateClientObj ( _In_ ULONG  ulType)

Referenced by GdiCreateClientObj().

◆ NtGdiCreateColorSpace()

__kernel_entry W32KAPI HANDLE APIENTRY NtGdiCreateColorSpace ( _In_ PLOGCOLORSPACEEXW  pLogColorSpace)

Referenced by IntCreateColorSpaceW().

◆ NtGdiCreateColorTransform()

__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 
)

◆ NtGdiCreateCompatibleBitmap()

◆ NtGdiCreateCompatibleDC()

◆ NtGdiCreateDIBBrush()

__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 
)

Definition at line 423 of file brush.cpp.

430{
431 PVOID pvPackedDIB;
432 FLONG flAttrs;
433 HBITMAP hbm;
434 HBRUSH hbr = NULL;
435
436 if (b8X8)
437 {
438 WARN("b8X8 is not supported, ignoring\n");
439 }
440
441 if (bPen)
442 {
443 WARN("bPen is not supported, ignoring\n");
444 }
445
446 if (uUsage > DIB_PAL_INDICES)
447 {
448 ERR("Invalid uUsage value: %lu\n", uUsage);
450 return NULL;
451 }
452
453 /* Allocate a buffer for the packed DIB */
455 if (pvPackedDIB == NULL)
456 {
457 ERR("Failed to allocate temp buffer of %u bytes\n", cj);
458 return NULL;
459 }
460
461 /* Probe and copy the packed DIB */
463 {
464 ProbeForRead(pv, cj, 1);
465 RtlCopyMemory(pvPackedDIB, pv, cj);
466 }
468 {
469 ERR("Got exception, pv = %p, cj = %lu\n", pv, cj);
470 goto cleanup;
471 }
472 _SEH2_END;
473
474 flAttrs = BR_IS_BITMAP | BR_IS_DIB;
475
476 /* Check what kind of color table we have */
477 if (uUsage == DIB_PAL_COLORS)
478 {
479 /* Remember it and use DIB_PAL_BRUSHHACK to create a "special" palette */
480 flAttrs |= BR_IS_DIBPALCOLORS;
481 uUsage = DIB_PAL_BRUSHHACK;
482 }
483 else if (uUsage == DIB_PAL_INDICES)
484 {
485 /* No color table, bitmap contains device palette indices */
486 flAttrs |= BR_IS_DIBPALINDICES;
487
488 /* FIXME: This makes tests pass, but needs investigation. */
489 flAttrs |= BR_IS_NULL;
490 }
491
492 /* Create a bitmap from the DIB */
493 hbm = GreCreateDIBitmapFromPackedDIB(pvPackedDIB, cj, uUsage);
494 if (hbm == NULL)
495 {
496 ERR("Failed to create bitmap from DIB\n");
497 goto cleanup;
498 }
499
500 /* Call the internal function (will delete hbm on failure) */
501 hbr = CreateBrushInternal(flAttrs, 0, 0, hbm, pvClient);
502
503cleanup:
504
505 ExFreePoolWithTag(pvPackedDIB, GDITAG_TEMP);
506
507 return hbr;
508}
#define DIB_PAL_INDICES
#define WARN(fmt,...)
Definition: debug.h:112
static HBRUSH CreateBrushInternal(_In_ ULONG flAttrs, _In_ COLORREF crColor, _In_ ULONG iHatch, _In_opt_ HBITMAP hbmPattern, _In_opt_ PVOID pvClient)
Definition: brush.cpp:202
#define ERROR_INVALID_PARAMETER
Definition: compat.h:101
static void cleanup(void)
Definition: main.c:1335
#define ExAllocatePoolWithTag(hernya, size, tag)
Definition: env_spec_w32.h:350
#define PagedPool
Definition: env_spec_w32.h:308
VOID NTAPI ProbeForRead(IN CONST VOID *Address, IN SIZE_T Length, IN ULONG Alignment)
Definition: exintrin.c:102
#define _SEH2_END
Definition: filesup.c:22
#define _SEH2_TRY
Definition: filesup.c:19
#define BR_IS_DIB
Definition: brush.h:104
#define BR_IS_DIBPALINDICES
Definition: brush.h:110
#define BR_IS_NULL
Definition: brush.h:105
#define BR_IS_BITMAP
Definition: brush.h:103
#define BR_IS_DIBPALCOLORS
Definition: brush.h:109
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
#define ExFreePoolWithTag(_P, _T)
Definition: module.h:1109
static HBITMAP
Definition: button.c:44
unsigned long FLONG
Definition: ntbasedef.h:366
_In_ HBITMAP hbm
Definition: ntgdi.h:2776
#define _SEH2_EXCEPT(...)
Definition: pseh2_64.h:34
#define RtlCopyMemory(Destination, Source, Length)
Definition: typedefs.h:263
HBITMAP NTAPI GreCreateDIBitmapFromPackedDIB(_In_reads_(cjPackedDIB) PVOID pvPackedDIB, _In_ UINT cjPackedDIB, _In_ ULONG uUsage)
Definition: dibobj.c:1794
#define DIB_PAL_BRUSHHACK
Definition: dib.h:36
#define GDITAG_TEMP
Definition: tags.h:167
_In_ ULONG cj
Definition: winddi.h:3540
ENGAPI VOID APIENTRY EngSetLastError(_In_ ULONG iError)
Definition: error.c:22
#define DIB_PAL_COLORS
Definition: wingdi.h:366

Referenced by CreateDIBPatternBrush(), and CreateDIBPatternBrushPt().

◆ NtGdiCreateDIBitmapInternal()

__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 
)

Referenced by CreateDIBitmap().

◆ NtGdiCreateDIBSection()

__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 
)

Referenced by CreateDIBSection(), and START_TEST().

◆ NtGdiCreateEllipticRgn()

__kernel_entry W32KAPI HRGN APIENTRY NtGdiCreateEllipticRgn ( _In_ INT  xLeft,
_In_ INT  yTop,
_In_ INT  xRight,
_In_ INT  yBottom 
)

◆ NtGdiCreateHalftonePalette()

__kernel_entry W32KAPI HPALETTE APIENTRY NtGdiCreateHalftonePalette ( _In_ HDC  hdc)

◆ NtGdiCreateHatchBrushInternal()

__kernel_entry W32KAPI HBRUSH APIENTRY NtGdiCreateHatchBrushInternal ( _In_ ULONG  ulStyle,
_In_ COLORREF  clrr,
_In_ BOOL  bPen 
)

Definition at line 357 of file brush.cpp.

361{
362 FLONG flAttr;
363
364 if (bPen)
365 {
366 WARN("bPen is not supported, ignoring\n");
367 }
368
369 /* Check what kind if hatch style this is */
370 if (iHatch < HS_DDI_MAX)
371 {
372 flAttr = BR_IS_HATCH;
373 }
374 else if (iHatch < HS_API_MAX)
375 {
376 flAttr = BR_IS_SOLID;
377 }
378 else
379 {
380 ERR("Invalid iHatch: %lu\n", iHatch);
381 return NULL;
382 }
383
384 /* Call the internal function */
385 return CreateBrushInternal(flAttr, crColor, iHatch, NULL, NULL);
386}
#define BR_IS_SOLID
Definition: brush.h:101
#define BR_IS_HATCH
Definition: brush.h:102
#define HS_DDI_MAX
Definition: winddi.h:3954
_Inout_ SURFOBJ _In_opt_ SURFOBJ _In_opt_ SURFOBJ _In_opt_ XLATEOBJ _In_ ULONG iHatch
Definition: winddi.h:3963
#define HS_API_MAX
Definition: wingdi.h:582

Referenced by CreateBrushIndirect(), and CreateHatchBrush().

◆ NtGdiCreateMetafileDC()

__kernel_entry W32KAPI HDC APIENTRY NtGdiCreateMetafileDC ( _In_ HDC  hdc)

Referenced by alloc_dc_ptr().

◆ NtGdiCreatePaletteInternal()

__kernel_entry W32KAPI HPALETTE APIENTRY NtGdiCreatePaletteInternal ( _In_reads_bytes_(cEntries *4+4) LPLOGPALETTE  pLogPal,
_In_ UINT  cEntries 
)

Referenced by CreatePalette().

◆ NtGdiCreatePatternBrushInternal()

__kernel_entry W32KAPI HBRUSH APIENTRY NtGdiCreatePatternBrushInternal ( _In_ HBITMAP  hbm,
_In_ BOOL  bPen,
_In_ BOOL  b8X8 
)

Definition at line 391 of file brush.cpp.

395{
396 HBITMAP hbmPattern;
397
398 if (b8X8)
399 {
400 WARN("b8X8 is not supported, ignoring\n");
401 }
402
403 if (bPen)
404 {
405 WARN("bPen is not supported, ignoring\n");
406 }
407
408 /* Copy the bitmap */
409 hbmPattern = BITMAP_CopyBitmap(hbmClient);
410 if (hbmPattern == NULL)
411 {
412 ERR("Failed to copy the bitmap %p\n", hbmPattern);
413 return NULL;
414 }
415
416 /* Call the internal function (will delete hbmPattern on failure) */
417 return CreateBrushInternal(BR_IS_BITMAP, 0, 0, hbmPattern, hbmClient);
418}
HBITMAP FASTCALL BITMAP_CopyBitmap(HBITMAP hBitmap)
Definition: bitmaps.c:714

Referenced by CreateBrushIndirect(), and CreatePatternBrush().

◆ NtGdiCreatePen()

__kernel_entry W32KAPI HPEN APIENTRY NtGdiCreatePen ( _In_ INT  iPenStyle,
_In_ INT  iPenWidth,
_In_ COLORREF  cr,
_In_opt_ HBRUSH  hbr 
)

Referenced by CreatePen(), and TEXT_DrawUnderscore().

◆ NtGdiCreateRectRgn()

◆ NtGdiCreateRoundRectRgn()

__kernel_entry W32KAPI HRGN APIENTRY NtGdiCreateRoundRectRgn ( _In_ INT  xLeft,
_In_ INT  yTop,
_In_ INT  xRight,
_In_ INT  yBottom,
_In_ INT  xWidth,
_In_ INT  yHeight 
)

◆ NtGdiCreateServerMetaFile()

__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 
)

◆ NtGdiCreateSolidBrush()

__kernel_entry W32KAPI HBRUSH APIENTRY NtGdiCreateSolidBrush ( _In_ COLORREF  cr,
_In_opt_ HBRUSH  hbr 
)

Definition at line 341 of file brush.cpp.

344{
345 if (hbr != NULL)
346 {
347 WARN("hbr is not supported, ignoring\n");
348 }
349
350 /* Call the internal function */
351 return CreateBrushInternal(BR_IS_SOLID, crColor, 0, NULL, NULL);
352}

Referenced by CreateBrushIndirect(), and CreateSolidBrush().

◆ NtGdiD3dContextCreate()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiD3dContextCreate ( _In_ HANDLE  hDirectDrawLocal,
_In_ HANDLE  hSurfColor,
_In_ HANDLE  hSurfZ,
_Inout_ D3DNTHAL_CONTEXTCREATEI pdcci 
)

Referenced by D3dContextCreate().

◆ NtGdiD3dContextDestroy()

◆ NtGdiD3dContextDestroyAll()

◆ NtGdiD3dDrawPrimitives2()

__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 
)

◆ NtGdiD3dValidateTextureStageState()

◆ NtGdiDdAddAttachedSurface()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdAddAttachedSurface ( _In_ HANDLE  hSurface,
_In_ HANDLE  hSurfaceAttached,
_Inout_ PDD_ADDATTACHEDSURFACEDATA  puAddAttachedSurfaceData 
)

Referenced by DdAddAttachedSurface().

◆ NtGdiDdAlphaBlt()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdAlphaBlt ( _In_ HANDLE  hSurfaceDest,
_In_opt_ HANDLE  hSurfaceSrc,
_Inout_ PDD_BLTDATA  puBltData 
)

Referenced by DdAlphaBlt().

◆ NtGdiDdAttachSurface()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDdAttachSurface ( _In_ HANDLE  hSurfaceFrom,
_In_ HANDLE  hSurfaceTo 
)

Referenced by DdAttachSurface().

◆ NtGdiDdBeginMoCompFrame()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdBeginMoCompFrame ( _In_ HANDLE  hMoComp,
_Inout_ PDD_BEGINMOCOMPFRAMEDATA  puBeginFrameData 
)

◆ NtGdiDdBlt()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdBlt ( _In_ HANDLE  hSurfaceDest,
_In_ HANDLE  hSurfaceSrc,
_Inout_ PDD_BLTDATA  puBltData 
)

Referenced by DdBlt().

◆ NtGdiDdCanCreateD3DBuffer()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdCanCreateD3DBuffer ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_CANCREATESURFACEDATA  puCanCreateSurfaceData 
)

Referenced by DdCanCreateD3DBuffer().

◆ NtGdiDdCanCreateSurface()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdCanCreateSurface ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_CANCREATESURFACEDATA  puCanCreateSurfaceData 
)

Referenced by DdCanCreateSurface().

◆ NtGdiDdColorControl()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdColorControl ( _In_ HANDLE  hSurface,
_Inout_ PDD_COLORCONTROLDATA  puColorControlData 
)

Referenced by DdColorControl().

◆ NtGdiDdCreateD3DBuffer()

__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 
)

Referenced by DdCreateD3DBuffer().

◆ NtGdiDdCreateDirectDrawObject()

__kernel_entry W32KAPI HANDLE APIENTRY NtGdiDdCreateDirectDrawObject ( _In_ HDC  hdc)

◆ NtGdiDdCreateMoComp()

__kernel_entry W32KAPI HANDLE APIENTRY NtGdiDdCreateMoComp ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_CREATEMOCOMPDATA  puCreateMoCompData 
)

◆ NtGdiDdCreateSurface()

__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 
)

Referenced by DdCreateSurface().

◆ NtGdiDdCreateSurfaceEx()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdCreateSurfaceEx ( _In_ HANDLE  hDirectDraw,
_In_ HANDLE  hSurface,
_In_ DWORD  dwSurfaceHandle 
)

Referenced by DdCreateSurfaceEx().

◆ NtGdiDdCreateSurfaceObject()

__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 
)

Referenced by bDDCreateSurface().

◆ NtGdiDdDDICreateDCFromMemory()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDDICreateDCFromMemory ( _Inout_ D3DKMT_CREATEDCFROMMEMORY desc)

◆ NtGdiDdDDIDestroyDCFromMemory()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDDIDestroyDCFromMemory ( _In_ CONST D3DKMT_DESTROYDCFROMMEMORY desc)

◆ NtGdiDdDeleteDirectDrawObject()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDdDeleteDirectDrawObject ( _In_ HANDLE  hDirectDrawLocal)

◆ NtGdiDdDeleteSurfaceObject()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDdDeleteSurfaceObject ( _In_ HANDLE  hSurface)

◆ NtGdiDdDestroyD3DBuffer()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDestroyD3DBuffer ( _In_ HANDLE  hSurface)

Referenced by DdDestroyD3DBuffer().

◆ NtGdiDdDestroyMoComp()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDestroyMoComp ( _In_ HANDLE  hMoComp,
_Inout_ PDD_DESTROYMOCOMPDATA  puDestroyMoCompData 
)

◆ NtGdiDdDestroySurface()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdDestroySurface ( _In_ HANDLE  hSurface,
_In_ BOOL  bRealDestroy 
)

Referenced by DdDestroySurface().

◆ NtGdiDdEndMoCompFrame()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdEndMoCompFrame ( _In_ HANDLE  hMoComp,
_Inout_ PDD_ENDMOCOMPFRAMEDATA  puEndFrameData 
)

◆ NtGdiDdFlip()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdFlip ( _In_ HANDLE  hSurfaceCurrent,
_In_ HANDLE  hSurfaceTarget,
_In_ HANDLE  hSurfaceCurrentLeft,
_In_ HANDLE  hSurfaceTargetLeft,
_Inout_ PDD_FLIPDATA  puFlipData 
)

Referenced by DdFlip().

◆ NtGdiDdFlipToGDISurface()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdFlipToGDISurface ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_FLIPTOGDISURFACEDATA  puFlipToGDISurfaceData 
)

Referenced by DdFlipToGDISurface().

◆ NtGdiDdGetAvailDriverMemory()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetAvailDriverMemory ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETAVAILDRIVERMEMORYDATA  puGetAvailDriverMemoryData 
)

Referenced by DdGetAvailDriverMemory().

◆ NtGdiDdGetBltStatus()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetBltStatus ( _In_ HANDLE  hSurface,
_Inout_ PDD_GETBLTSTATUSDATA  puGetBltStatusData 
)

Referenced by DdGetBltStatus().

◆ NtGdiDdGetDC()

__kernel_entry W32KAPI HDC APIENTRY NtGdiDdGetDC ( _In_ HANDLE  hSurface,
_In_ PALETTEENTRY puColorTable 
)

Referenced by DdGetDC().

◆ NtGdiDdGetDriverInfo()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetDriverInfo ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETDRIVERINFODATA  puGetDriverInfoData 
)

Referenced by DdGetDriverInfo().

◆ NtGdiDdGetDriverState()

Referenced by DdGetDriverInfo().

◆ NtGdiDdGetDxHandle()

__kernel_entry W32KAPI HANDLE APIENTRY NtGdiDdGetDxHandle ( _In_opt_ HANDLE  hDirectDraw,
_In_opt_ HANDLE  hSurface,
_In_ BOOL  bRelease 
)

Referenced by DdGetDxHandle().

◆ NtGdiDdGetFlipStatus()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetFlipStatus ( _In_ HANDLE  hSurface,
_Inout_ PDD_GETFLIPSTATUSDATA  puGetFlipStatusData 
)

Referenced by DdGetFlipStatus().

◆ NtGdiDdGetInternalMoCompInfo()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetInternalMoCompInfo ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETINTERNALMOCOMPDATA  puGetInternalData 
)

◆ NtGdiDdGetMoCompBuffInfo()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetMoCompBuffInfo ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETMOCOMPCOMPBUFFDATA  puGetBuffData 
)

◆ NtGdiDdGetMoCompFormats()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetMoCompFormats ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETMOCOMPFORMATSDATA  puGetMoCompFormatsData 
)

◆ NtGdiDdGetMoCompGuids()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetMoCompGuids ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETMOCOMPGUIDSDATA  puGetMoCompGuidsData 
)

◆ NtGdiDdGetScanLine()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdGetScanLine ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETSCANLINEDATA  puGetScanLineData 
)

Referenced by DdGetScanLine().

◆ NtGdiDdLock()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdLock ( _In_ HANDLE  hSurface,
_Inout_ PDD_LOCKDATA  puLockData,
_In_ HDC  hdcClip 
)

Referenced by DdLock().

◆ NtGdiDdLockD3D()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdLockD3D ( _In_ HANDLE  hSurface,
_Inout_ PDD_LOCKDATA  puLockData 
)

Referenced by DdLockD3D().

◆ NtGdiDdQueryDirectDrawObject()

__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 
)

◆ NtGdiDdQueryMoCompStatus()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdQueryMoCompStatus ( _In_ HANDLE  hMoComp,
_Inout_ PDD_QUERYMOCOMPSTATUSDATA  puQueryMoCompStatusData 
)

◆ NtGdiDdReenableDirectDrawObject()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDdReenableDirectDrawObject ( _In_ HANDLE  hDirectDrawLocal,
_Inout_ BOOL pubNewMode 
)

◆ NtGdiDdReleaseDC()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDdReleaseDC ( _In_ HANDLE  hSurface)

Referenced by DdReleaseDC().

◆ NtGdiDdRenderMoComp()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdRenderMoComp ( _In_ HANDLE  hMoComp,
_Inout_ PDD_RENDERMOCOMPDATA  puRenderMoCompData 
)

◆ NtGdiDdResetVisrgn()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDdResetVisrgn ( _In_ HANDLE  hSurface,
_In_ HWND  hwnd 
)

Referenced by DdResetVisrgn().

◆ NtGdiDdSetColorKey()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdSetColorKey ( _In_ HANDLE  hSurface,
_Inout_ PDD_SETCOLORKEYDATA  puSetColorKeyData 
)

Referenced by DdSetColorKey().

◆ NtGdiDdSetExclusiveMode()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdSetExclusiveMode ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_SETEXCLUSIVEMODEDATA  puSetExclusiveModeData 
)

Referenced by DdSetExclusiveMode().

◆ NtGdiDdSetGammaRamp()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDdSetGammaRamp ( _In_ HANDLE  hDirectDraw,
_In_ HDC  hdc,
_In_reads_bytes_(sizeof(GAMMARAMP)) LPVOID  lpGammaRamp 
)

Referenced by DdSetGammaRamp().

◆ NtGdiDdSetOverlayPosition()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdSetOverlayPosition ( _In_ HANDLE  hSurfaceSource,
_In_ HANDLE  hSurfaceDestination,
_Inout_ PDD_SETOVERLAYPOSITIONDATA  puSetOverlayPositionData 
)

Referenced by DdSetOverlayPosition().

◆ NtGdiDdUnattachSurface()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiDdUnattachSurface ( _In_ HANDLE  hSurface,
_In_ HANDLE  hSurfaceAttached 
)

Referenced by DdUnattachSurface().

◆ NtGdiDdUnlock()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdUnlock ( _In_ HANDLE  hSurface,
_Inout_ PDD_UNLOCKDATA  puUnlockData 
)

Referenced by DdUnlock(), and DdUnlockD3D().

◆ NtGdiDdUnlockD3D()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdUnlockD3D ( _In_ HANDLE  hSurface,
_Inout_ PDD_UNLOCKDATA  puUnlockData 
)

◆ NtGdiDdUpdateOverlay()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdUpdateOverlay ( _In_ HANDLE  hSurfaceDestination,
_In_ HANDLE  hSurfaceSource,
_Inout_ PDD_UPDATEOVERLAYDATA  puUpdateOverlayData 
)

Referenced by DdUpdateOverlay().

◆ NtGdiDdWaitForVerticalBlank()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDdWaitForVerticalBlank ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_WAITFORVERTICALBLANKDATA  puWaitForVerticalBlankData 
)

Referenced by DdWaitForVerticalBlank().

◆ NtGdiDeleteClientObj()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteClientObj ( _In_ HANDLE  h)

◆ NtGdiDeleteColorSpace()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteColorSpace ( _In_ HANDLE  hColorSpace)

Referenced by DeleteColorSpace(), and DeleteObject().

◆ NtGdiDeleteColorTransform()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteColorTransform ( _In_ HDC  hdc,
_In_ HANDLE  hColorTransform 
)

◆ NtGdiDeleteObjectApp()

◆ NtGdiDoBanding()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDoBanding ( _In_ HDC  hdc,
_In_ BOOL  bStart,
_Out_ POINTL pptl,
_Out_ PSIZE  pSize 
)

◆ NtGdiDoPalette()

__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 
)

Definition at line 1072 of file palette.c.

1080{
1081 LONG ret;
1082 LPVOID pEntries = NULL;
1083 SIZE_T cjSize;
1084
1085 if (pUnsafeEntries)
1086 {
1087 if (cEntries == 0)
1088 return 0;
1089
1090 cjSize = cEntries * sizeof(PALETTEENTRY);
1092 if (!pEntries)
1093 return 0;
1094
1095 if (bInbound)
1096 {
1097 _SEH2_TRY
1098 {
1099 ProbeForRead(pUnsafeEntries, cjSize, 1);
1100 memcpy(pEntries, pUnsafeEntries, cjSize);
1101 }
1103 {
1104 ExFreePoolWithTag(pEntries, TAG_PALETTE);
1105 _SEH2_YIELD(return 0);
1106 }
1107 _SEH2_END
1108 }
1109 else
1110 {
1111 /* Zero it out, so we don't accidentally leak kernel data */
1112 RtlZeroMemory(pEntries, cjSize);
1113 }
1114 }
1115
1116 ret = 0;
1117 switch(iFunc)
1118 {
1119 case GdiPalAnimate:
1120 if (pEntries)
1121 ret = IntAnimatePalette((HPALETTE)hObj, iStart, cEntries, (CONST PPALETTEENTRY)pEntries);
1122 break;
1123
1124 case GdiPalSetEntries:
1125 if (pEntries)
1126 ret = IntSetPaletteEntries((HPALETTE)hObj, iStart, cEntries, (CONST LPPALETTEENTRY)pEntries);
1127 break;
1128
1129 case GdiPalGetEntries:
1130 ret = IntGetPaletteEntries((HPALETTE)hObj, iStart, cEntries, (LPPALETTEENTRY)pEntries);
1131 break;
1132
1135 break;
1136
1138 if (pEntries)
1139 ret = GreGetSetColorTable((HDC)hObj, iStart, cEntries, (RGBQUAD*)pEntries, TRUE);
1140 break;
1141
1143 if (pEntries)
1144 ret = GreGetSetColorTable((HDC)hObj, iStart, cEntries, (RGBQUAD*)pEntries, FALSE);
1145 break;
1146 }
1147
1148 if (pEntries)
1149 {
1150 if (!bInbound && (ret > 0))
1151 {
1152 cjSize = min(cEntries, ret) * sizeof(PALETTEENTRY);
1153 _SEH2_TRY
1154 {
1155 ProbeForWrite(pUnsafeEntries, cjSize, 1);
1156 memcpy(pUnsafeEntries, pEntries, cjSize);
1157 }
1159 {
1160 ret = 0;
1161 }
1162 _SEH2_END
1163 }
1164 ExFreePoolWithTag(pEntries, TAG_PALETTE);
1165 }
1166
1167 return ret;
1168}
ULONG RGBQUAD
Definition: precomp.h:50
VOID NTAPI ProbeForWrite(IN PVOID Address, IN SIZE_T Length, IN ULONG Alignment)
Definition: exintrin.c:143
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
static HDC
Definition: imagelist.c:92
#define min(a, b)
Definition: monoChain.cc:55
@ GdiPalSetColorTable
Definition: ntgdityp.h:32
@ GdiPalGetColorTable
Definition: ntgdityp.h:33
@ GdiPalSetEntries
Definition: ntgdityp.h:29
@ GdiPalAnimate
Definition: ntgdityp.h:28
@ GdiPalGetEntries
Definition: ntgdityp.h:30
@ GdiPalGetSystemEntries
Definition: ntgdityp.h:31
#define CONST
Definition: pedump.c:81
long LONG
Definition: pedump.c:60
#define _SEH2_YIELD(__stmt)
Definition: pseh2_64.h:162
ULONG_PTR SIZE_T
Definition: typedefs.h:80
#define RtlZeroMemory(Destination, Length)
Definition: typedefs.h:262
int ret
ULONG APIENTRY GreGetSetColorTable(HDC hdc, ULONG iStartIndex, ULONG cEntries, RGBQUAD *prgbColors, BOOL bSet)
Definition: palette.c:990
UINT APIENTRY IntGetPaletteEntries(HPALETTE hpal, UINT StartIndex, UINT Entries, LPPALETTEENTRY pe)
Definition: palette.c:850
UINT APIENTRY IntSetPaletteEntries(HPALETTE hpal, UINT Start, UINT Entries, CONST LPPALETTEENTRY pe)
Definition: palette.c:955
UINT APIENTRY IntGetSystemPaletteEntries(HDC hDC, UINT StartIndex, UINT Entries, LPPALETTEENTRY pe)
Definition: palette.c:889
UINT APIENTRY IntAnimatePalette(HPALETTE hPal, UINT StartIndex, UINT NumEntries, CONST PPALETTEENTRY PaletteColors)
Definition: palette.c:781
#define TAG_PALETTE
Definition: tags.h:26
_In_ ULONG cjSize
Definition: winddi.h:3634
struct tagPALETTEENTRY PALETTEENTRY
_In_ UINT _In_ UINT cEntries
Definition: wingdi.h:3621
_In_ UINT iStart
Definition: wingdi.h:3620

Referenced by AnimatePalette(), GetDIBColorTable(), GetPaletteEntries(), GetSystemPaletteEntries(), SetDIBColorTable(), SetPaletteEntries(), Test_NtGdiDoPalette_GdiPalAnimate(), Test_NtGdiDoPalette_GdiPalGetEntries(), Test_NtGdiDoPalette_GdiPalSetEntries(), and Test_NtGdiDoPalette_SetDIBColorTable().

◆ NtGdiDrawEscape()

__kernel_entry W32KAPI INT APIENTRY NtGdiDrawEscape ( _In_ HDC  hdc,
_In_ INT  iEsc,
_In_ INT  cjIn,
_In_reads_bytes_opt_(cjIn) LPSTR  pjIn 
)

Referenced by DrawEscape().

◆ NtGdiDrawStream()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiDrawStream ( _In_ HDC  hdcDst,
_In_ ULONG  cjIn,
_In_reads_bytes_(cjIn) VOID pvIn 
)

◆ NtGdiDvpAcquireNotification()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpAcquireNotification ( _In_ HANDLE  hVideoPort,
_Inout_ HANDLE hEvent,
_In_ LPDDVIDEOPORTNOTIFY  pNotify 
)

◆ NtGdiDvpCanCreateVideoPort()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpCanCreateVideoPort ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_CANCREATEVPORTDATA  puCanCreateVPortData 
)

Referenced by DvpCanCreateVideoPort().

◆ NtGdiDvpColorControl()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpColorControl ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_VPORTCOLORDATA  puVPortColorData 
)

Referenced by DvpColorControl().

◆ NtGdiDvpCreateVideoPort()

__kernel_entry W32KAPI HANDLE APIENTRY NtGdiDvpCreateVideoPort ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_CREATEVPORTDATA  puCreateVPortData 
)

Referenced by DvpCreateVideoPort().

◆ NtGdiDvpDestroyVideoPort()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpDestroyVideoPort ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_DESTROYVPORTDATA  puDestroyVPortData 
)

Referenced by DvpDestroyVideoPort().

◆ NtGdiDvpFlipVideoPort()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpFlipVideoPort ( _In_ HANDLE  hVideoPort,
_In_ HANDLE  hDDSurfaceCurrent,
_In_ HANDLE  hDDSurfaceTarget,
_Inout_ PDD_FLIPVPORTDATA  puFlipVPortData 
)

Referenced by DvpFlipVideoPort().

◆ NtGdiDvpGetVideoPortBandwidth()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortBandwidth ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_GETVPORTBANDWIDTHDATA  puGetVPortBandwidthData 
)

◆ NtGdiDvpGetVideoPortConnectInfo()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortConnectInfo ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETVPORTCONNECTDATA  puGetVPortConnectData 
)

◆ NtGdiDvpGetVideoPortField()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortField ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_GETVPORTFIELDDATA  puGetVPortFieldData 
)

Referenced by DvpGetVideoPortField().

◆ NtGdiDvpGetVideoPortFlipStatus()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortFlipStatus ( _In_ HANDLE  hDirectDraw,
_Inout_ PDD_GETVPORTFLIPSTATUSDATA  puGetVPortFlipStatusData 
)

◆ NtGdiDvpGetVideoPortInputFormats()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortInputFormats ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_GETVPORTINPUTFORMATDATA  puGetVPortInputFormatData 
)

◆ NtGdiDvpGetVideoPortLine()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortLine ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_GETVPORTLINEDATA  puGetVPortLineData 
)

◆ NtGdiDvpGetVideoPortOutputFormats()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoPortOutputFormats ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_GETVPORTOUTPUTFORMATDATA  puGetVPortOutputFormatData 
)

◆ NtGdiDvpGetVideoSignalStatus()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpGetVideoSignalStatus ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_GETVPORTSIGNALDATA  puGetVPortSignalData 
)

Referenced by DvpGetVideoSignalStatus().

◆ NtGdiDvpReleaseNotification()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpReleaseNotification ( _In_ HANDLE  hVideoPort,
_In_ HANDLE  hEvent 
)

◆ NtGdiDvpUpdateVideoPort()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpUpdateVideoPort ( _In_ HANDLE  hVideoPort,
_In_ HANDLE phSurfaceVideo,
_In_ HANDLE phSurfaceVbi,
_Inout_ PDD_UPDATEVPORTDATA  puUpdateVPortData 
)

Referenced by DvpUpdateVideoPort().

◆ NtGdiDvpWaitForVideoPortSync()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiDvpWaitForVideoPortSync ( _In_ HANDLE  hVideoPort,
_Inout_ PDD_WAITFORVPORTSYNCDATA  puWaitForVPortSyncData 
)

Referenced by DvpWaitForVideoPortSync().

◆ NtGdiDxgGenericThunk()

__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 
)

◆ NtGdiEllipse()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEllipse ( _In_ HDC  hdc,
_In_ INT  xLeft,
_In_ INT  yTop,
_In_ INT  xRight,
_In_ INT  yBottom 
)

Referenced by Ellipse().

◆ NtGdiEnableEudc()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEnableEudc ( _In_ BOOL  b)

◆ NtGdiEndDoc()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEndDoc ( _In_ HDC  hdc)

Referenced by EndDoc().

◆ NtGdiEndGdiRendering()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEndGdiRendering ( _In_ HBITMAP  hbm,
_In_ BOOL  bDiscard,
_Out_ BOOL pbDeviceRemoved,
_In_ PVOID  KernelModeDeviceHandle 
)

◆ NtGdiEndPage()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEndPage ( _In_ HDC  hdc)

Referenced by IntEndPage().

◆ NtGdiEndPath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEndPath ( _In_ HDC  hdc)

Referenced by EndPath().

◆ NtGdiEngAlphaBlend()

__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 
)

◆ NtGdiEngAssociateSurface()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEngAssociateSurface ( _In_ HSURF  hsurf,
_In_ HDEV  hdev,
_In_ FLONG  flHooks 
)

Definition at line 120 of file umpdstubs.c.

124{
126 return FALSE;
127}

◆ NtGdiEngBitBlt()

__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 
)

◆ NtGdiEngCheckAbort()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEngCheckAbort ( _In_ SURFOBJ pso)

Definition at line 132 of file umpdstubs.c.

134{
136 return FALSE;
137}

◆ NtGdiEngComputeGlyphSet()

__kernel_entry W32KAPI FD_GLYPHSET *APIENTRY NtGdiEngComputeGlyphSet ( _In_ INT  nCodePage,
_In_ INT  nFirstChar,
_In_ INT  cChars 
)

Definition at line 142 of file umpdstubs.c.

146{
148 return NULL;
149}

Referenced by EngComputeGlyphSet().

◆ NtGdiEngCopyBits()

__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 
)

Definition at line 154 of file umpdstubs.c.

161{
163 return FALSE;
164}

◆ NtGdiEngCreateBitmap()

__kernel_entry W32KAPI HBITMAP APIENTRY NtGdiEngCreateBitmap ( _In_ SIZEL  sizl,
_In_ LONG  lWidth,
_In_ ULONG  iFormat,
_In_ FLONG  fl,
_In_opt_ PVOID  pvBits 
)

Definition at line 169 of file umpdstubs.c.

175{
177 return NULL;
178}

◆ NtGdiEngCreateClip()

__kernel_entry W32KAPI CLIPOBJ *APIENTRY NtGdiEngCreateClip ( VOID  )

Definition at line 183 of file umpdstubs.c.

185{
187 return NULL;
188}

◆ NtGdiEngCreateDeviceBitmap()

__kernel_entry W32KAPI HBITMAP APIENTRY NtGdiEngCreateDeviceBitmap ( _In_ DHSURF  dhsurf,
_In_ SIZEL  sizl,
_In_ ULONG  iFormatCompat 
)

Definition at line 193 of file umpdstubs.c.

197{
199 return NULL;
200}

◆ NtGdiEngCreateDeviceSurface()

__kernel_entry W32KAPI HSURF APIENTRY NtGdiEngCreateDeviceSurface ( _In_ DHSURF  dhsurf,
_In_ SIZEL  sizl,
_In_ ULONG  iFormatCompat 
)

Definition at line 205 of file umpdstubs.c.

209{
211 return NULL;
212}

◆ NtGdiEngCreatePalette()

__kernel_entry W32KAPI HPALETTE APIENTRY NtGdiEngCreatePalette ( _In_ ULONG  iMode,
_In_ ULONG  cColors,
_In_ ULONG pulColors,
_In_ FLONG  flRed,
_In_ FLONG  flGreen,
_In_ FLONG  flBlue 
)

Definition at line 1267 of file palette.c.

1274{
1275 HPALETTE hPal = NULL;
1276 ULONG *pulcSafe, ulColors[WINDDI_MAXSETPALETTECOLORS];
1277
1278 if ( cColors > MAX_PALCOLORS ) return NULL;
1279
1280 if ( cColors <= WINDDI_MAXSETPALETTECOLORS )
1281 {
1282 pulcSafe = ulColors;
1283 }
1284 else
1285 {
1286 pulcSafe = ExAllocatePoolWithTag(PagedPool, cColors * sizeof(ULONG), GDITAG_UMPD );
1287 }
1288
1289 _SEH2_TRY
1290 {
1291 ProbeForRead( pulColors, cColors * sizeof(ULONG), 1);
1292 RtlCopyMemory( pulcSafe, pulColors, cColors * sizeof(ULONG) );
1293 }
1295 {
1297 if ( cColors > WINDDI_MAXSETPALETTECOLORS ) ExFreePoolWithTag( pulcSafe, GDITAG_UMPD );
1298 _SEH2_YIELD(return hPal);
1299 }
1300 _SEH2_END;
1301
1302 hPal = EngCreatePalette( iMode/*|PAL_SETPOWNER*/, cColors, pulcSafe, flRed, flGreen, flBlue );
1303
1304 if ( cColors > WINDDI_MAXSETPALETTECOLORS ) ExFreePoolWithTag( pulcSafe, GDITAG_UMPD );
1305
1306 return hPal;
1307}
#define _SEH2_GetExceptionCode()
Definition: pseh2_64.h:159
uint32_t ULONG
Definition: typedefs.h:59
VOID FASTCALL SetLastNtError(_In_ NTSTATUS Status)
Definition: error.c:31
#define MAX_PALCOLORS
Definition: palette.c:16
HPALETTE APIENTRY EngCreatePalette(ULONG iMode, ULONG cColors, ULONG *pulColors, ULONG flRed, ULONG flGreen, ULONG flBlue)
Definition: palette.c:375
#define GDITAG_UMPD
Definition: tags.h:175
_In_ ULONG iMode
Definition: winddi.h:3520
#define WINDDI_MAXSETPALETTECOLORS
Definition: winddi.h:4006

Referenced by START_TEST().

◆ NtGdiEngDeleteClip()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiEngDeleteClip ( _In_ CLIPOBJ pco)

Definition at line 217 of file umpdstubs.c.

219{
222}
#define STATUS_NOT_IMPLEMENTED
Definition: ntstatus.h:239

◆ NtGdiEngDeletePalette()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEngDeletePalette ( _In_ HPALETTE  hPal)

Definition at line 1312 of file palette.c.

1314{
1315 return EngDeletePalette(hPal);
1316}
BOOL APIENTRY EngDeletePalette(IN HPALETTE hpal)
Definition: palette.c:406

◆ NtGdiEngDeletePath()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiEngDeletePath ( _In_ PATHOBJ ppo)

Definition at line 227 of file umpdstubs.c.

229{
232}

◆ NtGdiEngDeleteSurface()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEngDeleteSurface ( _In_ HSURF  hsurf)

Definition at line 237 of file umpdstubs.c.

239{
241 return FALSE;
242}

◆ NtGdiEngEraseSurface()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEngEraseSurface ( _In_ SURFOBJ pso,
_In_ RECTL prcl,
_In_ ULONG  iColor 
)

Definition at line 247 of file umpdstubs.c.

251{
253 return FALSE;
254}

◆ NtGdiEngFillPath()

__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 
)

Definition at line 259 of file umpdstubs.c.

267{
269 return FALSE;
270}

◆ NtGdiEngGradientFill()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEngGradientFill ( _In_ SURFOBJ psoDest,
_In_ CLIPOBJ pco,
_In_ XLATEOBJ pxlo,
_In_reads_(nVertex) TRIVERTEX pVertex,
_In_ ULONG  nVertex,
_In_ PVOID  pMesh,
_In_ ULONG  nMesh,
_In_ RECTL prclExtents,
_In_ POINTL pptlDitherOrg,
_In_ ULONG  ulMode 
)

Definition at line 275 of file umpdstubs.c.

286{
288 return FALSE;
289}

◆ NtGdiEngLineTo()

__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 
)

Definition at line 294 of file umpdstubs.c.

304{
306 return FALSE;
307}

◆ NtGdiEngLockSurface()

__kernel_entry W32KAPI SURFOBJ *APIENTRY NtGdiEngLockSurface ( _In_ HSURF  hsurf)

◆ NtGdiEngMarkBandingSurface()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEngMarkBandingSurface ( _In_ HSURF  hsurf)

Definition at line 312 of file umpdstubs.c.

314{
316 return FALSE;
317}

◆ NtGdiEngPaint()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEngPaint ( _In_ SURFOBJ pso,
_In_ CLIPOBJ pco,
_In_ BRUSHOBJ pbo,
_In_ POINTL pptlBrushOrg,
_In_ MIX  mix 
)

Definition at line 322 of file umpdstubs.c.

328{
330 return FALSE;
331}

◆ NtGdiEngPlgBlt()

__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 
)

Definition at line 336 of file umpdstubs.c.

348{
350 return FALSE;
351}

◆ NtGdiEngStretchBlt()

__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 
)

◆ NtGdiEngStretchBltROP()

__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 
)

Definition at line 356 of file umpdstubs.c.

370{
372 return FALSE;
373}

◆ NtGdiEngStrokeAndFillPath()

__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 
)

Definition at line 395 of file umpdstubs.c.

405{
407 return FALSE;
408}

◆ NtGdiEngStrokePath()

__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 
)

Definition at line 378 of file umpdstubs.c.

387{
389 return FALSE;
390}

◆ NtGdiEngTextOut()

__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 
)

Definition at line 413 of file umpdstubs.c.

424{
426 return FALSE;
427}

◆ NtGdiEngTransparentBlt()

__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 
)

Definition at line 432 of file umpdstubs.c.

441{
443 return FALSE;
444}

◆ NtGdiEngUnlockSurface()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiEngUnlockSurface ( _In_ SURFOBJ pso)

Definition at line 618 of file surface.c.

620{
622 ASSERT(FALSE);
624}
#define UNIMPLEMENTED
Definition: debug.h:115
#define ASSERT(a)
Definition: mode.c:44

◆ NtGdiEnumFontChunk()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEnumFontChunk ( _In_ HDC  hdc,
_In_ ULONG_PTR  idEnum,
_In_ ULONG  cjEfdw,
_Out_ ULONG pcjEfdw,
_Out_ PENUMFONTDATAW  pefdw 
)

Referenced by NewEnumFontFamiliesExW().

◆ NtGdiEnumFontClose()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEnumFontClose ( _In_ ULONG_PTR  idEnum)

◆ NtGdiEnumFontOpen()

__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 
)

◆ NtGdiEnumFonts()

__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 
)

Referenced by EnumFontsA(), and EnumFontsW().

◆ NtGdiEnumObjects()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiEnumObjects ( _In_ HDC  hdc,
_In_ INT  iObjectType,
_In_ ULONG  cjBuf,
_Out_writes_bytes_opt_(cjBuf) PVOID  pvBuf 
)

Referenced by EnumObjects().

◆ NtGdiEqualRgn()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiEqualRgn ( _In_ HRGN  hrgn1,
_In_ HRGN  hrgn2 
)

◆ NtGdiEudcLoadUnloadLink()

__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 
)

◆ NtGdiExcludeClipRect()

__kernel_entry W32KAPI INT APIENTRY NtGdiExcludeClipRect ( _In_ HDC  hdc,
_In_ INT  xLeft,
_In_ INT  yTop,
_In_ INT  xRight,
_In_ INT  yBottom 
)

Definition at line 438 of file cliprgn.c.

444{
445 INT iComplexity = ERROR;
446 RECTL rect;
447 PDC pdc;
448 PREGION prgn;
449
450 /* Lock the DC */
451 pdc = DC_LockDc(hdc);
452 if (pdc == NULL)
453 {
455 return ERROR;
456 }
457
458 /* Convert coordinates to device space */
459 rect.left = xLeft;
460 rect.top = yTop;
461 rect.right = xRight;
462 rect.bottom = yBottom;
464 IntLPtoDP(pdc, (LPPOINT)&rect, 2);
465
467 if ( prgn )
468 {
469 iComplexity = IntSelectClipRgn( pdc, prgn, RGN_DIFF );
470
471 REGION_Delete(prgn);
472 }
473
474 /* Emulate Windows behavior */
475 if (iComplexity == SIMPLEREGION)
476 iComplexity = COMPLEXREGION;
477
478 /* Unlock the DC */
479 DC_UnlockDc(pdc);
480
481 return iComplexity;
482}
static BOOLEAN IntLPtoDP(DC *pdc, PPOINTL ppt, UINT count)
Definition: coord.h:182
FORCEINLINE VOID DC_UnlockDc(PDC pdc)
Definition: dc.h:238
FORCEINLINE PDC DC_LockDc(HDC hdc)
Definition: dc.h:220
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
#define ERROR(name)
Definition: error_private.h:53
HDC hdc
Definition: main.c:9
#define IntSysCreateRectpRgnIndirect(prc)
Definition: region.h:93
& rect
Definition: startmenu.cpp:1413
Definition: polytest.cpp:41
Definition: region.h:8
int32_t INT
Definition: typedefs.h:58
VOID FASTCALL RECTL_vMakeWellOrdered(_Inout_ RECTL *prcl)
Definition: rect.c:81
VOID FASTCALL REGION_Delete(PREGION pRgn)
Definition: region.c:2449
#define COMPLEXREGION
Definition: wingdi.h:363
#define RGN_DIFF
Definition: wingdi.h:358
#define SIMPLEREGION
Definition: wingdi.h:362

Referenced by ExcludeClipRect(), and START_TEST().

◆ NtGdiExtCreatePen()

__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 
)

Referenced by ExtCreatePen().

◆ NtGdiExtCreateRegion()

__kernel_entry W32KAPI HRGN APIENTRY NtGdiExtCreateRegion ( _In_opt_ LPXFORM  px,
_In_ DWORD  cj,
_In_reads_bytes_(cj) LPRGNDATA  prgndata 
)

Referenced by ExtCreateRegion().

◆ NtGdiExtEscape()

__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 
)

Referenced by ExtEscape(), and NamedEscape().

◆ NtGdiExtFloodFill()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiExtFloodFill ( _In_ HDC  hdc,
_In_ INT  x,
_In_ INT  y,
_In_ COLORREF  crColor,
_In_ UINT  iFillType 
)

Referenced by ExtFloodFill().

◆ NtGdiExtSelectClipRgn()

__kernel_entry W32KAPI INT APIENTRY NtGdiExtSelectClipRgn ( _In_ HDC  hdc,
_In_opt_ HRGN  hrgn,
_In_ INT  iMode 
)

◆ NtGdiExtTextOutW()

__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 
)

Referenced by ExtTextOutW(), and START_TEST().

◆ NtGdiFillPath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiFillPath ( _In_ HDC  hdc)

Referenced by FillPath().

◆ NtGdiFillRgn()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiFillRgn ( _In_ HDC  hdc,
_In_ HRGN  hrgn,
_In_ HBRUSH  hbrush 
)

Definition at line 1295 of file bitblt.c.

1299{
1300 PDC pdc;
1301 PREGION prgn;
1302 PBRUSH pbrFill;
1303 BOOL bResult;
1304
1305 /* Lock the DC */
1306 pdc = DC_LockDc(hdc);
1307 if (pdc == NULL)
1308 {
1309 ERR("Failed to lock hdc %p\n", hdc);
1310 return FALSE;
1311 }
1312
1313 /* Check if the DC has no surface (empty mem or info DC) */
1314 if (pdc->dclevel.pSurface == NULL)
1315 {
1316 DC_UnlockDc(pdc);
1317 return TRUE;
1318 }
1319
1320 /* Lock the region */
1321 prgn = REGION_LockRgn(hrgn);
1322 if (prgn == NULL)
1323 {
1324 ERR("Failed to lock hrgn %p\n", hrgn);
1325 DC_UnlockDc(pdc);
1326 return FALSE;
1327 }
1328
1329 /* Lock the brush */
1330 pbrFill = BRUSH_ShareLockBrush(hbrush);
1331 if (pbrFill == NULL)
1332 {
1333 ERR("Failed to lock hbrush %p\n", hbrush);
1334 REGION_UnlockRgn(prgn);
1335 DC_UnlockDc(pdc);
1336 return FALSE;
1337 }
1338
1339 /* Call the internal function */
1340 bResult = IntGdiFillRgn(pdc, prgn, pbrFill);
1341
1342 /* Cleanup locks */
1343 BRUSH_ShareUnlockBrush(pbrFill);
1344 REGION_UnlockRgn(prgn);
1345 DC_UnlockDc(pdc);
1346
1347 return bResult;
1348}
static HRGN hrgn
static HBRUSH hbrush
unsigned int BOOL
Definition: ntddk_ex.h:94
#define BRUSH_ShareLockBrush(hBrush)
Definition: brush.h:117
#define BRUSH_ShareUnlockBrush(pBrush)
Definition: brush.h:118
BOOL IntGdiFillRgn(_In_ PDC pdc, _In_ PREGION prgn, _In_opt_ PBRUSH pbrFill)
Definition: bitblt.c:1186
PREGION FASTCALL REGION_LockRgn(_In_ HRGN hrgn)
Definition: region.c:2358
VOID FASTCALL REGION_UnlockRgn(_In_ PREGION prgn)
Definition: region.c:2373

Referenced by FillRgn(), and NtGdiFrameRgn().

◆ NtGdiFlattenPath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiFlattenPath ( _In_ HDC  hdc)

Referenced by FlattenPath().

◆ NtGdiFlush()

◆ NtGdiFontIsLinked()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiFontIsLinked ( _In_ HDC  hdc)

◆ NtGdiFONTOBJ_cGetAllGlyphHandles()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiFONTOBJ_cGetAllGlyphHandles ( _In_ FONTOBJ pfo,
_Out_opt_ _Post_count_(return) HGLYPH phg 
)

Definition at line 527 of file umpdstubs.c.

530{
532 return 0;
533}

◆ NtGdiFONTOBJ_cGetGlyphs()

__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 
)

Definition at line 471 of file umpdstubs.c.

477{
479 return 0;
480}

◆ NtGdiFONTOBJ_pfdg()

__kernel_entry W32KAPI FD_GLYPHSET *APIENTRY NtGdiFONTOBJ_pfdg ( _In_ FONTOBJ pfo)

Definition at line 495 of file umpdstubs.c.

497{
499 return NULL;
500}

◆ NtGdiFONTOBJ_pifi()

__kernel_entry W32KAPI IFIMETRICS *APIENTRY NtGdiFONTOBJ_pifi ( _In_ FONTOBJ pfo)

Definition at line 485 of file umpdstubs.c.

487{
489 return NULL;
490}

◆ NtGdiFONTOBJ_pQueryGlyphAttrs()

__kernel_entry W32KAPI PFD_GLYPHATTR APIENTRY NtGdiFONTOBJ_pQueryGlyphAttrs ( _In_ FONTOBJ pfo,
_In_ ULONG  iMode 
)

Definition at line 505 of file umpdstubs.c.

508{
510 return NULL;
511}

◆ NtGdiFONTOBJ_pvTrueTypeFontFile()

__kernel_entry W32KAPI PVOID APIENTRY NtGdiFONTOBJ_pvTrueTypeFontFile ( _In_ FONTOBJ pfo,
_Out_ ULONG pcjFile 
)

Definition at line 516 of file umpdstubs.c.

519{
521 return NULL;
522}

◆ NtGdiFONTOBJ_pxoGetXform()

__kernel_entry W32KAPI XFORMOBJ *APIENTRY NtGdiFONTOBJ_pxoGetXform ( _In_ FONTOBJ pfo)

Definition at line 461 of file umpdstubs.c.

463{
465 return NULL;
466}

◆ NtGdiFONTOBJ_vGetInfo()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiFONTOBJ_vGetInfo ( _In_ FONTOBJ pfo,
_In_ ULONG  cjSize,
_Out_writes_bytes_(cjSize) FONTINFO pfi 
)

Definition at line 449 of file umpdstubs.c.

453{
456}

◆ NtGdiForceUFIMapping()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiForceUFIMapping ( _In_ HDC  hdc,
_In_ PUNIVERSAL_FONT_ID  pufi 
)

◆ NtGdiFrameRgn()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiFrameRgn ( _In_ HDC  hdc,
_In_ HRGN  hrgn,
_In_ HBRUSH  hbrush,
_In_ INT  xWidth,
_In_ INT  yHeight 
)

Definition at line 1352 of file bitblt.c.

1358{
1359 HRGN hrgnFrame;
1360 BOOL bResult;
1361
1362 hrgnFrame = GreCreateFrameRgn(hrgn, xWidth, yHeight);
1363 if (hrgnFrame == NULL)
1364 {
1365 return FALSE;
1366 }
1367
1368 bResult = NtGdiFillRgn(hdc, hrgnFrame, hbrush);
1369
1370 GreDeleteObject(hrgnFrame);
1371 return bResult;
1372}
BOOL APIENTRY NtGdiFillRgn(_In_ HDC hdc, _In_ HRGN hrgn, _In_ HBRUSH hbrush)
Definition: bitblt.c:1295
BOOL NTAPI GreDeleteObject(HGDIOBJ hobj)
Definition: gdiobj.c:1158
HRGN FASTCALL GreCreateFrameRgn(HRGN hrgn, INT cx, INT cy)
Definition: region.c:2025

Referenced by FrameRgn().

◆ NtGdiFullscreenControl()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiFullscreenControl ( _In_ FULLSCREENCONTROL  FullscreenCommand,
_In_ PVOID  FullscreenInput,
_In_ DWORD  FullscreenInputLength,
_Out_ PVOID  FullscreenOutput,
_Inout_ PULONG  FullscreenOutputLength 
)

◆ NtGdiGetBitmapBits()

__kernel_entry W32KAPI LONG APIENTRY NtGdiGetBitmapBits ( _In_ HBITMAP  hbm,
_In_ ULONG  cjMax,
_Out_writes_bytes_opt_(cjMax) PBYTE  pjOut 
)

Referenced by START_TEST().

◆ NtGdiGetCharABCWidthsW()

◆ NtGdiGetCharacterPlacementW()

__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 
)

◆ NtGdiGetCharSet()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiGetCharSet ( _In_ HDC  hdc)

Referenced by GdiGetCodePage().

◆ NtGdiGetCharWidthInfo()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetCharWidthInfo ( _In_ HDC  hdc,
_Out_ PCHWIDTHINFO  pChWidthInfo 
)

◆ NtGdiGetCharWidthW()

◆ NtGdiGetColorAdjustment()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetColorAdjustment ( _In_ HDC  hdc,
_Out_ PCOLORADJUSTMENT  pcaOut 
)

◆ NtGdiGetColorSpaceforBitmap()

__kernel_entry W32KAPI ULONG_PTR APIENTRY NtGdiGetColorSpaceforBitmap ( _In_ HBITMAP  hsurf)

◆ NtGdiGetDCDword()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetDCDword ( _In_ HDC  hdc,
_In_ UINT  u,
_Out_ DWORD Result 
)

Referenced by GetDCDWord().

◆ NtGdiGetDCforBitmap()

__kernel_entry W32KAPI HDC APIENTRY NtGdiGetDCforBitmap ( _In_ HBITMAP  hsurf)

Referenced by SetDIBits().

◆ NtGdiGetDCObject()

◆ NtGdiGetDeviceCaps()

◆ NtGdiGetDeviceWidth()

__kernel_entry W32KAPI LONG APIENTRY NtGdiGetDeviceWidth ( _In_ HDC  hdc)

Referenced by MirrorRgnDC().

◆ NtGdiGetDhpdev()

__kernel_entry W32KAPI DHPDEV APIENTRY NtGdiGetDhpdev ( _In_ HDEV  hdev)

◆ NtGdiGetEmbedFonts()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiGetEmbedFonts ( VOID  )

Definition at line 1288 of file stubs.c.

1290{
1292 return 0;
1293}

◆ NtGdiGetEmbUFI()

__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 
)

◆ NtGdiGetETM()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetETM ( _In_ HDC  hdc,
_Out_opt_ EXTTEXTMETRIC petm 
)

Referenced by GetETM().

◆ NtGdiGetEudcTimeStampEx()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiGetEudcTimeStampEx ( _In_reads_opt_(cwcBaseFaceName) LPWSTR  lpBaseFaceName,
_In_ ULONG  cwcBaseFaceName,
_In_ BOOL  bSystemTimeStamp 
)

◆ NtGdiGetFontFileData()

__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 
)

◆ NtGdiGetFontFileInfo()

__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 
)

◆ NtGdiGetFontResourceInfoInternalW()

__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 
)

Referenced by GetFontResourceInfoW(), and START_TEST().

◆ NtGdiGetFontUnicodeRanges()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiGetFontUnicodeRanges ( _In_ HDC  hdc,
_Out_ _Post_bytecount_(return) LPGLYPHSET  pgs 
)

◆ NtGdiGetGlyphIndicesW()

__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 
)

Definition at line 7070 of file freetype.c.

7076{
7077 PDC dc;
7078 PDC_ATTR pdcattr;
7079 PTEXTOBJ TextObj;
7080 PFONTGDI FontGDI;
7081 HFONT hFont = NULL;
7083 OUTLINETEXTMETRICW *potm;
7084 INT i;
7085 WCHAR DefChar = 0xffff;
7086 PWSTR Buffer = NULL;
7087 ULONG Size, pwcSize;
7088 PWSTR Safepwc = NULL;
7089 LPCWSTR UnSafepwc = pwc;
7090 LPWORD UnSafepgi = pgi;
7091 FT_Face Face;
7092 TT_OS2 *pOS2;
7093
7094 if (cwc < 0)
7095 {
7096 DPRINT1("cwc < 0\n");
7097 return GDI_ERROR;
7098 }
7099
7100 if (!UnSafepwc && !UnSafepgi && cwc > 0)
7101 {
7102 DPRINT1("!UnSafepwc && !UnSafepgi && cwc > 0\n");
7103 return GDI_ERROR;
7104 }
7105
7106 if (!UnSafepwc != !UnSafepgi)
7107 {
7108 DPRINT1("UnSafepwc == %p, UnSafepgi = %p\n", UnSafepwc, UnSafepgi);
7109 return GDI_ERROR;
7110 }
7111
7112 /* Get FontGDI */
7113 dc = DC_LockDc(hdc);
7114 if (!dc)
7115 {
7116 DPRINT1("!DC_LockDC\n");
7117 return GDI_ERROR;
7118 }
7119 pdcattr = dc->pdcattr;
7120 hFont = pdcattr->hlfntNew;
7121 TextObj = RealizeFontInit(hFont);
7122 DC_UnlockDc(dc);
7123 if (!TextObj)
7124 {
7125 DPRINT1("!TextObj\n");
7126 return GDI_ERROR;
7127 }
7128 FontGDI = ObjToGDI(TextObj->Font, FONT);
7129 TEXTOBJ_UnlockText(TextObj);
7130
7131 if (cwc == 0)
7132 {
7133 if (!UnSafepwc && !UnSafepgi)
7134 {
7135 Face = FontGDI->SharedFace->Face;
7136 return Face->num_glyphs;
7137 }
7138 else
7139 {
7141 goto ErrorRet;
7142 }
7143 }
7144
7146 if (!Buffer)
7147 {
7148 DPRINT1("ExAllocatePoolWithTag\n");
7149 return GDI_ERROR;
7150 }
7151
7152 /* Get DefChar */
7154 {
7155 DefChar = 0xffff;
7156 }
7157 else
7158 {
7159 Face = FontGDI->SharedFace->Face;
7160 if (FT_IS_SFNT(Face))
7161 {
7163 pOS2 = FT_Get_Sfnt_Table(Face, ft_sfnt_os2);
7164 DefChar = (pOS2->usDefaultChar ? get_glyph_index(Face, pOS2->usDefaultChar) : 0);
7166 }
7167 else
7168 {
7169 Size = IntGetOutlineTextMetrics(FontGDI, 0, NULL);
7170 if (!Size)
7171 {
7173 DPRINT1("!Size\n");
7174 goto ErrorRet;
7175 }
7177 if (!potm)
7178 {
7180 DPRINT1("!potm\n");
7181 goto ErrorRet;
7182 }
7183 Size = IntGetOutlineTextMetrics(FontGDI, Size, potm);
7184 if (Size)
7185 DefChar = potm->otmTextMetrics.tmDefaultChar;
7187 }
7188 }
7189
7190 /* Allocate for Safepwc */
7191 pwcSize = cwc * sizeof(WCHAR);
7192 Safepwc = ExAllocatePoolWithTag(PagedPool, pwcSize, GDITAG_TEXT);
7193 if (!Safepwc)
7194 {
7196 DPRINT1("!Safepwc\n");
7197 goto ErrorRet;
7198 }
7199
7200 _SEH2_TRY
7201 {
7202 ProbeForRead(UnSafepwc, pwcSize, 1);
7203 RtlCopyMemory(Safepwc, UnSafepwc, pwcSize);
7204 }
7206 {
7208 }
7209 _SEH2_END;
7210
7211 if (!NT_SUCCESS(Status))
7212 {
7213 DPRINT1("Status: %08lX\n", Status);
7214 goto ErrorRet;
7215 }
7216
7217 /* Get glyph indeces */
7219 for (i = 0; i < cwc; i++)
7220 {
7221 Buffer[i] = get_glyph_index(FontGDI->SharedFace->Face, Safepwc[i]);
7222 if (Buffer[i] == 0)
7223 {
7224 Buffer[i] = DefChar;
7225 }
7226 }
7228
7229 _SEH2_TRY
7230 {
7231 ProbeForWrite(UnSafepgi, cwc * sizeof(WORD), 1);
7232 RtlCopyMemory(UnSafepgi, Buffer, cwc * sizeof(WORD));
7233 }
7235 {
7237 }
7238 _SEH2_END;
7239
7240ErrorRet:
7241 if (Buffer != NULL)
7242 {
7244 }
7245 if (Safepwc != NULL)
7246 {
7248 }
7249
7250 if (NT_SUCCESS(Status))
7251 return cwc;
7252
7253 return GDI_ERROR;
7254}
LONG NTSTATUS
Definition: precomp.h:26
#define DPRINT1
Definition: precomp.h:8
HFONT hFont
Definition: main.c:53
Definition: bufpool.h:45
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:32
#define ObjToGDI(ClipObj, Type)
Definition: engobjects.h:184
unsigned short WORD
Definition: ntddk_ex.h:93
#define IntUnLockFreeType()
Definition: freetype.c:82
#define IntLockFreeType()
Definition: freetype.c:79
static FT_UInt FASTCALL get_glyph_index(FT_Face ft_face, UINT glyph)
Definition: freetype.c:3688
INT FASTCALL IntGetOutlineTextMetrics(PFONTGDI FontGDI, UINT Size, OUTLINETEXTMETRICW *Otm)
Definition: freetype.c:2398
#define FT_IS_SFNT(face)
Definition: freetype.h:1331
Status
Definition: gdiplustypes.h:25
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
static const WCHAR dc[]
static LPCSTR INT LPWORD pgi
Definition: font.c:51
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
#define STATUS_NO_MEMORY
Definition: ntstatus.h:260
FT_Long num_glyphs
Definition: freetype.h:1076
FT_UShort usDefaultChar
Definition: tttables.h:426
HANDLE hlfntNew
Definition: ntgdihdl.h:330
PSHARED_FACE SharedFace
Definition: engobjects.h:145
Definition: text.h:60
FONTOBJ * Font
Definition: text.h:66
TEXTMETRICW otmTextMetrics
Definition: wingdi.h:2514
FT_Face Face
Definition: engobjects.h:132
WCHAR tmDefaultChar
Definition: wingdi.h:2396
FT_Get_Sfnt_Table(FT_Face face, FT_Sfnt_Tag tag)
Definition: ftobjs.c:4113
#define ft_sfnt_os2
Definition: tttables.h:631
uint16_t * PWSTR
Definition: typedefs.h:56
uint16_t * LPWORD
Definition: typedefs.h:56
#define STATUS_UNSUCCESSFUL
Definition: udferr_usr.h:132
#define STATUS_INSUFFICIENT_RESOURCES
Definition: udferr_usr.h:158
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4533
PTEXTOBJ FASTCALL RealizeFontInit(HFONT hFont)
Definition: font.c:422
FORCEINLINE VOID TEXTOBJ_UnlockText(PLFONT plfnt)
Definition: text.h:96
#define GDITAG_TEXT
Definition: tags.h:172
#define GDI_ERROR
Definition: wingdi.h:1309
#define GGI_MARK_NONEXISTING_GLYPHS
Definition: wingdi.h:1085
__wchar_t WCHAR
Definition: xmlstorage.h:180
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185

Referenced by GetCharacterPlacementW(), and GetGlyphIndicesA().

◆ NtGdiGetGlyphIndicesWInternal()

__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 
)

◆ NtGdiGetGlyphOutline()

__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 
)

◆ NtGdiGetKerningPairs()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiGetKerningPairs ( _In_ HDC  hdc,
_In_ ULONG  cPairs,
_Out_writes_to_opt_(cPairs, return) KERNINGPAIR pkpDst 
)

◆ NtGdiGetLinkedUFIs()

__kernel_entry W32KAPI INT APIENTRY NtGdiGetLinkedUFIs ( _In_ HDC  hdc,
_Out_writes_opt_(cBufferSize) PUNIVERSAL_FONT_ID  pufiLinkedUFIs,
_In_ INT  cBufferSize 
)

◆ NtGdiGetMonitorID()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetMonitorID ( _In_ HDC  hdc,
_In_ DWORD  cjSize,
_Out_writes_bytes_(cjSize) LPWSTR  pszMonitorID 
)

◆ NtGdiGetNearestColor()

__kernel_entry W32KAPI COLORREF APIENTRY NtGdiGetNearestColor ( _In_ HDC  hdc,
_In_ COLORREF  cr 
)

FIXME: shouldn't dereference pSurface while the PDEV is not locked

Definition at line 662 of file palette.c.

665{
666 COLORREF nearest = CLR_INVALID;
667 PDC dc;
668 EXLATEOBJ exlo;
669 PPALETTE ppal;
670
671 dc = DC_LockDc(hDC);
672
673 if(dc == NULL)
674 {
676 return CLR_INVALID;
677 }
678
680 if(dc->dclevel.pSurface == NULL)
681 ppal = gppalMono;
682 else
683 ppal = dc->dclevel.pSurface->ppal;
684
685 /* Translate the color to the DC format */
687
688 /* XLATE it back to RGB color space */
690 ppal,
691 &gpalRGB,
692 0,
693 RGB(0xff, 0xff, 0xff),
694 RGB(0, 0, 0));
695
696 nearest = XLATEOBJ_iXlate(&exlo.xlo, Color);
697
698 EXLATEOBJ_vCleanup(&exlo);
699
700 /* We're done */
702
703 return nearest;
704}
static HDC hDC
Definition: 3dtext.c:33
ULONG TranslateCOLORREF(PDC pdc, COLORREF crColor)
Definition: dcutil.c:869
#define RGB(r, g, b)
Definition: precomp.h:62
XLATEOBJ xlo
Definition: xlateobj.h:21
PALETTE * gppalMono
Definition: palette.c:20
PALETTE gpalRGB
Definition: palette.c:20
ENGAPI ULONG APIENTRY XLATEOBJ_iXlate(_In_ XLATEOBJ *pxlo, _In_ ULONG iColor)
Definition: xlateobj.c:664
DWORD COLORREF
Definition: windef.h:300
#define CLR_INVALID
Definition: wingdi.h:883
VOID NTAPI EXLATEOBJ_vInitialize(_Out_ PEXLATEOBJ pexlo, _In_opt_ PALETTE *ppalSrc, _In_opt_ PALETTE *ppalDst, _In_ COLORREF crSrcBackColor, _In_ COLORREF crDstBackColor, _In_ COLORREF crDstForeColor)
Definition: xlateobj.c:358
VOID NTAPI EXLATEOBJ_vCleanup(_Inout_ PEXLATEOBJ pexlo)
Definition: xlateobj.c:649

◆ NtGdiGetNearestPaletteIndex()

__kernel_entry W32KAPI UINT APIENTRY NtGdiGetNearestPaletteIndex ( _In_ HPALETTE  hpal,
_In_ COLORREF  crColor 
)

◆ NtGdiGetObjectBitmapHandle()

__kernel_entry W32KAPI HBITMAP APIENTRY NtGdiGetObjectBitmapHandle ( _In_ HBRUSH  hbr,
_Out_ UINT piUsage 
)

Definition at line 513 of file brush.cpp.

516{
517 PBRUSH pbr;
518 HBITMAP hbm;
519 UINT uUsage;
520
521 /* Lock the brush */
522 pbr = BRUSH::LockForRead(hbr);
523 if (pbr == NULL)
524 {
525 ERR("Failed to lock brush %p\n", hbr);
526 return NULL;
527 }
528
529 /* Call the member function */
530 hbm = pbr->hbmGetBitmapHandle(&uUsage);
531
532 /* Unlock the brush */
533 pbr->vUnlock();
534
536 {
537 ProbeForWrite(piUsage, sizeof(*piUsage), 1);
538 *piUsage = uUsage;
539 }
541 {
542 ERR("Got exception! piUsage = %p\n", piUsage);
543 hbm = NULL;
544 }
545 _SEH2_END;
546
547 return hbm;
548}
unsigned int UINT
Definition: ndis.h:50

Referenced by get_brush_bitmap_info().

◆ NtGdiGetOutlineTextMetricsInternalW()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiGetOutlineTextMetricsInternalW ( _In_ HDC  hdc,
_In_ ULONG  cjotm,
_Out_writes_bytes_opt_(cjotm) OUTLINETEXTMETRICW potmw,
_Out_ TMDIFF ptmd 
)

Referenced by GetOutlineTextMetricsW().

◆ NtGdiGetPath()

__kernel_entry W32KAPI INT APIENTRY NtGdiGetPath ( _In_ HDC  hdc,
_Out_writes_opt_(cptBuf) LPPOINT  pptlBuf,
_Out_writes_opt_(cptBuf) LPBYTE  pjTypes,
_In_ INT  cptBuf 
)

Referenced by GetPath().

◆ NtGdiGetPerBandInfo()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiGetPerBandInfo ( _In_ HDC  hdc,
_Inout_ PERBANDINFO ppbi 
)

◆ NtGdiGetPixel()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiGetPixel ( _In_ HDC  hdc,
_In_ INT  x,
_In_ INT  y 
)

Definition at line 1512 of file bitblt.c.

1516{
1517 PDC pdc;
1518 ULONG ulRGBColor = CLR_INVALID;
1519 POINTL ptlSrc;
1520 RECT rcDest;
1521 PSURFACE psurfSrc, psurfDest;
1522
1523 /* Lock the DC */
1524 pdc = DC_LockDc(hdc);
1525 if (!pdc)
1526 {
1528 return CLR_INVALID;
1529 }
1530
1531 /* Check if the DC has no surface (empty mem or info DC) */
1532 if (pdc->dclevel.pSurface == NULL)
1533 {
1534 /* Fail! */
1535 goto leave;
1536 }
1537
1538 /* Get the logical coordinates */
1539 ptlSrc.x = x;
1540 ptlSrc.y = y;
1541
1542 /* Translate coordinates to device coordinates */
1543 IntLPtoDP(pdc, &ptlSrc, 1);
1544 ptlSrc.x += pdc->ptlDCOrig.x;
1545 ptlSrc.y += pdc->ptlDCOrig.y;
1546
1547 rcDest.left = x;
1548 rcDest.top = y;
1549 rcDest.right = x + 1;
1550 rcDest.bottom = y + 1;
1551
1552 /* Prepare DC for blit */
1553 DC_vPrepareDCsForBlit(pdc, &rcDest, NULL, NULL);
1554
1555 /* Check if the pixel is outside the surface */
1556 psurfSrc = pdc->dclevel.pSurface;
1557 if ((ptlSrc.x >= psurfSrc->SurfObj.sizlBitmap.cx) ||
1558 (ptlSrc.y >= psurfSrc->SurfObj.sizlBitmap.cy) ||
1559 (ptlSrc.x < 0) ||
1560 (ptlSrc.y < 0))
1561 {
1562 /* Fail! */
1563 goto leave;
1564 }
1565
1566 /* Allocate a surface */
1568 1,
1569 1,
1570 BMF_32BPP,
1571 0,
1572 0,
1573 0,
1574 &ulRGBColor);
1575 if (psurfDest)
1576 {
1577 RECTL rclDest = {0, 0, 1, 1};
1578 EXLATEOBJ exlo;
1579
1580 /* Translate from the source palette to RGB color */
1582 psurfSrc->ppal,
1583 &gpalRGB,
1584 0,
1585 RGB(0xff,0xff,0xff),
1586 RGB(0,0,0));
1587
1588 /* Call the copy bits function */
1589 EngCopyBits(&psurfDest->SurfObj,
1590 &psurfSrc->SurfObj,
1591 NULL,
1592 &exlo.xlo,
1593 &rclDest,
1594 &ptlSrc);
1595
1596 /* Cleanup the XLATEOBJ */
1597 EXLATEOBJ_vCleanup(&exlo);
1598
1599 /* Delete the surface */
1600 GDIOBJ_vDeleteObject(&psurfDest->BaseObject);
1601
1602 /* The top byte is zero */
1603 ulRGBColor &= 0x00FFFFFF;
1604 }
1605
1606leave:
1607
1608 /* Unlock the DC */
1609 DC_vFinishBlit(pdc, NULL);
1610 DC_UnlockDc(pdc);
1611
1612 /* Return the new RGB color or -1 on failure */
1613 return ulRGBColor;
1614}
#define leave
Definition: btrfs_drv.h:138
VOID FASTCALL DC_vPrepareDCsForBlit(PDC pdcDest, const RECT *rcDest, PDC pdcSrc, const RECT *rcSrc)
Definition: dclife.c:505
VOID FASTCALL DC_vFinishBlit(PDC pdc1, PDC pdc2)
Definition: dclife.c:614
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
LONG y
Definition: windef.h:330
LONG x
Definition: windef.h:329
LONG cx
Definition: kdterminal.h:27
LONG cy
Definition: kdterminal.h:28
SURFOBJ SurfObj
Definition: surface.h:8
struct _PALETTE *const ppal
Definition: surface.h:11
BASEOBJECT BaseObject
Definition: surface.h:6
SIZEL sizlBitmap
Definition: winddi.h:1209
LONG right
Definition: windef.h:308
LONG bottom
Definition: windef.h:309
LONG top
Definition: windef.h:307
LONG left
Definition: windef.h:306
PSURFACE NTAPI SURFACE_AllocSurface(_In_ USHORT iType, _In_ ULONG cx, _In_ ULONG cy, _In_ ULONG iFormat, _In_ ULONG fjBitmap, _In_opt_ ULONG cjWidth, _In_opt_ ULONG cjBufSize, _In_opt_ PVOID pvBits)
Definition: surface.c:116
VOID NTAPI GDIOBJ_vDeleteObject(POBJ pobj)
Definition: gdiobj.c:1111
#define STYPE_BITMAP
Definition: winddi.h:1175
ENGAPI BOOL APIENTRY EngCopyBits(_In_ SURFOBJ *psoDest, _In_ SURFOBJ *psoSrc, _In_opt_ CLIPOBJ *pco, _In_opt_ XLATEOBJ *pxlo, _In_ __in_data_source(USER_MODE) RECTL *prclDest, _In_ __in_data_source(USER_MODE) POINTL *pptlSrc)
#define BMF_32BPP
Definition: winddi.h:360

Referenced by GetPixel(), and START_TEST().

◆ NtGdiGetRandomRgn()

__kernel_entry W32KAPI INT APIENTRY NtGdiGetRandomRgn ( _In_ HDC  hdc,
_In_ HRGN  hrgn,
_In_ INT  iRgn 
)

◆ NtGdiGetRasterizerCaps()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetRasterizerCaps ( _Out_writes_bytes_(cjBytes) LPRASTERIZER_STATUS  praststat,
_In_ ULONG  cjBytes 
)

◆ NtGdiGetServerMetaFileBits()

__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 
)

◆ NtGdiGetSpoolMessage()

__kernel_entry W32KAPI INT APIENTRY NtGdiGetSpoolMessage ( DWORD  u1,
DWORD  u2,
DWORD  u3,
DWORD  u4 
)

Definition at line 1073 of file stubs.c.

1078{
1079 /* FIXME: The prototypes */
1081 return 0;
1082}
#define ERROR_NOT_SUPPORTED
Definition: compat.h:100

◆ NtGdiGetStats()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiGetStats ( _In_ HANDLE  hProcess,
_In_ INT  iIndex,
_In_ INT  iPidType,
_Out_writes_bytes_(cjResultSize) PVOID  pResults,
_In_ UINT  cjResultSize 
)

◆ NtGdiGetStockObject()

◆ NtGdiGetStringBitmapW()

__kernel_entry W32KAPI UINT APIENTRY NtGdiGetStringBitmapW ( _In_ HDC  hdc,
_In_ LPWSTR  pwsz,
_In_ UINT  cwc,
_Out_writes_bytes_(cj) BYTE lpSB,
_In_ UINT  cj 
)

◆ NtGdiGetSystemPaletteUse()

__kernel_entry W32KAPI UINT APIENTRY NtGdiGetSystemPaletteUse ( _In_ HDC  hdc)

◆ NtGdiGetTextCharsetInfo()

__kernel_entry W32KAPI INT APIENTRY NtGdiGetTextCharsetInfo ( _In_ HDC  hdc,
_Out_opt_ LPFONTSIGNATURE  lpSig,
_In_ DWORD  dwFlags 
)

◆ NtGdiGetTextExtent()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiGetTextExtent ( _In_ HDC  hdc,
_In_reads_(cwc) LPWSTR  lpwsz,
_In_ INT  cwc,
_Out_ LPSIZE  psize,
_In_ UINT  flOpts 
)

◆ NtGdiGetTextExtentExW()

◆ NtGdiGetTextFaceW()

__kernel_entry W32KAPI INT APIENTRY NtGdiGetTextFaceW ( _In_ HDC  hdc,
_In_ INT  cChar,
_Out_writes_to_opt_(cChar, return) LPWSTR  pszOut,
_In_ BOOL  bAliasName 
)

Referenced by GetTextFaceAliasW(), and GetTextFaceW().

◆ NtGdiGetUFI()

__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 
)

◆ NtGdiGetUFIPathname()

__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 
)

◆ NtGdiGetWidthTable()

__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 
)

◆ NtGdiGradientFill()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiGradientFill ( _In_ HDC  hdc,
_In_ PTRIVERTEX  pVertex,
_In_ ULONG  nVertex,
_In_ PVOID  pMesh,
_In_ ULONG  nMesh,
_In_ ULONG  ulMode 
)

Referenced by GdiGradientFill().

◆ NtGdiHfontCreate()

__kernel_entry W32KAPI HFONT APIENTRY NtGdiHfontCreate ( _In_reads_bytes_(cjElfw) ENUMLOGFONTEXDVW pelfw,
_In_ ULONG  cjElfw,
_In_ LFTYPE  lft,
_In_ FLONG  fl,
_In_ PVOID  pvCliData 
)

◆ NtGdiHT_Get8BPPFormatPalette()

__kernel_entry W32KAPI LONG APIENTRY NtGdiHT_Get8BPPFormatPalette ( _Out_opt_ _Post_count_(return) LPPALETTEENTRY  pPaletteEntry,
_In_ USHORT  RedGamma,
_In_ USHORT  GreenGamma,
_In_ USHORT  BlueGamma 
)

Definition at line 553 of file umpdstubs.c.

558{
560 return FALSE;
561}

◆ NtGdiHT_Get8BPPMaskPalette()

__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 
)

Definition at line 538 of file umpdstubs.c.

545{
547 return FALSE;
548}

◆ NtGdiIcmBrushInfo()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiIcmBrushInfo ( _In_ HDC  hdc,
_In_ HBRUSH  hbrush,
_Inout_updates_bytes_(sizeof(BITMAPINFO)+((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 
)

◆ NtGdiInit()

Definition at line 107 of file init.c.

108{
109 return TRUE;
110}

Referenced by GdiDllInitialize().

◆ NtGdiInitSpool()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiInitSpool ( VOID  )

Definition at line 1048 of file stubs.c.

1049{
1051 return FALSE;
1052}

◆ NtGdiIntersectClipRect()

__kernel_entry W32KAPI INT APIENTRY NtGdiIntersectClipRect ( _In_ HDC  hdc,
_In_ INT  xLeft,
_In_ INT  yTop,
_In_ INT  xRight,
_In_ INT  yBottom 
)

Definition at line 486 of file cliprgn.c.

492{
493 INT iComplexity = ERROR;
494 RECTL rect;
495 PDC pdc;
496 PREGION prgn;
497
498 DPRINT("NtGdiIntersectClipRect(%p, %d,%d-%d,%d)\n",
499 hdc, xLeft, yTop, xRight, yBottom);
500
501 /* Lock the DC */
502 pdc = DC_LockDc(hdc);
503 if (!pdc)
504 {
506 return ERROR;
507 }
508
509 /* Convert coordinates to device space */
510 rect.left = xLeft;
511 rect.top = yTop;
512 rect.right = xRight;
513 rect.bottom = yBottom;
515 IntLPtoDP(pdc, (LPPOINT)&rect, 2);
516
518 if ( prgn )
519 {
520 iComplexity = IntSelectClipRgn( pdc, prgn, RGN_AND );
521
522 REGION_Delete(prgn);
523 }
524
525 /* Emulate Windows behavior */
526 if ( iComplexity == SIMPLEREGION )
527 iComplexity = COMPLEXREGION;
528
529 /* Unlock the DC */
530 DC_UnlockDc(pdc);
531
532 return iComplexity;
533}
#define DPRINT
Definition: sndvol32.h:71
#define RGN_AND
Definition: wingdi.h:356

Referenced by co_IntDrawCaret(), co_UserExcludeUpdateRgn(), DrawTextExWorker(), IntersectClipRect(), and START_TEST().

◆ NtGdiInvertRgn()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiInvertRgn ( _In_ HDC  hdc,
_In_ HRGN  hrgn 
)

Definition at line 1376 of file bitblt.c.

1379{
1380 BOOL bResult;
1381 PDC pdc;
1382 PREGION prgn;
1383
1384 /* Lock the DC */
1385 pdc = DC_LockDc(hdc);
1386 if (pdc == NULL)
1387 {
1389 return FALSE;
1390 }
1391
1392 /* Check if the DC has no surface (empty mem or info DC) */
1393 if (pdc->dclevel.pSurface == NULL)
1394 {
1395 /* Nothing to do, Windows returns TRUE! */
1396 DC_UnlockDc(pdc);
1397 return TRUE;
1398 }
1399
1400 /* Lock the region */
1401 prgn = REGION_LockRgn(hrgn);
1402 if (prgn == NULL)
1403 {
1404 DC_UnlockDc(pdc);
1405 return FALSE;
1406 }
1407
1408 /* Call the internal function */
1409 bResult = IntGdiBitBltRgn(pdc,
1410 prgn,
1411 NULL, // pbo
1412 NULL, // pptlBrush,
1414
1415 /* Unlock the region and DC and return the result */
1416 REGION_UnlockRgn(prgn);
1417 DC_UnlockDc(pdc);
1418 return bResult;
1419}
#define ROP4_DSTINVERT
Definition: dib.h:7
BOOL APIENTRY IntGdiBitBltRgn(_In_ PDC pdc, _In_ PREGION prgn, _In_opt_ BRUSHOBJ *pbo, _In_opt_ POINTL *pptlBrush, _In_ ROP4 rop4)
Definition: bitblt.c:1101

Referenced by InvertRgn().

◆ NtGdiLineTo()

◆ NtGdiMakeFontDir()

__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 
)

◆ NtGdiMakeInfoDC()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiMakeInfoDC ( _In_ HDC  hdc,
_In_ BOOL  bSet 
)

◆ NtGdiMakeObjectUnXferable()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiMakeObjectUnXferable ( _In_ HANDLE  h)

Definition at line 974 of file ntstubs.c.

976{
977 STUB;
978 return 0;
979}
#define STUB
Definition: kernel32.h:27

◆ NtGdiMakeObjectXferable()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiMakeObjectXferable ( _In_ HANDLE  h,
_In_ DWORD  dwProcessId 
)

Definition at line 964 of file ntstubs.c.

967{
968 STUB;
969 return 0;
970}

◆ NtGdiMaskBlt()

__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 
)

Referenced by MaskBlt().

◆ NtGdiMirrorWindowOrg()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiMirrorWindowOrg ( _In_ HDC  hdc)

◆ NtGdiModifyWorldTransform()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiModifyWorldTransform ( _In_ HDC  hdc,
_In_opt_ LPXFORM  pxf,
_In_ DWORD  iXform 
)

Referenced by ModifyWorldTransform().

◆ NtGdiMonoBitmap()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiMonoBitmap ( _In_ HBITMAP  hbm)

◆ NtGdiOffsetClipRgn()

__kernel_entry W32KAPI INT APIENTRY NtGdiOffsetClipRgn ( _In_ HDC  hdc,
_In_ INT  x,
_In_ INT  y 
)

Definition at line 537 of file cliprgn.c.

541{
542 INT iComplexity;
543 PDC pdc;
544 POINTL apt[2];
545
546 /* Lock the DC */
547 pdc = DC_LockDc(hdc);
548 if (pdc == NULL)
549 {
551 return ERROR;
552 }
553
554 /* Check if we have a clip region */
555 if (pdc->dclevel.prgnClip != NULL)
556 {
557 /* Convert coordinates into device space. Note that we need to convert
558 2 coordinates to account for rotation / shear / offset */
559 apt[0].x = 0;
560 apt[0].y = 0;
561 apt[1].x = xOffset;
562 apt[1].y = yOffset;
563 IntLPtoDP(pdc, apt, 2);
564
565 /* Offset the clip region */
566 if (!REGION_bOffsetRgn(pdc->dclevel.prgnClip,
567 apt[1].x - apt[0].x,
568 apt[1].y - apt[0].y))
569 {
570 iComplexity = ERROR;
571 }
572 else
573 {
575 UpdateVisRgn(pdc);
576 iComplexity = REGION_Complexity(pdc->dclevel.prgnClip);
577 }
578
579 /* Mark the RAO region as dirty */
580 pdc->fs |= DC_DIRTY_RAO;
581 }
582 else
583 {
584 /* NULL means no clipping, i.e. the "whole" region */
585 iComplexity = SIMPLEREGION;
586 }
587
588 /* Unlock the DC and return the complexity */
589 DC_UnlockDc(pdc);
590 return iComplexity;
591}
int yOffset
Definition: appswitch.c:59
int xOffset
Definition: appswitch.c:59
VOID FASTCALL IntGdiReleaseRaoRgn(PDC pDC)
Definition: cliprgn.c:16
VOID FASTCALL UpdateVisRgn(PDC pdc)
Definition: cliprgn.c:39
@ DC_DIRTY_RAO
Definition: dc.h:23
INT FASTCALL REGION_Complexity(PREGION prgn)
Definition: region.c:554
BOOL FASTCALL REGION_bOffsetRgn(_Inout_ PREGION prgn, _In_ INT cx, _In_ INT cy)
Definition: region.c:2707

Referenced by OffsetClipRgn(), and START_TEST().

◆ NtGdiOffsetRgn()

__kernel_entry W32KAPI INT APIENTRY NtGdiOffsetRgn ( _In_ HRGN  hrgn,
_In_ INT  cx,
_In_ INT  cy 
)

Definition at line 3961 of file region.c.

3968{
3969 PREGION prgn;
3970 INT iResult;
3971
3972 DPRINT("NtGdiOffsetRgn: hrgn %p cx %d cy %d\n", hrgn, cx, cy);
3973
3974 /* Lock the region */
3975 prgn = REGION_LockRgn(hrgn);
3976 if (prgn == NULL)
3977 {
3978 DPRINT1("NtGdiOffsetRgn: failed to lock region %p\n", hrgn);
3979 return ERROR;
3980 }
3981
3982 /* Call the internal function */
3983 if (!REGION_bOffsetRgn(prgn, cx, cy))
3984 {
3985 iResult = ERROR;
3986 }
3987 else
3988 {
3989 iResult = REGION_Complexity(prgn);
3990 }
3991
3992 /* Unlock and return the result */
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:586
_Out_opt_ int * cx
Definition: commctrl.h:585

Referenced by co_UserExcludeUpdateRgn(), co_UserGetUpdateRgn(), co_WinPosSetWindowPos(), DceResetActiveDCEs(), IntCalcWindowRgn(), and OffsetRgn().

◆ NtGdiOpenDCW()

__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 
)

Definition at line 694 of file dclife.c.

703{
704 UNICODE_STRING ustrDevice;
705 WCHAR awcDevice[CCHDEVICENAME];
706 PVOID dhpdev;
707 HDC hdc;
708 WORD dmSize, dmDriverExtra;
709 DWORD Size;
710 DEVMODEW * _SEH2_VOLATILE pdmAllocated = NULL;
711
712 /* Only if a devicename is given, we need any data */
713 if (pustrDevice)
714 {
715 /* Initialize destination string */
716 RtlInitEmptyUnicodeString(&ustrDevice, awcDevice, sizeof(awcDevice));
717
719 {
720 /* Probe the UNICODE_STRING and the buffer */
721 ProbeForRead(pustrDevice, sizeof(UNICODE_STRING), 1);
722 ProbeForRead(pustrDevice->Buffer, pustrDevice->Length, 1);
723
724 /* Copy the string */
725 RtlCopyUnicodeString(&ustrDevice, pustrDevice);
726
727 /* Allocate and store pdmAllocated if pdmInit is not NULL */
728 if (pdmInit)
729 {
730 ProbeForRead(pdmInit, sizeof(DEVMODEW), 1);
731
732 dmSize = pdmInit->dmSize;
733 dmDriverExtra = pdmInit->dmDriverExtra;
734 Size = dmSize + dmDriverExtra;
735 ProbeForRead(pdmInit, Size, 1);
736
738 Size,
739 TAG_DC);
740 RtlCopyMemory(pdmAllocated, pdmInit, Size);
741 pdmAllocated->dmSize = dmSize;
742 pdmAllocated->dmDriverExtra = dmDriverExtra;
743 }
744
745 if (pUMdhpdev)
746 {
747 ProbeForWrite(pUMdhpdev, sizeof(HANDLE), 1);
748 }
749 }
751 {
752 if (pdmAllocated)
753 {
754 ExFreePoolWithTag(pdmAllocated, TAG_DC);
755 }
757 _SEH2_YIELD(return NULL);
758 }
760 }
761 else
762 {
763 pdmInit = NULL;
764 pUMdhpdev = NULL;
765 // return UserGetDesktopDC(iType, FALSE, TRUE);
766 }
767
768 /* FIXME: HACK! */
769 if (pustrDevice)
770 {
771 UNICODE_STRING ustrDISPLAY = RTL_CONSTANT_STRING(L"DISPLAY");
772 if (RtlEqualUnicodeString(&ustrDevice, &ustrDISPLAY, TRUE))
773 {
774 pustrDevice = NULL;
775 }
776 }
777
778 /* Call the internal function */
779 hdc = GreOpenDCW(pustrDevice ? &ustrDevice : NULL,
780 pdmAllocated,
781 NULL, // FIXME: pwszLogAddress
782 iType,
783 bDisplay,
784 hspool,
785 NULL, // FIXME: pDriverInfo2
786 pUMdhpdev ? &dhpdev : NULL);
787
788 /* If we got a HDC and a UM dhpdev is requested,... */
789 if (hdc && pUMdhpdev)
790 {
791 /* Copy dhpdev to caller */
793 {
794 /* Pointer was already probed */
795 *(HANDLE*)pUMdhpdev = dhpdev;
796 }
798 {
799 /* Ignore error */
800 (void)0;
801 }
803 }
804
805 /* Free the allocated */
806 if (pdmAllocated)
807 {
808 ExFreePoolWithTag(pdmAllocated, TAG_DC);
809 }
810
811 return hdc;
812}
HDC NTAPI GreOpenDCW(PUNICODE_STRING pustrDevice, DEVMODEW *pdmInit, PUNICODE_STRING pustrLogAddr, ULONG iType, BOOL bDisplay, HANDLE hspool, VOID *pDriverInfo2, PVOID *pUMdhpdev)
Definition: dclife.c:640
#define CCHDEVICENAME
Definition: ddrawi.h:63
unsigned long DWORD
Definition: ntddk_ex.h:95
NTSYSAPI VOID NTAPI RtlCopyUnicodeString(PUNICODE_STRING DestinationString, PUNICODE_STRING SourceString)
NTSYSAPI BOOLEAN NTAPI RtlEqualUnicodeString(PUNICODE_STRING String1, PUNICODE_STRING String2, BOOLEAN CaseInSensitive)
#define L(x)
Definition: ntvdm.h:50
#define _SEH2_VOLATILE
Definition: pseh2_64.h:163
#define RTL_CONSTANT_STRING(s)
Definition: tunneltest.c:14
#define TAG_DC
Definition: tags.h:21
_In_ ULONG iType
Definition: winddi.h:3748
#define POOL_RAISE_IF_ALLOCATION_FAILURE

Referenced by IntCreateDICW().

◆ NtGdiPatBlt()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiPatBlt ( _In_ HDC  hdcDest,
_In_ INT  x,
_In_ INT  y,
_In_ INT  cx,
_In_ INT  cy,
_In_ DWORD  dwRop 
)

Definition at line 984 of file bitblt.c.

991{
992 BOOL bResult;
993 PDC pdc;
994
995 /* Convert the ROP3 to a ROP4 */
996 dwRop = MAKEROP4(dwRop & 0xFF0000, dwRop);
997
998 /* Check if the rop uses a source */
999 if (WIN32_ROP4_USES_SOURCE(dwRop))
1000 {
1001 /* This is not possible */
1002 return FALSE;
1003 }
1004
1005 /* Lock the DC */
1006 pdc = DC_LockDc(hdcDest);
1007 if (pdc == NULL)
1008 {
1010 return FALSE;
1011 }
1012
1013 /* Check if the DC has no surface (empty mem or info DC) */
1014 if (pdc->dclevel.pSurface == NULL)
1015 {
1016 /* Nothing to do, Windows returns TRUE! */
1017 DC_UnlockDc(pdc);
1018 return TRUE;
1019 }
1020
1021 /* Update the fill brush, if necessary */
1022 if (pdc->pdcattr->ulDirty_ & (DIRTY_FILL | DC_BRUSH_DIRTY))
1024
1025 /* Call the internal function */
1026 bResult = IntPatBlt(pdc, x, y, cx, cy, dwRop, &pdc->eboFill);
1027
1028 /* Unlock the DC and return the result */
1029 DC_UnlockDc(pdc);
1030 return bResult;
1031}
VOID FASTCALL DC_vUpdateFillBrush(PDC pdc)
Definition: dcobjs.c:16
#define WIN32_ROP4_USES_SOURCE(Rop)
Definition: intgdi.h:7
#define DIRTY_FILL
Definition: ntgdihdl.h:123
#define DC_BRUSH_DIRTY
Definition: ntgdihdl.h:135
BOOL FASTCALL IntPatBlt(PDC pdc, INT XLeft, INT YLeft, INT Width, INT Height, DWORD dwRop3, PEBRUSHOBJ pebo)
Definition: bitblt.c:837
#define MAKEROP4(f, b)
Definition: wingdi.h:2946

Referenced by co_IntDrawCaret(), FillRect(), FrameRect(), IntDrawScrollInterior(), IntPaintDesktop(), IntUpdateLayeredWindowI(), NC_DoNCPaint(), NC_DrawFrame(), PatBlt(), UITOOLS_DrawCheckedRect(), UserDrawCaption(), UserDrawCaptionBar(), and UserDrawWindowFrame().

◆ NtGdiPATHOBJ_bEnum()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiPATHOBJ_bEnum ( _In_ PATHOBJ ppo,
_Out_ PATHDATA ppd 
)

Definition at line 577 of file umpdstubs.c.

580{
582 return FALSE;
583}

◆ NtGdiPATHOBJ_bEnumClipLines()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiPATHOBJ_bEnumClipLines ( _In_ PATHOBJ ppo,
_In_ ULONG  cb,
_Out_writes_bytes_(cb) CLIPLINE pcl 
)

Definition at line 611 of file umpdstubs.c.

615{
617 return FALSE;
618}

◆ NtGdiPATHOBJ_vEnumStart()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiPATHOBJ_vEnumStart ( _In_ PATHOBJ ppo)

Definition at line 588 of file umpdstubs.c.

590{
593}

◆ NtGdiPATHOBJ_vEnumStartClipLines()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiPATHOBJ_vEnumStartClipLines ( _In_ PATHOBJ ppo,
_In_ CLIPOBJ pco,
_In_ SURFOBJ pso,
_In_ LINEATTRS pla 
)

Definition at line 598 of file umpdstubs.c.

603{
606}

◆ NtGdiPATHOBJ_vGetBounds()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiPATHOBJ_vGetBounds ( _In_ PATHOBJ ppo,
_Out_ PRECTFX  prectfx 
)

Definition at line 566 of file umpdstubs.c.

569{
572}

◆ NtGdiPathToRegion()

__kernel_entry W32KAPI HRGN APIENTRY NtGdiPathToRegion ( _In_ HDC  hdc)

◆ NtGdiPlgBlt()

__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 
)

Referenced by PlgBlt().

◆ NtGdiPolyDraw()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiPolyDraw ( _In_ HDC  hdc,
_In_reads_(cpt) LPPOINT  ppt,
_In_reads_(cpt) LPBYTE  pjAttr,
_In_ ULONG  cpt 
)

Referenced by PolyDraw().

◆ NtGdiPolyPatBlt()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiPolyPatBlt ( _In_ HDC  hdc,
_In_ DWORD  rop4,
_In_reads_(cPoly) PPOLYPATBLT  pPoly,
_In_ DWORD  cPoly,
_In_ DWORD  dwMode 
)

Referenced by PolyPatBlt().

◆ NtGdiPolyPolyDraw()

◆ NtGdiPolyTextOutW()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiPolyTextOutW ( _In_ HDC  hdc,
_In_reads_(cStr) POLYTEXTW pptw,
_In_ UINT  cStr,
_In_ DWORD  dwCodePage 
)

◆ NtGdiPtInRegion()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiPtInRegion ( _In_ HRGN  hrgn,
_In_ INT  x,
_In_ INT  y 
)

Definition at line 3996 of file region.c.

4003{
4004 PREGION prgn;
4005 BOOL bResult;
4006
4007 /* Lock the region */
4008 prgn = REGION_LockRgn(hrgn);
4009 if (prgn == NULL)
4010 {
4011 DPRINT1("NtGdiPtInRegion: hrgn error\n");
4012 return FALSE;
4013 }
4014
4015 /* Call the internal function */
4016 bResult = REGION_PtInRegion(prgn, x, y);
4017
4018 /* Unlock and return the result */
BOOL FASTCALL REGION_PtInRegion(PREGION prgn, INT X, INT Y)
Definition: region.c:2582

Referenced by IntPtInWindow(), and PtInRegion().

◆ NtGdiPtVisible()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiPtVisible ( _In_ HDC  hdc,
_In_ INT  x,
_In_ INT  y 
)

◆ NtGdiQueryFontAssocInfo()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiQueryFontAssocInfo ( _In_ HDC  hdc)

Referenced by GetFontAssocStatus().

◆ NtGdiQueryFonts()

__kernel_entry W32KAPI INT APIENTRY NtGdiQueryFonts ( _Out_writes_(nBufferSize) PUNIVERSAL_FONT_ID  pufiFontList,
_In_ ULONG  nBufferSize,
_Out_ PLARGE_INTEGER  pTimeStamp 
)

◆ NtGdiRectangle()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiRectangle ( _In_ HDC  hdc,
_In_ INT  xLeft,
_In_ INT  yTop,
_In_ INT  xRight,
_In_ INT  yBottom 
)

Referenced by Rectangle().

◆ NtGdiRectInRegion()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiRectInRegion ( _In_ HRGN  hrgn,
_Inout_ LPRECT  prcl 
)

Definition at line 4023 of file region.c.

4029{
4030 RECTL rcTemp;
4031
4032 /* Probe and copy the rect */
4033 _SEH2_TRY
4034 {
4035 ProbeForRead(prclUnsafe, sizeof(RECT), 1);
4036 rcTemp = *prclUnsafe;
4037 }
4039 {
4040 DPRINT1("NtGdiRectInRegion: Exception accessing the rect\n");
4041 return FALSE;
4042 }
4043 _SEH2_END;
4044

Referenced by RectInRegion().

◆ NtGdiRectVisible()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiRectVisible ( _In_ HDC  hdc,
_In_ LPRECT  prc 
)

◆ NtGdiRemoveFontMemResourceEx()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiRemoveFontMemResourceEx ( _In_ HANDLE  hMMFont)

Referenced by RemoveFontMemResourceEx().

◆ NtGdiRemoveFontResourceW()

__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 
)

◆ NtGdiRemoveMergeFont()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiRemoveMergeFont ( _In_ HDC  hdc,
_In_ UNIVERSAL_FONT_ID pufi 
)

◆ NtGdiResetDC()

__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 
)

Definition at line 122 of file dcstate.c.

128{
129 /* According to a comment in Windows SDK the size of the buffer for
130 pdm is (pdm->dmSize + pdm->dmDriverExtra) */
132 return FALSE;
133}

Referenced by ResetDCA(), and ResetDCW().

◆ NtGdiResizePalette()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiResizePalette ( _In_ HPALETTE  hpal,
_In_ UINT  cEntry 
)

Referenced by ResizePalette().

◆ NtGdiRestoreDC()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiRestoreDC ( _In_ HDC  hdc,
_In_ INT  iLevel 
)

◆ NtGdiRoundRect()

__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 
)

Referenced by RoundRect().

◆ NtGdiSaveDC()

◆ NtGdiScaleViewportExtEx()

__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 
)

Referenced by ScaleViewportExtEx().

◆ NtGdiScaleWindowExtEx()

__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 
)

Referenced by ScaleWindowExtEx().

◆ NtGdiSelectBitmap()

◆ NtGdiSelectBrush()

◆ NtGdiSelectClipPath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSelectClipPath ( _In_ HDC  hdc,
_In_ INT  iMode 
)

Referenced by SelectClipPath().

◆ NtGdiSelectFont()

__kernel_entry W32KAPI HFONT APIENTRY NtGdiSelectFont ( _In_ HDC  hdc,
_In_ HFONT  hf 
)

Definition at line 597 of file dcobjs.c.

600{
601 HFONT hfontOld;
602 PDC pdc;
603
604 /* Check parameters */
605 if ((hdc == NULL) || (hfont == NULL))
606 {
607 return NULL;
608 }
609
610 /* Lock the DC */
611 pdc = DC_LockDc(hdc);
612 if (!pdc)
613 {
614 return NULL;
615 }
616
617 /* Call the internal function */
618 hfontOld = DC_hSelectFont(pdc, hfont);
619
620 /* Unlock the DC */
621 DC_UnlockDc(pdc);
622
623 /* Return the previously selected font */
624 return hfontOld;
625}
static HFONT hfont
HFONT NTAPI DC_hSelectFont(_In_ PDC pdc, _In_ HFONT hlfntNew)
Definition: dcobjs.c:550

Referenced by co_IntInitializeDesktopGraphics(), GdiSelectFont(), IntDrawMenuBarTemp(), IntPaintDesktop(), MENU_CalcItemSize(), MENU_DrawMenuBar(), MENU_DrawMenuItem(), MENU_DrawPopupGlyph(), MENU_DrawPopupMenu(), MENU_PopupMenuCalcSize(), MENU_SelectItem(), MENU_ShowSubPopup(), START_TEST(), UITOOLS95_DFC_ButtonCheckRadio(), UITOOLS95_DrawFrameCaption(), UITOOLS95_DrawFrameMenu(), UITOOLS95_DrawFrameScroll(), and UserDrawCaptionText().

◆ NtGdiSelectPen()

◆ NtGdiSetBitmapAttributes()

__kernel_entry W32KAPI HBITMAP APIENTRY NtGdiSetBitmapAttributes ( _In_ HBITMAP  hbm,
_In_ DWORD  dwFlags 
)

Referenced by SetBitmapAttributes().

◆ NtGdiSetBitmapBits()

__kernel_entry W32KAPI LONG APIENTRY NtGdiSetBitmapBits ( _In_ HBITMAP  hbm,
_In_ ULONG  cj,
_In_reads_bytes_(cj) PBYTE  pjInit 
)

Referenced by START_TEST().

◆ NtGdiSetBitmapDimension()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetBitmapDimension ( _In_ HBITMAP  hbm,
_In_ INT  cx,
_In_ INT  cy,
_In_opt_ LPSIZE  psizeOut 
)

◆ NtGdiSetBoundsRect()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiSetBoundsRect ( _In_ HDC  hdc,
_In_ LPRECT  prc,
_In_ DWORD  f 
)

◆ NtGdiSetBrushAttributes()

__kernel_entry W32KAPI HBRUSH APIENTRY NtGdiSetBrushAttributes ( _In_ HBRUSH  hbm,
_In_ DWORD  dwFlags 
)

Definition at line 553 of file brush.cpp.

556{
557 PBRUSH pbr;
558 if ( dwFlags & SC_BB_STOCKOBJ )
559 {
561 {
562 pbr = BRUSH::LockAny(hbr);
563 if (pbr == NULL)
564 {
565 ERR("Failed to lock brush %p\n", hbr);
566 return NULL;
567 }
568 pbr->vReleaseAttribute();
569 pbr->vUnlock();
570 return hbr;
571 }
572 }
573 return NULL;
574}
BOOL NTAPI GDIOBJ_ConvertToStockObj(HGDIOBJ *phObj)
Definition: gdiobj.c:1455

Referenced by SetBrushAttributes().

◆ NtGdiSetColorAdjustment()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetColorAdjustment ( _In_ HDC  hdc,
_In_ PCOLORADJUSTMENT  pca 
)

◆ NtGdiSetColorSpace()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetColorSpace ( _In_ HDC  hdc,
_In_ HCOLORSPACE  hColorSpace 
)

Referenced by SetColorSpace().

◆ NtGdiSetDeviceGammaRamp()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetDeviceGammaRamp ( _In_ HDC  hdc,
_In_reads_bytes_(sizeof(GAMMARAMP)) LPVOID  lpGammaRamp 
)

Referenced by SetDeviceGammaRamp().

◆ NtGdiSetDIBitsToDeviceInternal()

__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 
)

Referenced by SetDIBitsToDevice(), and START_TEST().

◆ NtGdiSetFontEnumeration()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiSetFontEnumeration ( _In_ ULONG  ulType)

◆ NtGdiSetFontXform()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetFontXform ( _In_ HDC  hdc,
_In_ DWORD  dwxScale,
_In_ DWORD  dwyScale 
)

◆ NtGdiSetIcmMode()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetIcmMode ( _In_ HDC  hdc,
_In_ ULONG  nCommand,
_In_ ULONG  ulMode 
)

◆ NtGdiSetLayout()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiSetLayout ( _In_ HDC  hdc,
_In_ LONG  wox,
_In_ DWORD  dwLayout 
)

◆ NtGdiSetLinkedUFIs()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetLinkedUFIs ( _In_ HDC  hdc,
_In_reads_(uNumUFIs) PUNIVERSAL_FONT_ID  pufiLinks,
_In_ ULONG  uNumUFIs 
)

◆ NtGdiSetMagicColors()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetMagicColors ( _In_ HDC  hdc,
_In_ PALETTEENTRY  peMagic,
_In_ ULONG  Index 
)

◆ NtGdiSetMetaRgn()

__kernel_entry W32KAPI INT APIENTRY NtGdiSetMetaRgn ( _In_ HDC  hdc)

Referenced by SetMetaRgn().

◆ NtGdiSetMiterLimit()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetMiterLimit ( _In_ HDC  hdc,
_In_ DWORD  dwNew,
_Inout_opt_ PDWORD  pdwOut 
)

Referenced by SetMiterLimit().

◆ NtGdiSetPixel()

__kernel_entry W32KAPI COLORREF APIENTRY NtGdiSetPixel ( _In_ HDC  hdcDst,
_In_ INT  x,
_In_ INT  y,
_In_ COLORREF  crColor 
)

FIXME: we shouldn't dereference pSurface while the PDEV is not locked!

Definition at line 1423 of file bitblt.c.

1428{
1429 PDC pdc;
1430 ULONG iOldColor, iSolidColor;
1431 BOOL bResult;
1432 PEBRUSHOBJ pebo;
1433 ULONG ulDirty;
1434 EXLATEOBJ exlo;
1435
1436 /* Lock the DC */
1437 pdc = DC_LockDc(hdc);
1438 if (!pdc)
1439 {
1441 return -1;
1442 }
1443
1444 /* Check if the DC has no surface (empty mem or info DC) */
1445 if (pdc->dclevel.pSurface == NULL)
1446 {
1447 /* Fail! */
1448 DC_UnlockDc(pdc);
1449 return -1;
1450 }
1451
1452 if (pdc->fs & (DC_ACCUM_APP|DC_ACCUM_WMGR))
1453 {
1454 RECTL rcDst;
1455
1456 RECTL_vSetRect(&rcDst, x, y, x+1, y+1);
1457
1458 IntLPtoDP(pdc, (LPPOINT)&rcDst, 2);
1459
1460 rcDst.left += pdc->ptlDCOrig.x;
1461 rcDst.top += pdc->ptlDCOrig.y;
1462 rcDst.right += pdc->ptlDCOrig.x;
1463 rcDst.bottom += pdc->ptlDCOrig.y;
1464
1465 IntUpdateBoundsRect(pdc, &rcDst);
1466 }
1467
1468 /* Translate the color to the target format */
1469 iSolidColor = TranslateCOLORREF(pdc, crColor);
1470
1471 /* Use the DC's text brush, which is always a solid brush */
1472 pebo = &pdc->eboText;
1473
1474 /* Save the old solid color and set the one for the pixel */
1475 iOldColor = EBRUSHOBJ_iSetSolidColor(pebo, iSolidColor);
1476
1477 /* Save dirty flags and reset dirty text brush flag */
1478 ulDirty = pdc->pdcattr->ulDirty_;
1479 pdc->pdcattr->ulDirty_ &= ~DIRTY_TEXT;
1480
1481 /* Call the internal function */
1482 bResult = IntPatBlt(pdc, x, y, 1, 1, PATCOPY, pebo);
1483
1484 /* Restore old text brush color and dirty flags */
1485 EBRUSHOBJ_iSetSolidColor(pebo, iOldColor);
1486 pdc->pdcattr->ulDirty_ = ulDirty;
1487
1489 /* Initialize an XLATEOBJ from the target surface to RGB */
1491 pdc->dclevel.pSurface->ppal,
1492 &gpalRGB,
1493 0,
1494 pdc->pdcattr->crBackgroundClr,
1495 pdc->pdcattr->crForegroundClr);
1496
1497 /* Translate the color back to RGB */
1498 crColor = XLATEOBJ_iXlate(&exlo.xlo, iSolidColor);
1499
1500 /* Cleanup and return the target format color */
1501 EXLATEOBJ_vCleanup(&exlo);
1502
1503 /* Unlock the DC */
1504 DC_UnlockDc(pdc);
1505
1506 /* Return the new RGB color or -1 on failure */
1507 return bResult ? crColor : -1;
1508}
VOID FASTCALL IntUpdateBoundsRect(PDC, PRECTL)
Definition: dcutil.c:694
@ DC_ACCUM_APP
Definition: dc.h:25
@ DC_ACCUM_WMGR
Definition: dc.h:24
FORCEINLINE ULONG EBRUSHOBJ_iSetSolidColor(EBRUSHOBJ *pebo, ULONG iSolidColor)
Definition: brush.h:187
long bottom
Definition: polytest.cpp:53
long right
Definition: polytest.cpp:53
long top
Definition: polytest.cpp:53
long left
Definition: polytest.cpp:53
FORCEINLINE VOID RECTL_vSetRect(_Out_ RECTL *prcl, _In_ LONG left, _In_ LONG top, _In_ LONG right, _In_ LONG bottom)
Definition: rect.h:5
#define PATCOPY
Definition: wingdi.h:335

Referenced by SetPixel(), and START_TEST().

◆ NtGdiSetPixelFormat()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetPixelFormat ( _In_ HDC  hdc,
_In_ INT  ipfd 
)

Definition at line 126 of file wingl.c.

129{
130 PDC pdc;
131 PPDEVOBJ ppdev;
132 HWND hWnd;
133 PWNDOBJ pWndObj;
134 SURFOBJ *pso = NULL;
135 BOOL Ret = FALSE;
136
137 DPRINT1("Setting pixel format from win32k!\n");
138
139 pdc = DC_LockDc(hdc);
140 if (!pdc)
141 {
143 return FALSE;
144 }
145
146 if (!pdc->ipfdDevMax)
147 IntGetipfdDevMax(pdc);
148
149 if ( ipfd < 1 ||
150 ipfd > pdc->ipfdDevMax )
151 {
153 goto Exit;
154 }
155
157 hWnd = UserGethWnd(hdc, &pWndObj);
158 UserLeave();
159
160 if (!hWnd)
161 {
163 goto Exit;
164 }
165
166 ppdev = pdc->ppdev;
167
168 /*
169 WndObj is needed so exit on NULL pointer.
170 */
171 if (pWndObj)
172 pso = pWndObj->psoOwner;
173 else
174 {
176 goto Exit;
177 }
178
179 if (ppdev->flFlags & PDEV_META_DEVICE)
180 {
182 goto Exit;
183 }
184
186 {
187 Ret = ppdev->DriverFunctions.SetPixelFormat(
188 pso,
189 ipfd,
190 hWnd);
191 }
192
193Exit:
194 DC_UnlockDc(pdc);
195 return Ret;
196}
HWND hWnd
Definition: settings.c:17
HWND FASTCALL UserGethWnd(HDC, PWNDOBJ *)
Definition: windc.c:953
static INT FASTCALL IntGetipfdDevMax(PDC pdc)
Definition: wingl.c:17
_In_ INT ipfd
Definition: ntgdi.h:474
VOID FASTCALL UserLeave(VOID)
Definition: ntuser.c:251
VOID FASTCALL UserEnterExclusive(VOID)
Definition: ntuser.c:242
@ PDEV_META_DEVICE
Definition: pdevobj.h:20
static void Exit(void)
Definition: sock.c:1330
PFN_DrvSetPixelFormat SetPixelFormat
Definition: ntgdityp.h:623
FLONG flFlags
Definition: pdevobj.h:87
DRIVER_FUNCTIONS DriverFunctions
Definition: pdevobj.h:137
SURFOBJ * psoOwner
Definition: winddi.h:1230
_In_ HANDLE _In_ SURFOBJ * pso
Definition: winddi.h:3665
#define ERROR_INVALID_PIXEL_FORMAT
Definition: winerror.h:1179
#define ERROR_INVALID_WINDOW_STYLE
Definition: winerror.h:1181

◆ NtGdiSetPUMPDOBJ()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetPUMPDOBJ ( _In_opt_ HUMPD  humpd,
_In_ BOOL  bStoreID,
_Inout_opt_ HUMPD *  phumpd,
_Out_opt_ BOOL pbWOW64 
)

Definition at line 19 of file umpdstubs.c.

24{
26 return FALSE;
27}

◆ NtGdiSetRectRgn()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetRectRgn ( _In_ HRGN  hrgn,
_In_ INT  xLeft,
_In_ INT  yTop,
_In_ INT  xRight,
_In_ INT  yBottom 
)

Definition at line 4048 of file region.c.

4057{
4058 PREGION prgn;
4059
4060 /* Lock the region */
4061 prgn = REGION_LockRgn(hrgn);
4062 if (prgn == NULL)
4063 {
4064 return FALSE;
4065 }
4066
4067 /* Call the internal API */
4068 REGION_SetRectRgn(prgn, xLeft, yTop, xRight, yBottom);
4069
4070 /* Unlock the region and return success */
VOID FASTCALL REGION_SetRectRgn(PREGION rgn, INT LeftRect, INT TopRect, INT RightRect, INT BottomRect)
Definition: region.c:2665

Referenced by co_UserGetUpdateRgn(), and SetRectRgn().

◆ NtGdiSetSizeDevice()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetSizeDevice ( _In_ HDC  hdc,
_In_ INT  cxVirtualDevice,
_In_ INT  cyVirtualDevice 
)

◆ NtGdiSetSystemPaletteUse()

__kernel_entry W32KAPI UINT APIENTRY NtGdiSetSystemPaletteUse ( _In_ HDC  hdc,
_In_ UINT  ui 
)

◆ NtGdiSetTextJustification()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetTextJustification ( _In_ HDC  hdc,
_In_ INT  lBreakExtra,
_In_ INT  cBreak 
)

◆ NtGdiSetUMPDSandboxState()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiSetUMPDSandboxState ( _In_ BOOL  bEnabled)

◆ NtGdiSetupPublicCFONT()

__kernel_entry W32KAPI INT APIENTRY NtGdiSetupPublicCFONT ( _In_ HDC  hdc,
_In_opt_ HFONT  hf,
_In_ ULONG  ulAve 
)

◆ NtGdiSetVirtualResolution()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSetVirtualResolution ( _In_ HDC  hdc,
_In_ INT  cxVirtualDevicePixel,
_In_ INT  cyVirtualDevicePixel,
_In_ INT  cxVirtualDeviceMm,
_In_ INT  cyVirtualDeviceMm 
)

Referenced by SetVirtualResolution().

◆ NtGdiStartDoc()

__kernel_entry W32KAPI INT APIENTRY NtGdiStartDoc ( _In_ HDC  hdc,
_In_ DOCINFOW pdi,
_Out_ BOOL pbBanding,
_In_ INT  iJob 
)

Referenced by StartDocW().

◆ NtGdiStartPage()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiStartPage ( _In_ HDC  hdc)

Referenced by StartPage().

◆ NtGdiStretchBlt()

__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 
)

◆ NtGdiStretchDIBitsInternal()

__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 
)

Referenced by StretchDIBits().

◆ NtGdiSTROBJ_bEnum()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSTROBJ_bEnum ( _In_ STROBJ pstro,
_Out_ ULONG pc,
_Outptr_result_buffer_ *pc PGLYPHPOS ppgpos 
)

Definition at line 623 of file umpdstubs.c.

627{
629 return FALSE;
630}

◆ NtGdiSTROBJ_bEnumPositionsOnly()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSTROBJ_bEnumPositionsOnly ( _In_ STROBJ pstro,
_Out_ ULONG pc,
_Outptr_result_buffer_ *pc PGLYPHPOS ppgpos 
)

Definition at line 635 of file umpdstubs.c.

639{
641 return FALSE;
642}

◆ NtGdiSTROBJ_bGetAdvanceWidths()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSTROBJ_bGetAdvanceWidths ( _In_ STROBJ pstro,
_In_ ULONG  iFirst,
_In_ ULONG  c,
_Out_writes_(c) POINTQF pptqD 
)

Definition at line 647 of file umpdstubs.c.

652{
654 return FALSE;
655}

◆ NtGdiSTROBJ_dwGetCodePage()

__kernel_entry W32KAPI DWORD APIENTRY NtGdiSTROBJ_dwGetCodePage ( _In_ STROBJ pstro)

Definition at line 670 of file umpdstubs.c.

672{
674 return 0;
675}

◆ NtGdiSTROBJ_vEnumStart()

__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiSTROBJ_vEnumStart ( _Inout_ STROBJ pstro)

Definition at line 660 of file umpdstubs.c.

662{
665}

◆ NtGdiStrokeAndFillPath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiStrokeAndFillPath ( _In_ HDC  hdc)

Referenced by StrokeAndFillPath().

◆ NtGdiStrokePath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiStrokePath ( _In_ HDC  hdc)

Referenced by StrokePath().

◆ NtGdiSwapBuffers()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiSwapBuffers ( _In_ HDC  hdc)

Definition at line 200 of file wingl.c.

202{
203 PDC pdc;
204 PPDEVOBJ ppdev;
205 HWND hWnd;
206 PWNDOBJ pWndObj;
207 SURFOBJ *pso = NULL;
208 BOOL Ret = FALSE;
209
210 pdc = DC_LockDc(hdc);
211 if (!pdc)
212 {
214 return FALSE;
215 }
216
218 hWnd = UserGethWnd(hdc, &pWndObj);
219 UserLeave();
220
221 if (!hWnd)
222 {
224 goto Exit;
225 }
226
227 ppdev = pdc->ppdev;
228
229 /*
230 WndObj is needed so exit on NULL pointer.
231 */
232 if (pWndObj)
233 pso = pWndObj->psoOwner;
234 else
235 {
237 goto Exit;
238 }
239
240 if (ppdev->flFlags & PDEV_META_DEVICE)
241 {
243 goto Exit;
244 }
245
246 if (ppdev->DriverFunctions.SwapBuffers)
247 {
248 Ret = ppdev->DriverFunctions.SwapBuffers(pso, pWndObj);
249 }
250
251Exit:
252 DC_UnlockDc(pdc);
253 return Ret;
254}
PFN_DrvSwapBuffers SwapBuffers
Definition: ntgdityp.h:625

◆ NtGdiTileBitBlt()

__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 
)

◆ NtGdiTransformPoints()

__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 
)

Referenced by DPtoLP(), LPtoDP(), and START_TEST().

◆ NtGdiTransparentBlt()

__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 
)

Referenced by GdiTransparentBlt().

◆ NtGdiUMPDEngFreeUserMem()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiUMPDEngFreeUserMem ( _In_ KERNEL_PVOID ppv)

Definition at line 9 of file umpdstubs.c.

11{
13 return FALSE;
14}

◆ NtGdiUnloadPrinterDriver()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiUnloadPrinterDriver ( _In_reads_bytes_(cbDriverName) LPWSTR  pDriverName,
_In_ ULONG  cbDriverName 
)

◆ NtGdiUnmapMemFont()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiUnmapMemFont ( _In_ PVOID  pvView)

◆ NtGdiUnrealizeObject()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiUnrealizeObject ( _In_ HANDLE  h)

◆ NtGdiUpdateColors()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiUpdateColors ( _In_ HDC  hdc)

Referenced by UpdateColors().

◆ NtGdiUpdateTransform()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiUpdateTransform ( _In_ HDC  hdc)

◆ NtGdiWidenPath()

__kernel_entry W32KAPI BOOL APIENTRY NtGdiWidenPath ( _In_ HDC  hdc)

Referenced by WidenPath().

◆ NtGdiXFORMOBJ_bApplyXform()

__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 
)

Definition at line 680 of file umpdstubs.c.

686{
688 return FALSE;
689}

◆ NtGdiXFORMOBJ_iGetXform()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiXFORMOBJ_iGetXform ( _In_ XFORMOBJ pxo,
_Out_opt_ XFORML pxform 
)

Definition at line 694 of file umpdstubs.c.

697{
699 return 0;
700}

◆ NtGdiXLATEOBJ_cGetPalette()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiXLATEOBJ_cGetPalette ( _In_ XLATEOBJ pxlo,
_In_ ULONG  iPal,
_In_ ULONG  cPal,
_Out_writes_(cPal) ULONG pPal 
)

Definition at line 705 of file umpdstubs.c.

710{
712 return 0;
713}

◆ NtGdiXLATEOBJ_hGetColorTransform()

__kernel_entry W32KAPI HANDLE APIENTRY NtGdiXLATEOBJ_hGetColorTransform ( _In_ XLATEOBJ pxlo)

Definition at line 729 of file umpdstubs.c.

731{
733 return 0;
734}

◆ NtGdiXLATEOBJ_iXlate()

__kernel_entry W32KAPI ULONG APIENTRY NtGdiXLATEOBJ_iXlate ( _In_ XLATEOBJ pxlo,
_In_ ULONG  iColor 
)

Definition at line 718 of file umpdstubs.c.

721{
723 return 0;
724}

Variable Documentation

◆ cj

Definition at line 2473 of file ntgdi.h.

◆ cjBuf

Definition at line 2035 of file ntgdi.h.

◆ cjBuffer

_In_ ULONG cjBuffer

◆ cjMaxBits

◆ cjMaxInfo

◆ cjpfd

Definition at line 475 of file ntgdi.h.

◆ cScans

Definition at line 2778 of file ntgdi.h.

Referenced by _Success_(), and test_pack_EMRSETDIBITSTODEVICE().

◆ dwIn

Definition at line 249 of file ntgdi.h.

Referenced by _Success_(), CheckDPA(), EMFDC_SetD(), GetAndSetDCDWord(), and METADC_SetD().

◆ dwOffset

◆ dwTable

_In_ DWORD dwTable

Definition at line 2032 of file ntgdi.h.

Referenced by GetFontData().

◆ f

Definition at line 2819 of file ntgdi.h.

◆ hbm

Definition at line 2776 of file ntgdi.h.

Referenced by _Success_(), CImageDx::Attach(), Bitmap::Bitmap(), BitmapFromHEMF(), BitmapFromIcon(), CachedBufferDIB(), cicChangeBitmapColor(), ClearBitmapAttributes(), ClearBrushAttributes(), ComponentFactory_CreateBitmapFromHBITMAP(), ConvertToBlackAndWhite(), CopyDIBImage(), CopyMonoImage(), Create24BppBitmap(), CreateCheckImage(), CreateCheckMask(), createImageList(), ATL::CImage::CreateInternal(), CreateMappedBitmap(), CreateMonoBitmap(), CreateRadioImage(), CreateRadioMask(), CShellLink::CreateShortcutIcon(), CreateSinkBmp(), device_load_logo(), DoLoadPicture(), DoTestEntry(), SelectionModel::DrawSelection(), DrawShadowText(), DrawTileBitmap(), ExtractOneBitmap(), Bitmap::FromHBITMAP(), GdiConvertBitmap(), GdipCreateBitmapFromHBITMAP(), GdipCreateBitmapFromResource(), GdipCreateBitmapFromStream(), get_16bpp_format(), get_data_from_bitmap(), GetBitmapAttributes(), GreCreateDIBitmapFromPackedDIB(), HLPFILE_RtfAddTransparentBitmap(), COpenWithMenu::IconToBitmap(), image_list_add_bitmap(), ImagingFactory_CreateBitmapFromHBITMAP(), Imm32LoadBitmapFromBytes(), Imm32StoreBitmapToBytes(), IntCreate32BppBitmap(), IntDrawState(), IntGetWindowBitmap(), IntMakeGhostImage(), IntSynthesizeDib(), IsBitmapBlackAndWhite(), ATL::CImage::Load(), CImageDx::LoadDx(), LV_Init(), NtGdiClearBitmapAttributes(), NtGdiCreateDIBBrush(), NtGdiGetObjectBitmapHandle(), NtGdiSetBitmapAttributes(), CMainWindow::OnCommand(), ImageModel::PushImageForUndo(), ImageModel::RotateNTimes90Degrees(), SelectionModel::RotateNTimes90Degrees(), SetBitmapAttributes(), SetBrushAttributes(), SkewDIB(), SnapWindow(), START_TEST(), test_alpha_hdc(), test_bitmap_info(), test_buffered_paint(), test_createdibitmap(), test_dib_info(), test_GdipCreateBitmapFromHBITMAP(), test_GetDIBits_BI_BITFIELDS(), test_getitemrect(), test_hdc_caching(), test_imagelist_storage(), test_InsertMenu(), test_item_auto_format(), test_layered_window(), test_LoadImageBitmap(), test_menu_bmp_and_string(), test_menu_iteminfo(), test_select_object(), TREEVIEW_InitCheckboxes(), ui_create_glyph(), and anonymous_namespace{activex.cpp}::win32_create_dib().

◆ ipfd

_In_ INT ipfd

Definition at line 474 of file ntgdi.h.

Referenced by _Success_(), and NtGdiSetPixelFormat().

◆ iPoint

_In_ UINT iPoint

Definition at line 2197 of file ntgdi.h.

Referenced by ChangeColSize(), GreGetDCPoint(), MainWndProc(), and NtGdiGetDCPoint().

◆ iStartScan

_In_ HBITMAP _In_ UINT iStartScan

Definition at line 2777 of file ntgdi.h.

Referenced by _Success_(), and test_pack_EMRSETDIBITSTODEVICE().

◆ iUsage

◆ iXform

_In_ DWORD iXform

Definition at line 2251 of file ntgdi.h.

Referenced by NtGdiGetTransform().

◆ pbmi

◆ pDevCaps

_Out_ PDEVCAPS pDevCaps

Definition at line 2664 of file ntgdi.h.

Referenced by _Success_(), GetDeviceCaps(), and PDEVOBJ_vGetDeviceCaps().

◆ pdwOut

◆ pdwResult

◆ pptOut

◆ prc

Definition at line 1658 of file ntgdi.h.

Referenced by COMPWND::_ClientToScreen(), BitmapImpl_CopyPixels(), BitmapScaler_CopyPixels(), BitmapTestSrc_CopyPixels(), BmpFrameDecode_CopyPixels(), BmpFrameEncode_WriteSource(), BufferedPaintClear(), BufferedPaintSetAlpha(), BUTTON_WindowProc(), cicChangeBitmapColor(), cicConvertBlackBKGBitmap(), cicCreateDisabledBitmap(), cicCreateMaskBmp(), cicCreateShadowMaskBmp(), cicDrawMaskBmpOnDC(), cicGetScreenRect(), cicGetWorkAreaRect(), ClipOrCenterRectToMonitor(), ColorTransform_CopyPixels(), compare_bitmap_data(), copypixels_to_24bppBGR(), copypixels_to_24bppRGB(), copypixels_to_32bppBGR(), copypixels_to_32bppBGRA(), copypixels_to_32bppGrayFloat(), copypixels_to_32bppPBGRA(), copypixels_to_32bppPRGBA(), copypixels_to_32bppRGB(), copypixels_to_32bppRGBA(), copypixels_to_8bppGray(), copypixels_to_8bppIndexed(), CreateEllipticRgnIndirect(), CreateRectRgnIndirect(), DECLARE_INTERFACE_(), CToolSettingsWindow::drawAirBrush(), CToolSettingsWindow::drawBox(), CToolSettingsWindow::drawBrush(), drawColorBox(), CToolSettingsWindow::drawLine(), CToolSettingsWindow::drawRubber(), DrawShadowText(), CUIFTheme::DrawThemeParentBackground(), DrawThemeParentBackground(), DrawTileBitmap(), CToolSettingsWindow::drawTrans(), DrawXorRect(), FlipRotator_CopyPixels(), for(), FormatConverter_CopyPixels(), GdiAddGlsBounds(), get_image_part_size(), getAirBrushRects(), GetBoundsRectAlt(), getBoxRects(), getBrushRects(), GetBufferedPaintTargetRect(), getColorBoxRect(), CTextEditWindow::GetEditRect(), getLineRects(), getRubberRects(), CInputContextOwner::GetScreenExt(), CMenuSite::GetSize(), getSizeBoxRect(), getSplitRects(), CUIFTheme::GetThemeMargins(), GetThemeMargins(), CUIFTheme::GetThemePartSize(), GetThemePartSize(), getTransRects(), Window::GetWorkArea(), GifFrameDecode_CopyPixels(), IcoFrameDecode_CopyPixels(), ImageListImpl_GetImageRect(), ITextHostImpl_TxGetClientRect(), ITextHostImpl_TxGetViewInset(), ITextHostImpl_TxInvalidateRect(), IWICBitmapClipper_Initialize_Proxy_W(), IWICBitmapFrameEncode_WriteSource_Proxy_W(), IWICBitmapSource_CopyPixels_Proxy_W(), MainWndProc(), MD_Edit_OnGetRect(), MD_Edit_OnSetRect(), MD_Edit_OnSetRectNP(), MD_ListView_OnGetItemRect(), MD_ListView_OnGetSubItemRect(), MD_ListView_OnGetViewRect(), MD_ListView_OnGetWorkAreas(), MD_ListView_OnSetWorkAreas(), MD_rect_text(), MD_TreeView_OnGetItemRect(), MonSelGetMonitorRect(), MonSelMonInfoToRect(), MonSelMoveDragRect(), MonSelPaintMonitor(), MonSelRectToScreen(), CTipbarItem::MyClientToScreen(), nccalchelper(), NtGdiGetBoundsRect(), NtGdiSetBoundsRect(), CTrayShowDesktopButton::OnDraw(), CTaskBand::OnPosRectChangeDB(), CBaseBar::OnPosRectChangeDB(), CMenuDeskBar::OnPosRectChangeDB(), CMenuBand::OnPosRectChangeDB(), Preview_OnMoveSize(), ScriptStringOut(), SetBoundsRect(), SetBoundsRectAlt(), CUTBContextMenu::ShowPopup(), SlideWindow(), SS_ItemOut(), TAB_AdjustRect(), TgaDecoder_Frame_CopyPixels(), CTextEditWindow::ValidateEditRect(), wine_dbgstr_rect(), and write_source().

◆ prcOut

_Out_ LPRECT prcOut

Definition at line 2801 of file ntgdi.h.

Referenced by GetRgnBox().

◆ psize

◆ pxf

Definition at line 2252 of file ntgdi.h.

◆ u

Definition at line 248 of file ntgdi.h.

◆ x

Definition at line 2635 of file ntgdi.h.

◆ y

Definition at line 2636 of file ntgdi.h.