Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
ExceptionHandling.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Containers/ContainersFwd.h"
6#include "CoreTypes.h"
7
8struct FProgramCounterSymbolInfo;
9
10/** Whether we should generate crash reports even if the debugger is attached. */
11extern bool GAlwaysReportCrash;
12
13/** Whether to use ClientReportClient rather than AutoReporter. */
14extern bool GUseCrashReportClient;
15
16extern TCHAR MiniDumpFilenameW[1024];
17
18// #CrashReport: 2014-09-11 Move to PlatformExceptionHandling
20#include "Windows/WindowsSystemIncludes.h"
21
22#include <excpt.h>
23
24// #CrashReport: 2014-10-09 These methods are specific to windows, remove from here.
25extern int32 ReportCrash( Windows::LPEXCEPTION_POINTERS ExceptionInfo );
26extern void ReportAssert(const TCHAR* ErrorMessage, void* ProgramCounter);
27extern void ReportGPUCrash(const TCHAR* ErrorMessage, void* ProgramCounter);
28extern void ReportEnsure(const TCHAR* ErrorMessage, void* ProgramCounter);
29extern void ReportStall(const TCHAR* ErrorMessage, uint32 HitchThreadId);
30extern void ReportHang(const TCHAR*, const uint64* StackFrames, int32 NumStackFrames, uint32 HungThreadId);
31#elif PLATFORM_MAC
32// #CrashReport: 2014-10-09 Should be move to another file
33#include <signal.h>
34
35extern int32 ReportCrash(ucontext_t *Context, int32 Signal, struct __siginfo* Info);
36extern void ReportAssert(const TCHAR* ErrorMessage, void* ProgramCounter);
37extern void ReportGPUCrash(const TCHAR* ErrorMessage, void* ProgramCounter);
38extern void ReportEnsure(const TCHAR* ErrorMessage, void* ProgramCounter);
39extern void ReportHang(const TCHAR*, const uint64* StackFrames, int32 NumStackFrames, uint32 HungThreadId);
40#elif PLATFORM_UNIX
41extern void ReportAssert(const TCHAR* ErrorMessage, void* ProgramCounter);
42extern void ReportGPUCrash(const TCHAR* ErrorMessage, void* ProgramCounter);
43extern void ReportEnsure(const TCHAR* ErrorMessage, void* ProgramCounter);
44extern void ReportStall(const TCHAR* ErrorMessage, uint32 ThreadId);
45extern void ReportHang(const TCHAR*, const uint64* StackFrames, int32 NumStackFrames, uint32 HungThreadId);
46#endif
47
48
49extern void ReportInteractiveEnsure(const TCHAR* InMessage);
bool GUseCrashReportClient
TCHAR MiniDumpFilenameW[1024]
bool IsInteractiveEnsureMode()
void ReportInteractiveEnsure(const TCHAR *InMessage)
bool GAlwaysReportCrash
#define PLATFORM_WINDOWS
Definition Platform.h:4
_EXCEPTION_POINTERS * LPEXCEPTION_POINTERS