UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
LaunchEngineLoop.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6
7#if WITH_ENGINE
8 #include "UnrealEngine.h"
9#endif
10
11class FEngineService;
12class FTraceService;
14class ISessionService;
15class FSlateRenderer;
16
17struct FScopedSlowTask;
18
20{
24 bool bWithConfigPatching = false;
25 UE_DEPRECATED(5.5, "Use gc.MaxObjectsNotConsideredByGC=0 ini setting instead")
32
33 FString Token;
35
37
38 void Cleanup();
39
40#if WITH_ENGINE && !UE_SERVER
41 TSharedPtr<FSlateRenderer> SlateRenderer;
42#endif // WITH_ENGINE && !UE_SERVER
43};
44
50 : public IEngineLoop
51#endif
52{
53public:
54
57
58 virtual ~FEngineLoop() { }
59
60public:
61
71
78 int32 PreInit(const TCHAR* CmdLine);
79
81 int32 PreInitPreStartupScreen(const TCHAR* CmdLine);
82
84 int32 PreInitPostStartupScreen(const TCHAR* CmdLine);
85
87 void LoadPreInitModules();
88
90 bool LoadCoreModules();
91
94
97
98#if WITH_ENGINE
99
102
104 bool LoadStartupModules();
105
111 virtual int32 Init() override;
112
114 void InitTime();
115
117 void Exit();
118
120 bool ShouldUseIdleMode() const;
121
123 virtual void Tick() override;
124
126 virtual void ClearPendingCleanupObjects() override;
127
128#endif // WITH_ENGINE
129
131 static void PostInitRHI();
132
134 static void PreInitHMDDevice();
135
136public:
137
139 static bool AppInit();
140
146 static void AppPreExit();
147
153 static void AppExit();
154
155private:
156
158 void ProcessLocalPlayerSlateOperations() const;
159
160protected:
161
164
167
170
173
176
177#if WITH_ENGINE
178
181
182#endif //WITH_ENGINE
183
184private:
185
186
187#if WITH_ENGINE
188
191
194
196 TSharedPtr<ISessionService> SessionService;
197
198#endif // WITH_ENGINE
199 FPreInitContext PreInitContext;
200};
201
202
#define WITH_ENGINE
Definition Build.h:75
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
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
FEngineLoop GEngineLoop
Definition LaunchIOS.cpp:39
void Init()
Definition LockFreeList.h:4
const bool
Definition NetworkReplayStreaming.h:178
if(Failed) console_printf("Failed.\n")
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition LaunchEngineLoop.h:52
static bool AppInit()
Definition LaunchEngineLoop.cpp:6409
FEngineLoop()
Definition LaunchEngineLoop.cpp:1351
void LoadPreInitModules()
Definition LaunchEngineLoop.cpp:4379
void OverrideProjectModule(const FString &InOriginalProjectModuleName, const FString &InReplacementProjectModuleName)
Definition LaunchEngineLoop.cpp:1361
static void AppExit()
Definition LaunchEngineLoop.cpp:6969
int32 PreInit(int32 ArgC, TCHAR *ArgV[], const TCHAR *AdditionalCommandline=nullptr)
Definition LaunchEngineLoop.cpp:1369
int32 PreInitPreStartupScreen(const TCHAR *CmdLine)
Definition LaunchEngineLoop.cpp:1699
bool LoadCoreModules()
Definition LaunchEngineLoop.cpp:4361
static void PreInitHMDDevice()
Definition LaunchEngineLoop.cpp:7042
virtual ~FEngineLoop()
Definition LaunchEngineLoop.h:58
uint64 MaxFrameCounter
Definition LaunchEngineLoop.h:172
TArray< float > FrameTimes
Definition LaunchEngineLoop.h:163
double TotalTickTime
Definition LaunchEngineLoop.h:166
uint32 LastFrameCycles
Definition LaunchEngineLoop.h:175
static void AppPreExit()
Definition LaunchEngineLoop.cpp:6893
void CleanupPreInitContext()
Definition LaunchEngineLoop.cpp:4374
int32 PreInitPostStartupScreen(const TCHAR *CmdLine)
Definition LaunchEngineLoop.cpp:3387
static void PostInitRHI()
Definition LaunchEngineLoop.cpp:7011
double MaxTickTime
Definition LaunchEngineLoop.h:169
Definition EngineService.h:20
Definition UnrealType.h:3087
Definition RenderDeferredCleanup.h:20
Definition SlateRenderer.h:173
Definition TraceService.h:12
Definition UnrealEngine.h:384
Definition ISessionService.h:11
Definition Array.h:670
Definition SharedPointer.h:692
@ false
Definition radaudio_common.h:23
Definition LaunchEngineLoop.h:20
bool bForceQuitAfterEarlyReads
Definition LaunchEngineLoop.h:23
FScopedSlowTask * SlowTaskPtr
Definition LaunchEngineLoop.h:36
void Cleanup()
Definition LaunchEngineLoop.cpp:7095
bool bTokenDoesNotHaveDash
Definition LaunchEngineLoop.h:30
bool bIsPossiblyUnrecognizedCommandlet
Definition LaunchEngineLoop.h:31
bool bIsRegularClient
Definition LaunchEngineLoop.h:28
bool bDisableDisregardForGC
Definition LaunchEngineLoop.h:26
bool bWithConfigPatching
Definition LaunchEngineLoop.h:24
FString Token
Definition LaunchEngineLoop.h:33
bool bDumpEarlyPakFileReads
Definition LaunchEngineLoop.h:22
bool bDumpEarlyConfigReads
Definition LaunchEngineLoop.h:21
FString CommandletCommandLine
Definition LaunchEngineLoop.h:34
bool bHasEditorToken
Definition LaunchEngineLoop.h:27
Definition ScopedSlowTask.h:32