UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ExceptionHandling.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
6#include "CoreTypes.h"
7
9
12
15
17
18// #CrashReport: 2014-09-11 Move to PlatformExceptionHandling
19#if PLATFORM_WINDOWS
21
22#include <excpt.h>
23
24// #CrashReport: 2014-10-09 These methods are specific to windows, remove from here.
26extern CORE_API void ReportAssert(const TCHAR* ErrorMessage, void* ProgramCounter);
27extern CORE_API void ReportGPUCrash(const TCHAR* ErrorMessage, void* ProgramCounter);
28extern CORE_API void ReportEnsure(const TCHAR* ErrorMessage, void* ProgramCounter);
29extern CORE_API void ReportStall(const TCHAR* ErrorMessage, uint32 HitchThreadId);
30extern CORE_API 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
36extern CORE_API void ReportAssert(const TCHAR* ErrorMessage, void* ProgramCounter);
37extern CORE_API void ReportGPUCrash(const TCHAR* ErrorMessage, void* ProgramCounter);
38extern CORE_API void ReportEnsure(const TCHAR* ErrorMessage, void* ProgramCounter);
39extern CORE_API void ReportHang(const TCHAR*, const uint64* StackFrames, int32 NumStackFrames, uint32 HungThreadId);
40#elif PLATFORM_UNIX
41extern CORE_API void ReportAssert(const TCHAR* ErrorMessage, void* ProgramCounter);
42extern CORE_API void ReportGPUCrash(const TCHAR* ErrorMessage, void* ProgramCounter);
43extern CORE_API void ReportEnsure(const TCHAR* ErrorMessage, void* ProgramCounter);
44extern CORE_API void ReportStall(const TCHAR* ErrorMessage, uint32 ThreadId);
45extern CORE_API void ReportHang(const TCHAR*, const uint64* StackFrames, int32 NumStackFrames, uint32 HungThreadId);
46#endif
47
48
int32 ReportCrash(ucontext_t *Context, int32 Signal, struct __siginfo *Info)
Definition ApplePlatformStackWalk.cpp:484
FPlatformTypes::TCHAR TCHAR
Either ANSICHAR or WIDECHAR, depending on whether the platform supports wide characters or the requir...
Definition Platform.h:1135
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
FPlatformTypes::uint64 uint64
A 64-bit unsigned integer.
Definition Platform.h:1117
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
CORE_API void ReportInteractiveEnsure(const TCHAR *InMessage)
Definition ExceptionHandling.cpp:31
CORE_API bool GUseCrashReportClient
Definition ExceptionHandling.cpp:24
CORE_API TCHAR MiniDumpFilenameW[1024]
Definition ExceptionHandling.cpp:26
CORE_API bool GAlwaysReportCrash
Definition ExceptionHandling.cpp:21
CORE_API bool IsInteractiveEnsureMode()
Definition ExceptionHandling.cpp:43
void ReportEnsure(const TCHAR *ErrorMessage, int NumStackFramesToIgnore)
Definition IOSPlatformMisc.cpp:2389
void ReportHang(const TCHAR *ErrorMessage, const uint64 *StackFrames, int32 NumStackFrames, uint32 HungThreadId)
Definition MacPlatformMisc.cpp:2731
void ReportAssert(const TCHAR *ErrorMessage, void *ErrorProgramCounter)
Definition MacPlatformMisc.cpp:2677
void ReportGPUCrash(const TCHAR *ErrorMessage, void *ErrorProgramCounter)
Definition MacPlatformMisc.cpp:2685
void ReportStall(const TCHAR *Message, uint32 ThreadId)
Definition UnixPlatformStackWalk.cpp:1028
uint32_t uint32
Definition binka_ue_file_header.h:6
_EXCEPTION_POINTERS * LPEXCEPTION_POINTERS
Definition MinimalWindowsApi.h:89
Definition GenericPlatformStackWalk.h:43
uint64 ProgramCounter
Definition GenericPlatformStackWalk.h:69