e2a51a6a1d762c6171db0a59705160d36460cc1d
[reactos.git] / include / napi / dbg.h
1 #ifndef __INCLUDE_NAPI_DBG_H
2 #define __INCLUDE_NAPI_DBG_H
3
4 #include <napi/lpc.h>
5
6 #define DBG_EVENT_EXCEPTION         (1)
7 #define DBG_EVENT_CREATE_THREAD     (2)
8 #define DBG_EVENT_CREATE_PROCESS    (3)
9 #define DBG_EVENT_EXIT_THREAD       (4)
10 #define DBG_EVENT_EXIT_PROCESS      (5)
11 #define DBG_EVENT_LOAD_DLL          (6)
12 #define DBG_EVENT_UNLOAD_DLL        (7)
13
14 typedef struct _LPC_DBG_MESSAGE
15 {
16    LPC_MESSAGE_HEADER Header;
17    ULONG Type;
18    ULONG Status;
19    union
20      {
21         struct
22           {
23              EXCEPTION_RECORD ExceptionRecord;
24              ULONG FirstChance;
25           } Exception;
26         struct
27           {
28              ULONG Reserved;
29              PVOID StartAddress;
30           } CreateThread;
31         struct
32           {
33              ULONG Reserved;
34              HANDLE FileHandle;
35              PVOID Base;
36              ULONG PointerToSymbolTable;
37              ULONG NumberOfSymbols;
38              ULONG Reserved2;
39              PVOID EntryPoint;
40           } CreateProcess;
41         struct
42           {
43              ULONG ExitCode;
44           } ExitThread;
45         struct
46           {
47              ULONG ExitCode;
48           } ExitProcess;
49         struct
50           {
51              HANDLE FileHandle;
52              PVOID Base;
53              ULONG PointerToSymbolTable;
54              ULONG NumberOfSymbols;
55           } LoadDll;
56         struct
57           {
58              PVOID Base;
59           } UnloadDll;
60      } Data;
61 } LPC_DBG_MESSAGE, *PLPC_DBG_MESSAGE;
62
63 #endif /* __INCLUDE_NAPI_DBG_H */