6#include "Containers/Array.h"
15#if !defined(LOGTRACE_ENABLED)
16#if UE_TRACE_ENABLED && !UE_BUILD_SHIPPING
17#define LOGTRACE_ENABLED 1
19#define LOGTRACE_ENABLED 0
26#if !defined(LOGTRACE_RUNTIME_FORMATTING_ENABLED)
27#define LOGTRACE_RUNTIME_FORMATTING_ENABLED 1
33namespace UE {
namespace Trace {
class FChannel; } }
41 template <
typename... Types>
58#define TRACE_LOG_CATEGORY(Category, Name, DefaultVerbosity) \
59 FLogTrace::OutputLogCategory(Category, Name, DefaultVerbosity);
61#if LOGTRACE_RUNTIME_FORMATTING_ENABLED
62#define TRACE_LOG_MESSAGE(Category, Verbosity, Format, ...) \
63 if (UE_TRACE_CHANNELEXPR_IS_ENABLED(LogChannel)) \
65 static bool PREPROCESSOR_JOIN(__LogPoint, __LINE__); \
66 if (!PREPROCESSOR_JOIN(__LogPoint, __LINE__)) \
68 FLogTrace::OutputLogMessageSpec(&PREPROCESSOR_JOIN(__LogPoint, __LINE__), &Category, ELogVerbosity::Verbosity, __FILE__, __LINE__, TEXT("%s")); \
69 PREPROCESSOR_JOIN(__LogPoint, __LINE__) = true; \
71 FLogTrace::OutputLogMessageSimple(&PREPROCESSOR_JOIN(__LogPoint, __LINE__), Format, ##__VA_ARGS__); \
74#define TRACE_LOG_MESSAGE(Category, Verbosity, Format, ...) \
75 static_assert(TIsArrayOrRefOfTypeByPredicate<decltype(Format), TIsCharEncodingCompatibleWithTCHAR>::Value, "Formatting string must be a TCHAR array."); \
76 if (UE_TRACE_CHANNELEXPR_IS_ENABLED(LogChannel)) \
78 static bool PREPROCESSOR_JOIN(__LogPoint, __LINE__); \
79 if (!PREPROCESSOR_JOIN(__LogPoint, __LINE__)) \
81 FLogTrace::OutputLogMessageSpec(&PREPROCESSOR_JOIN(__LogPoint, __LINE__), &Category, ELogVerbosity::Verbosity, __FILE__, __LINE__, (const TCHAR*)Format); \
82 PREPROCESSOR_JOIN(__LogPoint, __LINE__) = true; \
84 FLogTrace::OutputLogMessage(&PREPROCESSOR_JOIN(__LogPoint, __LINE__), ##__VA_ARGS__); \
89#define TRACE_LOG_CATEGORY(Category, Name, DefaultVerbosity)
90#define TRACE_LOG_MESSAGE(Category, Verbosity, Format, ...)
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_TRACE_CHANNEL_EXTERN(ChannelName,...)
Definition Trace.h:448
Type
Definition LogVerbosity.h:17
Definition AdvancedWidgetsModule.cpp:13
Definition LogCategory.h:21