UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Message.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Trace/Config.h"
6#include "Trace/Trace.h"
7#include <stdio.h>
8
9#if TRACE_PRIVATE_MINIMAL_ENABLED
10
11namespace UE {
12namespace Trace {
13namespace Private {
14
15bool GetErrorMessage(char* OutBuffer, uint32 BufferSize, int32 ErrorCode);
16
21#define UE_TRACE_MESSAGE_FMT_MAX_SIZE 512
22#define UE_TRACE_MESSAGE_ERR_MAX_SIZE 256
23
24#define UE_TRACE_MESSAGE(Type, Msg) \
25 Message_Send(EMessageType::Type, #Type, Msg);
26
27#define UE_TRACE_MESSAGE_F(Type, Fmt, ...) \
28 {\
29 char Buff[UE_TRACE_MESSAGE_FMT_MAX_SIZE];\
30 snprintf(Buff, UE_TRACE_MESSAGE_FMT_MAX_SIZE, Fmt, __VA_ARGS__);\
31 Message_Send(EMessageType::Type, #Type, Buff);\
32 }
33
34#define UE_TRACE_ERRORMESSAGE(Type, ErrorCode)\
35 {\
36 char ErrorMessageBuffer[UE_TRACE_MESSAGE_ERR_MAX_SIZE] = {'\0'};\
37 GetErrorMessage(ErrorMessageBuffer, UE_TRACE_MESSAGE_ERR_MAX_SIZE, ErrorCode);\
38 UE_TRACE_MESSAGE_F(Type, "(error code %d): '%s'", ErrorCode, ErrorMessageBuffer)\
39 }
40
41#define UE_TRACE_ERRORMESSAGE_F(Type, ErrorCode, ContextFmt, ...)\
42 {\
43 char ErrorMessageBuffer[UE_TRACE_MESSAGE_ERR_MAX_SIZE];\
44 if (GetErrorMessage(ErrorMessageBuffer, UE_TRACE_MESSAGE_ERR_MAX_SIZE, ErrorCode))\
45 {\
46 char FinalBuff[UE_TRACE_MESSAGE_FMT_MAX_SIZE];\
47 snprintf(FinalBuff, UE_TRACE_MESSAGE_FMT_MAX_SIZE, ContextFmt ": '%s'", __VA_ARGS__, ErrorMessageBuffer);\
48 Message_Send(EMessageType::Type, #Type, FinalBuff);\
49 }\
50 else\
51 {\
52 UE_TRACE_MESSAGE_F(Type, "(error code %d)", ErrorCode)\
53 }\
54 }
55
60
65void Message_Send(EMessageType Type, const char* TypeStr, const char* Description = nullptr);
66
67
68} } } // namespace UE::Trace::Private
69
70#endif // TRACE_PRIVATE_MINIMAL_ENABLED
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32_t uint32
Definition binka_ue_file_header.h:6
@ Trace
Definition NetTraceConfig.h:23
Definition OverriddenPropertySet.cpp:45
EMessageType
Definition Trace.h:98
void(const FMessageEvent &) OnMessageFunc
Definition Trace.h:135
Definition AdvancedWidgetsModule.cpp:13