4#define UNIMPLEMENTED DbgPrint("(%s:%i) WIN32K: %s UNIMPLEMENTED\n", __FILE__, __LINE__, __FUNCTION__ )
#define STATUS_NOT_IMPLEMENTED
static HMODULE MODULEINFO DWORD cb
static SCRIPT_CACHE SCRIPT_ANALYSIS OPENTYPE_TAG OPENTYPE_TAG int TEXTRANGE_PROPERTIES int const WCHAR int cChars
#define _Post_count_(size)
#define _Outptr_result_buffer_(s)
#define _Out_writes_bytes_(s)
_In_ UINT _Out_ PPOINTL pptOut
__kernel_entry PVOID APIENTRY NtGdiBRUSHOBJ_pvAllocRbrush(_In_ BRUSHOBJ *pbo, _In_ ULONG cj)
__kernel_entry NTSTATUS APIENTRY NtGdiPATHOBJ_vGetBounds(_In_ PATHOBJ *ppo, _Out_ PRECTFX prectfx)
__kernel_entry HBITMAP APIENTRY NtGdiEngCreateBitmap(_In_ SIZEL sizl, _In_ LONG lWidth, _In_ ULONG iFormat, _In_ FLONG fl, _In_opt_ PVOID pvBits)
__kernel_entry BOOL APIENTRY NtGdiEngAssociateSurface(_In_ HSURF hsurf, _In_ HDEV hdev, _In_ FLONG flHooks)
__kernel_entry HANDLE APIENTRY NtGdiXLATEOBJ_hGetColorTransform(_In_ XLATEOBJ *pxlo)
__kernel_entry 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 BOOL APIENTRY NtGdiEngMarkBandingSurface(_In_ HSURF hsurf)
__kernel_entry 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 ULONG APIENTRY NtGdiFONTOBJ_cGetGlyphs(_In_ FONTOBJ *pfo, _In_ ULONG iMode, _In_ ULONG cGlyph, _In_ HGLYPH *phg, _At_((GLYPHDATA **) ppvGlyph, _Outptr_) PVOID *ppvGlyph)
__kernel_entry ULONG APIENTRY NtGdiFONTOBJ_cGetAllGlyphHandles(_In_ FONTOBJ *pfo, _Out_opt_ _Post_count_(return) HGLYPH *phg)
__kernel_entry PVOID APIENTRY NtGdiBRUSHOBJ_pvGetRbrush(_In_ BRUSHOBJ *pbo)
__kernel_entry BOOL APIENTRY NtGdiPATHOBJ_bEnum(_In_ PATHOBJ *ppo, _Out_ PATHDATA *ppd)
__kernel_entry PATHOBJ *APIENTRY NtGdiCLIPOBJ_ppoGetPath(_In_ CLIPOBJ *pco)
__kernel_entry FD_GLYPHSET *APIENTRY NtGdiFONTOBJ_pfdg(_In_ FONTOBJ *pfo)
__kernel_entry BOOL APIENTRY NtGdiEngDeleteSurface(_In_ HSURF hsurf)
__kernel_entry NTSTATUS APIENTRY NtGdiEngDeleteClip(_In_ CLIPOBJ *pco)
__kernel_entry 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 CLIPOBJ *APIENTRY NtGdiEngCreateClip(VOID)
__kernel_entry IFIMETRICS *APIENTRY NtGdiFONTOBJ_pifi(_In_ FONTOBJ *pfo)
__kernel_entry 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 PFD_GLYPHATTR APIENTRY NtGdiFONTOBJ_pQueryGlyphAttrs(_In_ FONTOBJ *pfo, _In_ ULONG iMode)
__kernel_entry ULONG APIENTRY NtGdiCLIPOBJ_cEnumStart(_In_ CLIPOBJ *pco, _In_ BOOL bAll, _In_ ULONG iType, _In_ ULONG iDirection, _In_ ULONG cLimit)
__kernel_entry BOOL APIENTRY NtGdiSetPUMPDOBJ(_In_opt_ HUMPD humpd, _In_ BOOL bStoreID, _Inout_opt_ HUMPD *phumpd, _Out_opt_ BOOL *pbWOW64)
__kernel_entry PVOID APIENTRY NtGdiFONTOBJ_pvTrueTypeFontFile(_In_ FONTOBJ *pfo, _Out_ ULONG *pcjFile)
__kernel_entry BOOL APIENTRY NtGdiSTROBJ_bGetAdvanceWidths(_In_ STROBJ *pstro, _In_ ULONG iFirst, _In_ ULONG c, _Out_writes_(c) POINTQF *pptqD)
__kernel_entry DWORD APIENTRY NtGdiSTROBJ_dwGetCodePage(_In_ STROBJ *pstro)
__kernel_entry NTSTATUS APIENTRY NtGdiPATHOBJ_vEnumStartClipLines(_In_ PATHOBJ *ppo, _In_ CLIPOBJ *pco, _In_ SURFOBJ *pso, _In_ LINEATTRS *pla)
__kernel_entry XFORMOBJ *APIENTRY NtGdiFONTOBJ_pxoGetXform(_In_ FONTOBJ *pfo)
__kernel_entry 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 NTSTATUS APIENTRY NtGdiSTROBJ_vEnumStart(_Inout_ STROBJ *pstro)
__kernel_entry 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 ULONG APIENTRY NtGdiBRUSHOBJ_ulGetBrushColor(_In_ BRUSHOBJ *pbo)
__kernel_entry 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 BOOL APIENTRY NtGdiSTROBJ_bEnum(_In_ STROBJ *pstro, _Out_ ULONG *pc, _Outptr_result_buffer_(*pc) PGLYPHPOS *ppgpos)
__kernel_entry 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 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 NTSTATUS APIENTRY NtGdiFONTOBJ_vGetInfo(_In_ FONTOBJ *pfo, _In_ ULONG cjSize, _Out_writes_bytes_(cjSize) FONTINFO *pfi)
__kernel_entry NTSTATUS APIENTRY NtGdiPATHOBJ_vEnumStart(_In_ PATHOBJ *ppo)
__kernel_entry HANDLE APIENTRY NtGdiBRUSHOBJ_hGetColorTransform(_In_ BRUSHOBJ *pbo)
__kernel_entry 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 BOOL APIENTRY NtGdiSTROBJ_bEnumPositionsOnly(_In_ STROBJ *pstro, _Out_ ULONG *pc, _Outptr_result_buffer_(*pc) PGLYPHPOS *ppgpos)
__kernel_entry BOOL APIENTRY NtGdiPATHOBJ_bEnumClipLines(_In_ PATHOBJ *ppo, _In_ ULONG cb, _Out_writes_bytes_(cb) CLIPLINE *pcl)
__kernel_entry BOOL APIENTRY NtGdiEngCheckAbort(_In_ SURFOBJ *pso)
__kernel_entry 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 LONG APIENTRY NtGdiHT_Get8BPPFormatPalette(_Out_opt_ _Post_count_(return) LPPALETTEENTRY pPaletteEntry, _In_ USHORT RedGamma, _In_ USHORT GreenGamma, _In_ USHORT BlueGamma)
__kernel_entry BOOL APIENTRY NtGdiBRUSHOBJ_DeleteRbrush(_In_opt_ BRUSHOBJ *pbo, _In_opt_ BRUSHOBJ *pboB)
__kernel_entry ULONG APIENTRY NtGdiXLATEOBJ_cGetPalette(_In_ XLATEOBJ *pxlo, _In_ ULONG iPal, _In_ ULONG cPal, _Out_writes_(cPal) ULONG *pPal)
__kernel_entry ULONG APIENTRY NtGdiXLATEOBJ_iXlate(_In_ XLATEOBJ *pxlo, _In_ ULONG iColor)
__kernel_entry BOOL APIENTRY NtGdiCLIPOBJ_bEnum(_In_ CLIPOBJ *pco, _In_ ULONG cj, _Out_writes_bytes_(cj) ULONG *pul)
__kernel_entry HBITMAP APIENTRY NtGdiEngCreateDeviceBitmap(_In_ DHSURF dhsurf, _In_ SIZEL sizl, _In_ ULONG iFormatCompat)
__kernel_entry ULONG APIENTRY NtGdiXFORMOBJ_iGetXform(_In_ XFORMOBJ *pxo, _Out_opt_ XFORML *pxform)
__kernel_entry BOOL APIENTRY NtGdiUMPDEngFreeUserMem(_In_ KERNEL_PVOID *ppv)
__kernel_entry BOOL APIENTRY NtGdiEngEraseSurface(_In_ SURFOBJ *pso, _In_ RECTL *prcl, _In_ ULONG iColor)
__kernel_entry NTSTATUS APIENTRY NtGdiEngDeletePath(_In_ PATHOBJ *ppo)
__kernel_entry BOOL APIENTRY NtGdiEngPaint(_In_ SURFOBJ *pso, _In_ CLIPOBJ *pco, _In_ BRUSHOBJ *pbo, _In_ POINTL *pptlBrushOrg, _In_ MIX mix)
__kernel_entry 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 FD_GLYPHSET *APIENTRY NtGdiEngComputeGlyphSet(_In_ INT nCodePage, _In_ INT nFirstChar, _In_ INT cChars)
__kernel_entry HSURF APIENTRY NtGdiEngCreateDeviceSurface(_In_ DHSURF dhsurf, _In_ SIZEL sizl, _In_ ULONG iFormatCompat)
_In_ STROBJ _In_ FONTOBJ _In_ CLIPOBJ _Null_ RECTL * prclExtra
_In_ STROBJ _In_ FONTOBJ _In_ CLIPOBJ _Null_ RECTL _In_opt_ RECTL _In_ BRUSHOBJ * pboFore
_In_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL _In_ RECTL _In_ ULONG iTransColor
_Inout_ PATHOBJ _In_ CLIPOBJ _In_opt_ XFORMOBJ _In_ BRUSHOBJ * pboStroke
_In_ PATHOBJ _In_ CLIPOBJ _In_ BRUSHOBJ _In_ POINTL _In_ MIX _In_ FLONG flOptions
_In_ PATHOBJ _In_ CLIPOBJ _In_ BRUSHOBJ _In_ POINTL _In_ MIX mix
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG x2
_In_ HANDLE _In_ SURFOBJ * pso
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG y1
_In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ TRIVERTEX _In_ ULONG _In_ PVOID pMesh
_Inout_ SURFOBJ _In_opt_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_opt_ COLORADJUSTMENT * pca
_Inout_ PATHOBJ _In_ CLIPOBJ _In_opt_ XFORMOBJ _In_ BRUSHOBJ _In_ LINEATTRS _In_ BRUSHOBJ * pboFill
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
_In_opt_ SURFOBJ _In_opt_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL * prclTrg
_In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ TRIVERTEX _In_ ULONG _In_ PVOID _In_ ULONG _In_ RECTL _In_ POINTL * pptlDitherOrg
_In_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL * prclDst
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG _In_ LONG y2
_In_opt_ SURFOBJ _In_opt_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL _In_opt_ POINTL _In_opt_ POINTL _In_opt_ BRUSHOBJ _In_opt_ POINTL _In_ ROP4 rop4
_In_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL _In_ RECTL * prclSrc
_In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ TRIVERTEX _In_ ULONG nVertex
_In_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ * pxlo
_In_opt_ SURFOBJ _In_opt_ SURFOBJ * psoMask
_Inout_ SURFOBJ _In_opt_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_opt_ COLORADJUSTMENT _In_opt_ POINTL _In_ POINTFIX * pptfx
_Inout_ SURFOBJ _In_opt_ SURFOBJ * psoMsk
_In_opt_ SURFOBJ _In_opt_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL _In_opt_ POINTL * pptlSrc
_In_ STROBJ _In_ FONTOBJ _In_ CLIPOBJ _Null_ RECTL _In_opt_ RECTL _In_ BRUSHOBJ _In_ BRUSHOBJ * pboOpaque
typedef HSURF(APIENTRY FN_DrvEnableSurface)(_In_ DHPDEV dhpdev)
_In_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL _In_ RECTL _In_ ULONG _In_ ULONG ulReserved
_In_opt_ SURFOBJ _In_opt_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL _In_opt_ POINTL _In_opt_ POINTL _In_opt_ BRUSHOBJ * pbo
_In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ TRIVERTEX _In_ ULONG _In_ PVOID _In_ ULONG _In_ RECTL * prclExtents
_In_ ULONG _In_ CLIPOBJ _In_ RECTL * prcl
_In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ TRIVERTEX _In_ ULONG _In_ PVOID _In_ ULONG _In_ RECTL _In_ POINTL _In_ ULONG ulMode
_Inout_ PATHOBJ _In_ CLIPOBJ _In_opt_ XFORMOBJ _In_ BRUSHOBJ _In_ LINEATTRS * plineattrs
_In_opt_ SURFOBJ _In_opt_ SURFOBJ _In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ RECTL _In_opt_ POINTL _In_opt_ POINTL * pptlMask
_In_ PATHOBJ _In_ CLIPOBJ _In_ BRUSHOBJ _In_ POINTL * pptlBrushOrg
_In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ TRIVERTEX * pVertex
_In_ STROBJ _In_ FONTOBJ _In_ CLIPOBJ _Null_ RECTL _In_opt_ RECTL * prclOpaque
_In_ XLATEOBJ _In_ XFORMOBJ * pxo
_In_ SIZEL _In_ ULONG iFormat
_In_ STROBJ _In_ FONTOBJ _In_ CLIPOBJ _Null_ RECTL _In_opt_ RECTL _In_ BRUSHOBJ _In_ BRUSHOBJ _In_ POINTL * pptlOrg
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG _In_ LONG _In_opt_ RECTL * prclBounds
_In_ CLIPOBJ _In_opt_ XLATEOBJ _In_ TRIVERTEX _In_ ULONG _In_ PVOID _In_ ULONG nMesh
_In_ SURFOBJ _In_ CLIPOBJ * pco