- Define DECLSPEC_ADDRSAFE and FORCEINLINE for gcc in winnt.h
[reactos.git] / reactos / include / ndk / ntndk.h
1 /*++ NDK Version: 0095
2
3 Copyright (c) Alex Ionescu. All rights reserved.
4
5 Header Name:
6
7 ntndk.h
8
9 Abstract:
10
11 Master include file for the Native Development Kit.
12
13 Author:
14
15 Alex Ionescu (alex.ionescu@reactos.com) 06-Oct-2004
16
17 --*/
18
19 #ifndef _NTNDK_
20 #define _NTNDK_
21
22 //
23 // Rounding Macros
24 //
25 #define ROUNDUP(a,b) ((((a)+(b)-1)/(b))*(b))
26 #define ROUNDDOWN(a,b) (((a)/(b))*(b))
27 #define ROUND_UP ROUNDUP
28 #define ROUND_DOWN ROUNDDOWN
29
30 #include <stdarg.h>
31
32 #ifndef NTOS_MODE_USER
33
34 //
35 // Headers that are only useful to Kernel Mode modules
36 //
37 #include <ifssupp.h> // IFS Support Header
38 #include <kdfuncs.h> // Kernel Debugger Functions
39 #include <cctypes.h> // Cache Manager Types
40 #include <potypes.h> // Power Manager Types
41 #include <haltypes.h> // Hardware Abstraction Layer Types
42 #include <halfuncs.h> // Hardware Abstraction Layer Functions
43 #include <inbvfuncs.h> // Initialization Boot Video Functions
44 #include <exfuncs.h> // Executive Functions
45 #include <iofuncs.h> // Input/Output Manager Functions
46 #include <kefuncs.h> // Kernel Functions
47 #include <mmfuncs.h> // Memory Manager Functions
48 #include <obfuncs.h> // Object Manager Functions
49 #include <psfuncs.h> // Process Manager Functions
50 #include <sefuncs.h> // Security Subsystem Functions
51
52 #endif // !NTOS_MODE_USER
53
54 //
55 // Headers used both in User Mode and Kernel Mode
56 //
57 #include <umtypes.h> // General Definitions
58 #include <extypes.h> // Executive Types
59 #include <cmtypes.h> // Configuration Manager Types
60 #include <kdtypes.h> // Kernel Debugger Types
61 #include <ketypes.h> // Kernel Types
62 #include <iotypes.h> // Input/Output Manager Types
63 #include <ldrtypes.h> // Loader Types
64 #include <ldrfuncs.h> // Loader Functions
65 #include <mmtypes.h> // Memory Manager Types
66 #include <obtypes.h> // Object Manager Types
67 #include <pstypes.h> // Process Manager Types
68 #include <lpctypes.h> // Local Procedure Call Types
69 #include <dbgktypes.h> // User-Mode Kernel Debugging Types
70 #include <zwfuncs.h> // Native Functions (System Calls)
71 #include <rtltypes.h> // Runtime Library Types
72 #include <rtlfuncs.h> // Runtime Library Functions
73 #include <setypes.h> // Security Subsystem Types
74 #include <umfuncs.h> // User-Mode NT Library Functions
75 #include <asm.h> // Assembly Offsets
76
77 #endif // _NTNDK_