You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
FMessageLog::CriticalError has a delay before throwing an assert to allow compositing of the message. As a result the assert isn't thrown at the location of the problem, but somewhere in the surrounding area, which makes the problem harder to debug and generates misleading log entries. Due to these problems FMessageLog::CriticalError and EMessageSeverity::CriticalError have been deprecated. It's recommended to use checkf instead. When FMessageLog goes out of scope or is destroyed explicitly it will flush its messages to the log, which in turn means the log may immediately use the messages. In a few places a reference to the message was kept that outlived the lifetime of the owning FMessageLog in order to add arguments later on. The found cases have been updated to make sure FMessageLog doesn't outlive the addition of the arguments so the arguments are correctly passed to the log. #jira: UE-155605 #rb brooke.hubert francis.hurteau jerome.delattre #preflight 62cc4fca9922f7e5129e4e0a [CL 21042765 by ronald koppers in ue5-main branch]
224 lines
5.8 KiB
C++
224 lines
5.8 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
|
|
namespace NSwarm
|
|
{
|
|
|
|
enum
|
|
{
|
|
SWARM_SUCCESS = 0,
|
|
|
|
SWARM_INVALID = -1,
|
|
SWARM_ERROR_FILE_FOUND_NOT = -2,
|
|
SWARM_ERROR_NULL_POINTER = -3,
|
|
SWARM_ERROR_EXCEPTION = -4,
|
|
SWARM_ERROR_INVALID_ARG = -5,
|
|
SWARM_ERROR_INVALID_ARG1 = -6,
|
|
SWARM_ERROR_INVALID_ARG2 = -7,
|
|
SWARM_ERROR_INVALID_ARG3 = -8,
|
|
SWARM_ERROR_INVALID_ARG4 = -9,
|
|
SWARM_ERROR_CHANNEL_NOT_FOUND = -10,
|
|
SWARM_ERROR_CHANNEL_NOT_READY = -11,
|
|
SWARM_ERROR_CHANNEL_IO_FAILED = -12,
|
|
SWARM_ERROR_CONNECTION_NOT_FOUND = -13,
|
|
SWARM_ERROR_JOB_NOT_FOUND = -14,
|
|
SWARM_ERROR_JOB = -15,
|
|
SWARM_ERROR_CONNECTION_DISCONNECTED = -16,
|
|
SWARM_ERROR_AGENT_NOT_FOUND = -17,
|
|
};
|
|
|
|
/**
|
|
* Consistent version enum used by messages, Jobs, Tasks, etc.
|
|
*/
|
|
enum TSwarmVersionValue
|
|
{
|
|
VERSION_INVALID = 0x00000000,
|
|
VERSION_1_0 = 0x00000010,
|
|
};
|
|
|
|
/**
|
|
* Flags to determine the level of logging
|
|
*/
|
|
enum TLogFlags
|
|
{
|
|
SWARM_LOG_NONE = 0,
|
|
SWARM_LOG_TIMINGS = ( 1 << 0 ),
|
|
SWARM_LOG_CONNECTIONS = ( 1 << 1 ),
|
|
SWARM_LOG_CHANNELS = ( 1 << 2 ),
|
|
SWARM_LOG_MESSAGES = ( 1 << 3 ),
|
|
SWARM_LOG_JOBS = ( 1 << 4 ),
|
|
SWARM_LOG_TASKS = ( 1 << 5 ),
|
|
|
|
SWARM_LOG_ALL = SWARM_LOG_TIMINGS | SWARM_LOG_CONNECTIONS | SWARM_LOG_CHANNELS | SWARM_LOG_MESSAGES | SWARM_LOG_JOBS | SWARM_LOG_TASKS,
|
|
};
|
|
|
|
/**
|
|
* The level of debug info spewed to the log files
|
|
*/
|
|
enum TVerbosityLevel
|
|
{
|
|
VERBOSITY_Silent = 0,
|
|
VERBOSITY_Critical,
|
|
VERBOSITY_Simple,
|
|
VERBOSITY_Informative,
|
|
VERBOSITY_Complex,
|
|
VERBOSITY_Verbose,
|
|
VERBOSITY_ExtraVerbose,
|
|
VERBOSITY_SuperVerbose,
|
|
};
|
|
|
|
// Available colours used in log text.
|
|
enum TLogColour
|
|
{
|
|
LOGCOLOUR_Green = 0,
|
|
LOGCOLOUR_Red,
|
|
LOGCOLOUR_Orange,
|
|
LOGCOLOUR_Blue,
|
|
};
|
|
|
|
/**
|
|
* The current state of the lighting build process
|
|
*/
|
|
enum TProgressionState
|
|
{
|
|
PROGSTATE_TaskTotal = 0,
|
|
PROGSTATE_TasksInProgress,
|
|
PROGSTATE_TasksCompleted,
|
|
PROGSTATE_Idle,
|
|
PROGSTATE_InstigatorConnected,
|
|
PROGSTATE_RemoteConnected,
|
|
PROGSTATE_Exporting,
|
|
PROGSTATE_BeginJob,
|
|
PROGSTATE_Blocked,
|
|
PROGSTATE_Preparing0,
|
|
PROGSTATE_Preparing1,
|
|
PROGSTATE_Preparing2,
|
|
PROGSTATE_Preparing3,
|
|
PROGSTATE_Processing0,
|
|
PROGSTATE_Processing1,
|
|
PROGSTATE_Processing2,
|
|
PROGSTATE_Processing3,
|
|
PROGSTATE_FinishedProcessing0,
|
|
PROGSTATE_FinishedProcessing1,
|
|
PROGSTATE_FinishedProcessing2,
|
|
PROGSTATE_FinishedProcessing3,
|
|
PROGSTATE_ExportingResults,
|
|
PROGSTATE_ImportingResults,
|
|
PROGSTATE_Finished,
|
|
PROGSTATE_RemoteDisconnected,
|
|
PROGSTATE_InstigatorDisconnected,
|
|
PROGSTATE_Preparing4,
|
|
PROGSTATE_Num
|
|
};
|
|
|
|
/**
|
|
* Flags that define the intended behavior of the channel. The most
|
|
* important of which are whether the channel is read or write, and
|
|
* whether it's a general, persistent cache channel, or whether it's
|
|
* a job-specific channel. Additional misc flags are available as
|
|
* well.
|
|
*/
|
|
enum TChannelFlags
|
|
{
|
|
SWARM_CHANNEL_TYPE_PERSISTENT = 0x00000001,
|
|
SWARM_CHANNEL_TYPE_JOB_ONLY = 0x00000002,
|
|
SWARM_CHANNEL_TYPE_MASK = 0x0000000F,
|
|
|
|
SWARM_CHANNEL_ACCESS_READ = 0x00000010,
|
|
SWARM_CHANNEL_ACCESS_WRITE = 0x00000020,
|
|
SWARM_CHANNEL_ACCESS_MASK = 0x000000F0,
|
|
|
|
// The combinations we care about are easiest to just special case here
|
|
SWARM_CHANNEL_READ = SWARM_CHANNEL_TYPE_PERSISTENT | SWARM_CHANNEL_ACCESS_READ,
|
|
SWARM_CHANNEL_WRITE = SWARM_CHANNEL_TYPE_PERSISTENT | SWARM_CHANNEL_ACCESS_WRITE,
|
|
SWARM_JOB_CHANNEL_READ = SWARM_CHANNEL_TYPE_JOB_ONLY | SWARM_CHANNEL_ACCESS_READ,
|
|
SWARM_JOB_CHANNEL_WRITE = SWARM_CHANNEL_TYPE_JOB_ONLY | SWARM_CHANNEL_ACCESS_WRITE,
|
|
|
|
// Any additional flags for debugging or extended features
|
|
SWARM_CHANNEL_MISC_ENABLE_PAPER_TRAIL = 0x00010000,
|
|
SWARM_CHANNEL_MISC_ENABLE_COMPRESSION = 0x00020000,
|
|
SWARM_CHANNEL_MISC_MASK = 0x000F0000,
|
|
};
|
|
|
|
enum TMessageType
|
|
{
|
|
MESSAGE_NONE = 0x00000000,
|
|
MESSAGE_INFO = 0x00000001,
|
|
MESSAGE_ALERT = 0x00000002,
|
|
MESSAGE_TIMING = 0x00000003,
|
|
MESSAGE_PING = 0x00000004,
|
|
MESSAGE_SIGNAL = 0x00000005,
|
|
|
|
/** Job messages */
|
|
MESSAGE_JOB_SPECIFICATION = 0x00000010,
|
|
MESSAGE_JOB_STATE = 0x00000020,
|
|
|
|
/** Task messages */
|
|
MESSAGE_TASK_REQUEST = 0x00000100,
|
|
MESSAGE_TASK_REQUEST_RESPONSE = 0x00000200,
|
|
MESSAGE_TASK_STATE = 0x00000300,
|
|
|
|
MESSAGE_QUIT = 0x00008000,
|
|
};
|
|
|
|
enum TTaskRequestResponseType
|
|
{
|
|
RESPONSE_TYPE_RELEASE = 0x00000001,
|
|
RESPONSE_TYPE_RESERVATION = 0x00000002,
|
|
RESPONSE_TYPE_SPECIFICATION = 0x00000003,
|
|
};
|
|
|
|
/**
|
|
* Flags used when creating a Job or Task
|
|
*/
|
|
enum TJobTaskFlags
|
|
{
|
|
JOB_FLAG_USE_DEFAULTS = 0x00000000,
|
|
JOB_FLAG_ALLOW_REMOTE = 0x00000001,
|
|
JOB_FLAG_MANUAL_START = 0x00000002,
|
|
JOB_FLAG_64BIT = 0x00000004,
|
|
JOB_FLAG_MINIMIZED = 0x00000008,
|
|
|
|
JOB_TASK_FLAG_USE_DEFAULTS = 0x00000000,
|
|
JOB_TASK_FLAG_ALLOW_REMOTE = 0x00000100,
|
|
};
|
|
|
|
/**
|
|
* All possible states a Job or Task can be in
|
|
*/
|
|
enum TJobTaskState
|
|
{
|
|
JOB_STATE_INVALID = 0x00000001,
|
|
JOB_STATE_IDLE = 0x00000002,
|
|
JOB_STATE_READY = 0x00000003,
|
|
JOB_STATE_RUNNING = 0x00000004,
|
|
JOB_STATE_COMPLETE_SUCCESS = 0x00000005,
|
|
JOB_STATE_COMPLETE_FAILURE = 0x00000006,
|
|
JOB_STATE_KILLED = 0x00000007,
|
|
|
|
JOB_TASK_STATE_INVALID = 0x00000011,
|
|
JOB_TASK_STATE_IDLE = 0x00000012,
|
|
JOB_TASK_STATE_ACCEPTED = 0x00000013,
|
|
JOB_TASK_STATE_REJECTED = 0x00000014,
|
|
JOB_TASK_STATE_RUNNING = 0x00000015,
|
|
JOB_TASK_STATE_COMPLETE_SUCCESS = 0x00000016,
|
|
JOB_TASK_STATE_COMPLETE_FAILURE = 0x00000017,
|
|
JOB_TASK_STATE_KILLED = 0x00000018,
|
|
};
|
|
|
|
/**
|
|
* The alert levels
|
|
*/
|
|
enum TAlertLevel
|
|
{
|
|
ALERT_LEVEL_INFO = 0x00000001,
|
|
ALERT_LEVEL_WARNING = 0x00000002,
|
|
ALERT_LEVEL_ERROR = 0x00000003,
|
|
ALERT_LEVEL_CRITICAL_ERROR UE_DEPRECATED(5.1, "CriticalError was removed because it can't trigger an assert at the callsite. Use 'checkf' instead.") = 0x00000004,
|
|
};
|
|
|
|
}
|