- Move some NDK definitions (Cm Callbacks) to the DDK since they are actually public.
[reactos.git] / reactos / include / ndk / rtltypes.h
index b7e9ba0..d0f0808 100644 (file)
@@ -10,7 +10,7 @@
 #define _RTLTYPES_H
 
 /* DEPENDENCIES **************************************************************/
-#include "excpt.h"
+#include "pstypes.h"
 
 /* CONSTANTS *****************************************************************/
 #define MAXIMUM_LEADBYTES 12
@@ -27,6 +27,7 @@
 
 #define PEB_BASE                   (0x7FFDF000)
 
+#define EXCEPTION_CHAIN_END           ((PEXCEPTION_REGISTRATION_RECORD)-1)
 #define EXCEPTION_CONTINUE_SEARCH     0
 #define EXCEPTION_EXECUTE_HANDLER     1
 
 #define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag
 #define NLS_OEM_LEAD_BYTE_INFO NlsOemLeadByteInfo
 
+#define MAX_ATOM_LEN              255 /* TCHARS not including nullterm */
+
 /* List Macros */
 static __inline
 VOID
@@ -279,6 +282,17 @@ typedef enum
 /* FUNCTION TYPES ************************************************************/
 #ifndef NTOS_MODE_USER
 typedef VOID (NTAPI *WAITORTIMERCALLBACKFUNC)(PVOID, BOOLEAN);
+
+#else
+
+typedef EXCEPTION_DISPOSITION
+(NTAPI *PEXCEPTION_ROUTINE)(
+    IN struct _EXCEPTION_RECORD *ExceptionRecord,
+    IN PVOID EstablisherFrame,
+    IN OUT struct _CONTEXT *ContextRecord,
+    IN OUT PVOID DispatcherContext
+);
+
 #endif
 
 struct _RTL_AVL_TABLE;
@@ -291,14 +305,6 @@ typedef NTSTATUS
     IN PVOID UserParam
 );
 
-typedef EXCEPTION_DISPOSITION
-(*PEXCEPTION_HANDLER)(
-    struct _EXCEPTION_RECORD*,
-    PVOID,
-    struct _CONTEXT*,
-    PVOID
-);
-
 typedef LONG (NTAPI *PVECTORED_EXCEPTION_HANDLER)(
     PEXCEPTION_POINTERS ExceptionPointers
 );
@@ -529,6 +535,14 @@ typedef struct _TIME_FIELDS
 } TIME_FIELDS, *PTIME_FIELDS;
 #endif
 
+typedef EXCEPTION_DISPOSITION
+(*PEXCEPTION_HANDLER)(
+    struct _EXCEPTION_RECORD*,
+    PVOID,
+    struct _CONTEXT*,
+    PVOID
+);
+
 typedef struct _ACE
 {
     ACE_HEADER Header;
@@ -634,16 +648,11 @@ typedef struct _MODULE_INFORMATION
 } MODULE_INFORMATION, *PMODULE_INFORMATION;
 /* END REVIEW AREA */
 
-#ifdef _INC_EXCPT
-typedef struct _EXCEPTION_REGISTRATION
+typedef struct _EXCEPTION_REGISTRATION_RECORD
 {
-    struct _EXCEPTION_REGISTRATION *prev;
-    PEXCEPTION_HANDLER handler;
-} EXCEPTION_REGISTRATION, *PEXCEPTION_REGISTRATION;
-#endif
-
-typedef EXCEPTION_REGISTRATION EXCEPTION_REGISTRATION_RECORD;
-typedef PEXCEPTION_REGISTRATION PEXCEPTION_REGISTRATION_RECORD;
+    struct _EXCEPTION_REGISTRATION_RECORD *Next;
+    PEXCEPTION_HANDLER Handler;
+} EXCEPTION_REGISTRATION_RECORD, *PEXCEPTION_REGISTRATION_RECORD;
 
 typedef struct _CURDIR
 {