2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS Kernel
4 * FILE: ntoskrnl/include/ntoskrnl.h
5 * PURPOSE: Main Kernel Header
6 * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
12 /* INCLUDES ******************************************************************/
14 /* ARM Bringup Hack */
16 #define DbgPrint DbgPrintEarly
21 #define IoAllocateAdapterChannel _IoAllocateAdapterChannel
22 #define KeGetCurrentThread _KeGetCurrentThread
23 #define RtlFillMemoryUlong _RtlFillMemoryUlong
28 #include <psdk/ntverp.h>
30 /* DDK/IFS/NDK Headers */
31 #define _REALLY_GET_CALLERS_CALLER
39 #define NTHALAPI __declspec(dllimport)
41 #include <ndk/cctypes.h>
42 #include <ndk/cmfuncs.h>
43 #include <ndk/dbgkfuncs.h>
44 #include <ndk/exfuncs.h>
45 #include <ndk/halfuncs.h>
46 #include <ndk/inbvfuncs.h>
47 #include <ndk/iofuncs.h>
48 #include <ndk/kdfuncs.h>
49 #include <ndk/kefuncs.h>
50 #include <ndk/ldrfuncs.h>
51 #include <ndk/lpcfuncs.h>
52 #include <ndk/mmfuncs.h>
53 #include <ndk/obfuncs.h>
54 #include <ndk/pofuncs.h>
55 #include <ndk/psfuncs.h>
56 #include <ndk/rtlfuncs.h>
57 #include <ndk/sefuncs.h>
58 #include <ndk/vftypes.h>
62 #include <ntstrsafe.h>
72 /* SEH support with PSEH */
73 #include <pseh/pseh2.h>
75 /* SetupLDR Support */
76 #include <arc/setupblk.h>
84 #include <reactos/rossym.h>
88 #include <umpnpmgr/sysguid.h>
91 // Define the internal versions of external and public global data
93 #define IoFileObjectType _IoFileObjectType
94 #define PsThreadType _PsThreadType
95 #define PsProcessType _PsProcessType
96 #define ExEventObjectType _ExEventObjectType
97 #define ExSemaphoreObjectType _ExSemaphoreObjectType
98 #define KdDebuggerEnabled _KdDebuggerEnabled
99 #define KdDebuggerNotPresent _KdDebuggerNotPresent
100 #define NlsOemLeadByteInfo _NlsOemLeadByteInfo
101 extern PUSHORT _NlsOemLeadByteInfo
;
102 #define KeNumberProcessors _KeNumberProcessors
103 extern UCHAR _KeNumberProcessors
;
104 #define FsRtlLegalAnsiCharacterArray _FsRtlLegalAnsiCharacterArray
105 #undef LEGAL_ANSI_CHARACTER_ARRAY
106 #undef NLS_MB_CODE_PAGE_TAG
107 #undef NLS_OEM_LEAD_BYTE_INFO
108 #define LEGAL_ANSI_CHARACTER_ARRAY FsRtlLegalAnsiCharacterArray
109 #define NLS_MB_CODE_PAGE_TAG NlsMbOemCodePageTag
110 #define NLS_OEM_LEAD_BYTE_INFO _NlsOemLeadByteInfo
111 #undef KD_DEBUGGER_ENABLED
112 #undef KD_DEBUGGER_NOT_PRESENT
113 #define KD_DEBUGGER_ENABLED KdDebuggerEnabled
114 #define KD_DEBUGGER_NOT_PRESENT KdDebuggerNotPresent
115 #define HalDispatchTable _HalDispatchTable
117 #define HALDISPATCH (&HalDispatchTable)
118 #define ExRaiseStatus RtlRaiseStatus
120 /* Internal Headers */
121 #include "internal/ntoskrnl.h"
124 #include <reactos/probe.h>
125 #include "internal/probe.h"
126 #include "resource.h"
128 #endif /* _NTOSKRNL_PCH */