ReactOS  0.4.12-dev-57-g7050ac4
drwtsn32.h
Go to the documentation of this file.
1 /*
2  * PROJECT: Dr. Watson crash reporter
3  * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
4  * PURPOSE: Project header
5  * COPYRIGHT: Copyright 2017 Mark Jansen (mark.jansen@reactos.org)
6  */
7 
8 #pragma once
9 
10 
11 struct ModuleData
12 {
14  void *BaseAddress;
16  bool Unloaded;
17 
18 
19  ModuleData(void* addr);
20  void Update(HANDLE hProcess);
21 };
22 
23 struct ThreadData
24 {
27 
29 
30  void Update();
31 };
32 
33 typedef std::vector<ModuleData> ModuleList;
34 typedef std::map<DWORD, ThreadData> ThreadMap;
35 
36 class DumpData
37 {
38 public:
39  std::wstring ProcessPath;
40  std::wstring ProcessName;
48  bool FirstBPHit;
49 
50  DumpData();
51 };
52 
53 #define NEWLINE "\r\n"
54 
55 /* main.cpp */
56 void xfprintf(FILE* stream, const char *fmt, ...);
57 
58 /* drwtsn32.cpp */
60 
61 /* sysinfo.cpp */
63 
64 /* stacktrace.cpp */
68 
bool UpdateFromEvent(DEBUG_EVENT &evt, DumpData &data)
Definition: drwtsn32.cpp:56
static UCHAR ULONG UCHAR ULONG UCHAR * output
Definition: bcrypt.c:29
void xfprintf(FILE *stream, const char *fmt,...)
Definition: main.cpp:34
std::wstring ProcessName
Definition: drwtsn32.h:40
void Update(HANDLE hProcess)
Definition: drwtsn32.cpp:20
_In_ BOOL _In_ HANDLE hProcess
Definition: mapping.h:70
void EndStackBacktrace(DumpData &data)
Definition: stacktrace.cpp:22
std::vector< ModuleData > ModuleList
Definition: drwtsn32.h:33
CONTEXT Context
Definition: drwtsn32.h:26
bool FirstBPHit
Definition: drwtsn32.h:48
ModuleData(void *addr)
Definition: drwtsn32.cpp:13
smooth NULL
Definition: ftsmooth.c:416
DWORD ThreadID
Definition: drwtsn32.h:42
DWORD Size
Definition: drwtsn32.h:15
bool Unloaded
Definition: drwtsn32.h:16
HANDLE Handle
Definition: drwtsn32.h:25
std::wstring ProcessPath
Definition: drwtsn32.h:39
unsigned long DWORD
Definition: ntddk_ex.h:95
DWORD ProcessID
Definition: drwtsn32.h:41
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
std::map< DWORD, ThreadData > ThreadMap
Definition: drwtsn32.h:34
static HANDLE thread
Definition: service.c:33
ThreadMap Threads
Definition: drwtsn32.h:45
GLenum const GLvoid * addr
Definition: glext.h:9621
Definition: parse.h:22
void PrintSystemInfo(FILE *output, DumpData &data)
Definition: sysinfo.cpp:52
char string[160]
Definition: util.h:11
void * BaseAddress
Definition: drwtsn32.h:14
void BeginStackBacktrace(DumpData &data)
Definition: stacktrace.cpp:14
std::string ModuleName
Definition: drwtsn32.h:13
ModuleList Modules
Definition: drwtsn32.h:44
void PrintStackBacktrace(FILE *output, DumpData &data, ThreadData &thread)
Definition: stacktrace.cpp:36
Definition: dsound.c:943
HANDLE ProcessHandle
Definition: drwtsn32.h:43
HANDLE Event
Definition: drwtsn32.h:47
EXCEPTION_DEBUG_INFO ExceptionInfo
Definition: drwtsn32.h:46