/* * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS Kernel * FILE: ntoskrnl/include/ntoskrnl.h * PURPOSE: Main Kernel Header * PROGRAMMER: Alex Ionescu (alex@relsoft.net) */ #ifndef _NTOSKRNL_PCH #define _NTOSKRNL_PCH /* INCLUDES ******************************************************************/ /* ARM Bringup Hack */ #ifdef _M_ARM #define DbgPrint DbgPrintEarly #endif /* WDK hacks */ #ifdef _M_AMD64 #define IoAllocateAdapterChannel _IoAllocateAdapterChannel #define KeGetCurrentThread _KeGetCurrentThread #define RtlFillMemoryUlong _RtlFillMemoryUlong #endif /* Version Data */ #undef __MSVCRT__ #include /* DDK/IFS/NDK Headers */ #define _REALLY_GET_CALLERS_CALLER #include #include #include #include #include #include #include #undef NTHALAPI #define NTHALAPI __declspec(dllimport) #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #undef TEXT #define TEXT(s) L##s #define _IN_KERNEL_ #include #include #include #define ENABLE_INTSAFE_SIGNED_FUNCTIONS #include #undef ENABLE_INTSAFE_SIGNED_FUNCTIONS /* C Headers */ #include #include #include #include #include /* SEH support with PSEH */ #include /* SetupLDR Support */ #include /* KD Support */ #define NOEXTAPI #include #include #ifdef KDBG #define KdDebuggerInitialize0 KdpDebuggerInitialize0 #define KdDebuggerInitialize1 KdpDebuggerInitialize1 #define KdSendPacket KdpSendPacket #define KdReceivePacket KdpReceivePacket #endif #include #ifdef __ROS_ROSSYM__ #include #endif /* PNP GUIDs */ #include /* SRM header */ #include #define ExRaiseStatus RtlRaiseStatus /* Also defined in fltkernel.h, but we don't want the entire header */ #ifndef Add2Ptr #define Add2Ptr(P,I) ((PVOID)((PUCHAR)(P) + (I))) #endif #ifndef PtrOffset #define PtrOffset(B,O) ((ULONG)((ULONG_PTR)(O) - (ULONG_PTR)(B))) #endif /* MAX_PATH is a Win32 concept, it doesn't belong in the kernel */ #define MAX_WIN32_PATH 260 C_ASSERT(MAX_WIN32_PATH == MAX_PATH); #undef MAX_PATH /* Internal Headers */ #include "config.h" #include "internal/ntoskrnl.h" #include #include "internal/probe.h" #include "resource.h" /* Internal Ps alignment probing header */ #include "internal/ps_i.h" #ifdef _MSC_VER # pragma section("INITDATA", read,write,discard) #endif #endif /* _NTOSKRNL_PCH */