2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Win32k subsystem
5 * PURPOSE: Main Win32K Header
6 * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
12 /* INCLUDES ******************************************************************/
19 #define _USE_MATH_DEFINES
25 #define NTDDI_VERSION NTDDI_WS03SP1
30 #include <ntstrsafe.h>
31 #include <ntintsafe.h>
33 /* Win32 PSDK headers */
34 /* FIXME: Defines in winbase.h that we need... */
35 typedef struct _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES
, *LPSECURITY_ATTRIBUTES
;
36 #define MAKEINTATOM(i) (LPWSTR)((ULONG_PTR)((WORD)(i)))
38 #define STARTF_USESHOWWINDOW 1
39 #define STARTF_USESIZE 2
40 #define STARTF_USEPOSITION 4
43 // Needed because windef.h messes up CDECL for whatever
47 /* Avoid type casting, by defining RECT to RECTL */
50 #define LPRECT LPRECTL
51 #define LPCRECT LPCRECTL
53 #define LPPOINT PPOINTL
54 #define PPOINT PPOINTL
58 #define _ENGINE_EXPORT_
62 #include <ndk/rtltypes.h>
68 #include <imm32_undoc.h>
72 #include <ndk/exfuncs.h>
73 #include <ndk/iofuncs.h>
74 #include <ndk/kdfuncs.h>
75 #include <ndk/kefuncs.h>
76 #include <ndk/mmfuncs.h>
77 #include <ndk/obfuncs.h>
78 #include <ndk/psfuncs.h>
79 #include <ndk/sefuncs.h>
80 #include <ndk/rtlfuncs.h>
82 /* SEH support with PSEH */
83 #include <pseh/pseh2.h>
85 /* The native x64 definition of FLOATOBJ_GetFloat in winddi.h is retarded. Use this instead. */
87 #undef FLOATOBJ_GetFloat
88 #define FLOATOBJ_GetFloat(pf) (*(pf))
95 /* Public Win32K headers */
96 #include <include/ntgdityp.h>
98 #include <include/ntgdihdl.h>
99 #include <include/ntgdibad.h>
102 #include <include/ntusrtyp.h>
103 #include <include/ntuser.h>
104 #include <include/callback.h>
105 #endif // __cplusplus
107 /* Undocumented user definitions */
108 #include <undocuser.h>
110 /* Freetype headers */
111 #include <ft2build.h>
112 #include FT_FREETYPE_H
114 #define InterlockedIncrementUL(Value) (ULONG)InterlockedIncrement((PLONG)(Value))
115 #define InterlockedDecrementUL(Value) (ULONG)InterlockedDecrement((PLONG)(Value))
117 /* Internal Win32K header */
124 #endif /* __W32K_H */