[VFATLIB] Never touch the file system if not in interactive or RW mode.
[reactos.git] / win32ss / win32kp.h
index 5e60855..386db09 100644 (file)
 
 #pragma once
 
-#if 0
-#ifndef _MSC_VER
-#define PLACE_IN_SECTION(s) __attribute__((section(s)))
-#define INIT_FUNCTION PLACE_IN_SECTION("INIT")
+#ifdef __GNUC__
+#define INIT_SECTION __attribute__((section ("INIT")))
+#define INIT_FUNCTION INIT_SECTION
 #else
-#define INIT_FUNCTION
-#endif
-#else
-#define INIT_FUNCTION
+#define INIT_SECTION  /* Done via alloc_text for MSC */
+#define INIT_FUNCTION INIT_SECTION
 #endif
 
 /* Enable debugging features */
 #define GDI_DEBUG 0
+#define DBG_ENABLE_GDIOBJ_BACKTRACES 0
 #define DBG_ENABLE_EVENT_LOGGING 0
 #define DBG_ENABLE_SERVICE_HOOKS 0
 
-/* Misc headers  */
-#include "user/ntuser/win32kdebug.h"
-#include "user/ntuser/mmcopy.h"
-#include "user/ntuser/tags.h"
-#include "gdi/ntgdi/rect.h"
-#include "gdi/ntgdi/misc.h"
-
 /* Internal NtGdi Headers */
 typedef struct _DC *PDC;
-typedef struct _PALETTE *PPALETTE;
+#include "gdi/ntgdi/rect.h"
+#include "gdi/ntgdi/misc.h"
 #include "gdi/ntgdi/gdiobj.h"
+#include "gdi/ntgdi/palette.h"
 #include "gdi/eng/surface.h"
 #include "gdi/eng/pdevobj.h"
 #include "gdi/eng/ldevobj.h"
@@ -54,7 +47,6 @@ typedef struct _PALETTE *PPALETTE;
 #include "gdi/ntgdi/brush.h"
 #include "gdi/ntgdi/color.h"
 #include "gdi/ntgdi/bitmaps.h"
-#include "gdi/ntgdi/palette.h"
 #include "gdi/ntgdi/region.h"
 #include "gdi/ntgdi/dc.h"
 #include "gdi/ntgdi/dib.h"
@@ -71,8 +63,11 @@ typedef struct _PALETTE *PPALETTE;
 #include "reactx/ntddraw/intddraw.h"
 
 /* Internal NtUser Headers */
-typedef struct _DESKTOP *PDESKTOP;
+#include "user/ntuser/win32kdebug.h"
 #include "user/ntuser/win32.h"
+#include "user/ntuser/tags.h"
+#ifndef __cplusplus
+#include "user/ntuser/usrheap.h"
 #include "user/ntuser/object.h"
 #include "user/ntuser/ntuser.h"
 #include "user/ntuser/shutdown.h"
@@ -103,5 +98,11 @@ typedef struct _DESKTOP *PDESKTOP;
 #include "user/ntuser/scroll.h"
 #include "user/ntuser/winpos.h"
 #include "user/ntuser/callback.h"
+#include "user/ntuser/mmcopy.h"
+
+/* CSRSS Interface */
+#include "user/ntuser/csr.h"
+
+#endif // __cplusplus
 
 #include "gdi/ntgdi/gdidebug.h"