ReactOS 0.4.15-dev-6703-g6528ab8
pch.h
Go to the documentation of this file.
1#ifndef __W32K_H
2#define __W32K_H
3/*
4 * COPYRIGHT: See COPYING in the top level directory
5 * PROJECT: ReactOS Win32k subsystem
6 * FILE: win32ss/pch.h
7 * PURPOSE: Main Win32K Header
8 * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
9 */
10
11/* INCLUDES ******************************************************************/
12
13#define _NO_COM
14#define STRICT
15
16/* DDK/NDK/SDK headers */
17#undef NTDDI_VERSION
18#define NTDDI_VERSION NTDDI_WS03SP1
19#include <ntifs.h>
20#include <ntddmou.h>
21#include <ndk/exfuncs.h>
22#include <ndk/iofuncs.h>
23#include <ndk/kdfuncs.h>
24#include <ndk/kefuncs.h>
25#include <ndk/mmfuncs.h>
26#include <ndk/obfuncs.h>
27#include <ndk/psfuncs.h>
28#include <ndk/sefuncs.h>
29#include <ndk/rtlfuncs.h>
30#include <ntstrsafe.h>
31#include <ntintsafe.h>
32#include <ntddkbd.h>
33
34/* Win32 headers */
35/* FIXME: Defines in winbase.h that we need... */
37#define MAKEINTATOM(i) (LPWSTR)((ULONG_PTR)((WORD)(i)))
38#define WINBASEAPI
39#define STARTF_USESHOWWINDOW 1
40#define STARTF_USESIZE 2
41#define STARTF_USEPOSITION 4
42#include <stdarg.h>
43#include <windef.h>
44#define _USE_MATH_DEFINES
45#include <math.h>
46#include <intrin.h>
47
48// Needed because windef.h messes up CDECL for whatever
49#undef CDECL
50#define CDECL __cdecl
51
52/* Avoid type casting, by defining RECT to RECTL */
53#define RECT RECTL
54#define PRECT PRECTL
55#define LPRECT LPRECTL
56#define LPCRECT LPCRECTL
57#define POINT POINTL
58#define LPPOINT PPOINTL
59#define PPOINT PPOINTL
60
61#include <winerror.h>
62#include <wingdi.h>
63#define NT_BUILD_ENVIRONMENT
64#define _ENGINE_EXPORT_
65#include <winddi.h>
66#include <winuser.h>
67#include <prntfont.h>
68#define _NOCSECT_TYPE
69#include <ddrawi.h>
70#include <imm.h>
71#include <dbt.h>
72#include <ntddvdeo.h>
73
74/* SEH support with PSEH */
75#include <pseh/pseh2.h>
76
77/* The native x64 definition of FLOATOBJ_GetFloat in winddi.h is retarded. Use this instead. */
78#ifndef _M_IX86
79#undef FLOATOBJ_GetFloat
80#define FLOATOBJ_GetFloat(pf) (*(pf))
81#endif
82
83#ifdef __cplusplus
84extern "C" {
85#endif
86
87/* Public Win32K headers */
88#include <include/ntgdityp.h>
89#include <ntgdi.h>
90#include <include/ntgdihdl.h>
91#include <include/ntgdibad.h>
92
93#ifndef __cplusplus
94#include <include/ntusrtyp.h>
95#include <include/ntuser.h>
96#include <include/callback.h>
97#endif // __cplusplus
98
99/* Undocumented user definitions */
100#include <undocuser.h>
101
102/* Freetype headers */
103#include <ft2build.h>
104#include FT_FREETYPE_H
105
106#define InterlockedIncrementUL(Value) InterlockedIncrement((PLONG)Value)
107#define InterlockedDecrementUL(Value) InterlockedDecrement((PLONG)Value)
108
109/* Internal Win32K header */
110#include "win32kp.h"
111
112#ifdef __cplusplus
113} /* extern "C" */
114#endif
115
116#endif /* __W32K_H */
struct _SECURITY_ATTRIBUTES * LPSECURITY_ATTRIBUTES
Definition: pch.h:36