Planeshift
google_breakpad::ExceptionHandler Class Reference

#include <exception_handler.h>

Classes

struct  CrashContext
 

Public Types

typedef bool(* FilterCallback) (void *context)
 
typedef bool(* FilterCallback) (void *context, EXCEPTION_POINTERS *exinfo, MDRawAssertionInfo *assertion)
 
typedef bool(* HandlerCallback) (const void *crash_context, size_t crash_context_size, void *context)
 
enum  HandlerType {
  HANDLER_NONE = 0, HANDLER_EXCEPTION = 1 << 0, HANDLER_INVALID_PARAMETER = 1 << 1, HANDLER_PURECALL = 1 << 2,
  HANDLER_ALL
}
 
typedef bool(* MinidumpCallback) (const MinidumpDescriptor &descriptor, void *context, bool succeeded)
 
typedef bool(* MinidumpCallback) (const wchar_t *dump_path, const wchar_t *minidump_id, void *context, EXCEPTION_POINTERS *exinfo, MDRawAssertionInfo *assertion, bool succeeded)
 

Public Member Functions

void AddMappingInfo (const string &name, const uint8_t identifier[sizeof(MDGUID)], uintptr_t start_address, size_t mapping_size, size_t file_offset)
 
wstring dump_path () const
 
 ExceptionHandler (const MinidumpDescriptor &descriptor, FilterCallback filter, MinidumpCallback callback, void *callback_context, bool install_handler, const int server_fd)
 
 ExceptionHandler (const wstring &dump_path, FilterCallback filter, MinidumpCallback callback, void *callback_context, int handler_types)
 
 ExceptionHandler (const wstring &dump_path, FilterCallback filter, MinidumpCallback callback, void *callback_context, int handler_types, MINIDUMP_TYPE dump_type, const wchar_t *pipe_name, const CustomClientInfo *custom_info)
 
 ExceptionHandler (const wstring &dump_path, FilterCallback filter, MinidumpCallback callback, void *callback_context, int handler_types, MINIDUMP_TYPE dump_type, HANDLE pipe_handle, const CustomClientInfo *custom_info)
 
 ExceptionHandler (const wstring &dump_path, FilterCallback filter, MinidumpCallback callback, void *callback_context, int handler_types, CrashGenerationClient *crash_generation_client)
 
bool get_handle_debug_exceptions () const
 
DWORD get_requesting_thread_id () const
 
bool IsOutOfProcess () const
 
bool IsOutOfProcess () const
 
const MinidumpDescriptorminidump_descriptor () const
 
void RegisterAppMemory (void *ptr, size_t length)
 
void RegisterAppMemory (void *ptr, size_t length)
 
bool RequestUpload (DWORD crash_id)
 
void set_crash_handler (HandlerCallback callback)
 
void set_dump_path (const wstring &dump_path)
 
void set_handle_debug_exceptions (bool handle_debug_exceptions)
 
void set_minidump_descriptor (const MinidumpDescriptor &descriptor)
 
bool SimulateSignalDelivery (int sig)
 
void UnregisterAppMemory (void *ptr)
 
void UnregisterAppMemory (void *ptr)
 
bool WriteMinidump ()
 
bool WriteMinidump ()
 
bool WriteMinidumpForException (EXCEPTION_POINTERS *exinfo)
 
 ~ExceptionHandler ()
 
 ~ExceptionHandler ()
 

Static Public Member Functions

static bool WriteMinidump (const string &dump_path, MinidumpCallback callback, void *callback_context)
 
static bool WriteMinidump (const wstring &dump_path, MinidumpCallback callback, void *callback_context)
 
static bool WriteMinidumpForChild (pid_t child, pid_t child_blamed_thread, const string &dump_path, MinidumpCallback callback, void *callback_context)
 
static bool WriteMinidumpForChild (HANDLE child, DWORD child_blamed_thread, const wstring &dump_path, MinidumpCallback callback, void *callback_context)
 

Detailed Description

Definition at line 76 of file exception_handler.h.

Member Typedef Documentation

typedef bool(* google_breakpad::ExceptionHandler::FilterCallback) (void *context)

Definition at line 87 of file exception_handler.h.

typedef bool(* google_breakpad::ExceptionHandler::FilterCallback) (void *context, EXCEPTION_POINTERS *exinfo, MDRawAssertionInfo *assertion)

Definition at line 111 of file exception_handler.h.

typedef bool(* google_breakpad::ExceptionHandler::HandlerCallback) (const void *crash_context, size_t crash_context_size, void *context)

Definition at line 114 of file exception_handler.h.

typedef bool(* google_breakpad::ExceptionHandler::MinidumpCallback) (const MinidumpDescriptor &descriptor, void *context, bool succeeded)

Definition at line 105 of file exception_handler.h.

typedef bool(* google_breakpad::ExceptionHandler::MinidumpCallback) (const wchar_t *dump_path, const wchar_t *minidump_id, void *context, EXCEPTION_POINTERS *exinfo, MDRawAssertionInfo *assertion, bool succeeded)

Definition at line 138 of file exception_handler.h.

Member Enumeration Documentation

Enumerator
HANDLER_NONE 
HANDLER_EXCEPTION 
HANDLER_INVALID_PARAMETER 
HANDLER_PURECALL 
HANDLER_ALL 

Definition at line 151 of file exception_handler.h.

Constructor & Destructor Documentation

google_breakpad::ExceptionHandler::ExceptionHandler ( const MinidumpDescriptor descriptor,
FilterCallback  filter,
MinidumpCallback  callback,
void *  callback_context,
bool  install_handler,
const int  server_fd 
)
google_breakpad::ExceptionHandler::~ExceptionHandler ( )
google_breakpad::ExceptionHandler::ExceptionHandler ( const wstring &  dump_path,
FilterCallback  filter,
MinidumpCallback  callback,
void *  callback_context,
int  handler_types 
)
google_breakpad::ExceptionHandler::ExceptionHandler ( const wstring &  dump_path,
FilterCallback  filter,
MinidumpCallback  callback,
void *  callback_context,
int  handler_types,
MINIDUMP_TYPE  dump_type,
const wchar_t *  pipe_name,
const CustomClientInfo custom_info 
)
google_breakpad::ExceptionHandler::ExceptionHandler ( const wstring &  dump_path,
FilterCallback  filter,
MinidumpCallback  callback,
void *  callback_context,
int  handler_types,
MINIDUMP_TYPE  dump_type,
HANDLE  pipe_handle,
const CustomClientInfo custom_info 
)
google_breakpad::ExceptionHandler::ExceptionHandler ( const wstring &  dump_path,
FilterCallback  filter,
MinidumpCallback  callback,
void *  callback_context,
int  handler_types,
CrashGenerationClient crash_generation_client 
)
google_breakpad::ExceptionHandler::~ExceptionHandler ( )

Member Function Documentation

void google_breakpad::ExceptionHandler::AddMappingInfo ( const string &  name,
const uint8_t  identifier[sizeof(MDGUID)],
uintptr_t  start_address,
size_t  mapping_size,
size_t  file_offset 
)
wstring google_breakpad::ExceptionHandler::dump_path ( ) const
inline

Definition at line 220 of file exception_handler.h.

bool google_breakpad::ExceptionHandler::get_handle_debug_exceptions ( ) const
inline

Definition at line 261 of file exception_handler.h.

DWORD google_breakpad::ExceptionHandler::get_requesting_thread_id ( ) const
inline

Definition at line 258 of file exception_handler.h.

bool google_breakpad::ExceptionHandler::IsOutOfProcess ( ) const
inline

Definition at line 200 of file exception_handler.h.

bool google_breakpad::ExceptionHandler::IsOutOfProcess ( ) const
inline

Definition at line 267 of file exception_handler.h.

const MinidumpDescriptor& google_breakpad::ExceptionHandler::minidump_descriptor ( ) const
inline

Definition at line 137 of file exception_handler.h.

void google_breakpad::ExceptionHandler::RegisterAppMemory ( void *  ptr,
size_t  length 
)
void google_breakpad::ExceptionHandler::RegisterAppMemory ( void *  ptr,
size_t  length 
)
bool google_breakpad::ExceptionHandler::RequestUpload ( DWORD  crash_id)
void google_breakpad::ExceptionHandler::set_crash_handler ( HandlerCallback  callback)
inline

Definition at line 145 of file exception_handler.h.

void google_breakpad::ExceptionHandler::set_dump_path ( const wstring &  dump_path)
inline

Definition at line 221 of file exception_handler.h.

void google_breakpad::ExceptionHandler::set_handle_debug_exceptions ( bool  handle_debug_exceptions)
inline

Definition at line 262 of file exception_handler.h.

void google_breakpad::ExceptionHandler::set_minidump_descriptor ( const MinidumpDescriptor descriptor)
inline

Definition at line 141 of file exception_handler.h.

bool google_breakpad::ExceptionHandler::SimulateSignalDelivery ( int  sig)
void google_breakpad::ExceptionHandler::UnregisterAppMemory ( void *  ptr)
void google_breakpad::ExceptionHandler::UnregisterAppMemory ( void *  ptr)
bool google_breakpad::ExceptionHandler::WriteMinidump ( )
static bool google_breakpad::ExceptionHandler::WriteMinidump ( const string &  dump_path,
MinidumpCallback  callback,
void *  callback_context 
)
static
bool google_breakpad::ExceptionHandler::WriteMinidump ( )
static bool google_breakpad::ExceptionHandler::WriteMinidump ( const wstring &  dump_path,
MinidumpCallback  callback,
void *  callback_context 
)
static
static bool google_breakpad::ExceptionHandler::WriteMinidumpForChild ( pid_t  child,
pid_t  child_blamed_thread,
const string &  dump_path,
MinidumpCallback  callback,
void *  callback_context 
)
static
static bool google_breakpad::ExceptionHandler::WriteMinidumpForChild ( HANDLE  child,
DWORD  child_blamed_thread,
const wstring &  dump_path,
MinidumpCallback  callback,
void *  callback_context 
)
static
bool google_breakpad::ExceptionHandler::WriteMinidumpForException ( EXCEPTION_POINTERS *  exinfo)

The documentation for this class was generated from the following file: