5#include "Containers/Array.h"
6#include "Containers/Map.h"
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EModuleLoadResult
Definition ModuleManager.h:49
EModuleUnloadResult
Definition ModuleManager.h:75
Definition JsonObject.h:23
Definition NameTypes.h:617
Definition JsonWriter.h:85
Definition UnrealString.h.inl:34
Definition ModuleDescriptor.h:83
PROJECTS_API EHostType::Type FromString(const TCHAR *Text)
Definition ModuleDescriptor.cpp:87
Type
Definition ModuleDescriptor.h:85
@ CookedOnly
Definition ModuleDescriptor.h:96
@ Runtime
Definition ModuleDescriptor.h:87
@ Program
Definition ModuleDescriptor.h:119
@ ServerOnly
Definition ModuleDescriptor.h:122
@ EditorNoCommandlet
Definition ModuleDescriptor.h:113
@ ClientOnlyNoCommandlet
Definition ModuleDescriptor.h:128
@ Developer
Definition ModuleDescriptor.h:104
@ UncookedOnly
Definition ModuleDescriptor.h:99
@ DeveloperTool
Definition ModuleDescriptor.h:107
@ RuntimeAndProgram
Definition ModuleDescriptor.h:93
@ Max
Definition ModuleDescriptor.h:131
@ Editor
Definition ModuleDescriptor.h:110
@ ClientOnly
Definition ModuleDescriptor.h:125
@ RuntimeNoCommandlet
Definition ModuleDescriptor.h:90
@ EditorAndProgram
Definition ModuleDescriptor.h:116
Definition ModuleDescriptor.h:25
PROJECTS_API ELoadingPhase::Type FromString(const TCHAR *Text)
Definition ModuleDescriptor.cpp:33
Type
Definition ModuleDescriptor.h:27
@ Max
Definition ModuleDescriptor.h:59
@ PostSplashScreen
Definition ModuleDescriptor.h:35
@ EarliestPossible
Definition ModuleDescriptor.h:29
@ PreLoadingScreen
Definition ModuleDescriptor.h:41
@ Default
Definition ModuleDescriptor.h:47
@ PostEngineInit
Definition ModuleDescriptor.h:53
@ PreDefault
Definition ModuleDescriptor.h:44
@ None
Definition ModuleDescriptor.h:56
@ PreEarlyLoadingScreen
Definition ModuleDescriptor.h:38
@ PostConfigInit
Definition ModuleDescriptor.h:32
@ PostDefault
Definition ModuleDescriptor.h:50
Definition ModuleDescriptor.h:258
FString ModuleName
Definition ModuleDescriptor.h:263
EHostType::Type ModuleType
Definition ModuleDescriptor.h:266
FString ModuleSourcePath
Definition ModuleDescriptor.h:260
Definition ModuleDescriptor.h:155
TArray< FString > PlatformAllowList
Definition ModuleDescriptor.h:166
static PROJECTS_API bool CheckModuleCompatibility(const TArray< FModuleDescriptor > &Modules, TArray< FString > &OutIncompatibleFiles)
Definition ModuleDescriptor.cpp:843
PROJECTS_API bool IsLoadedInCurrentConfiguration() const
Definition ModuleDescriptor.cpp:638
ELoadingPhase::Type LoadingPhase
Definition ModuleDescriptor.h:163
FName Name
Definition ModuleDescriptor.h:157
static PROJECTS_API void UpdateArray(FJsonObject &JsonObject, const TCHAR *ArrayName, const TArray< FModuleDescriptor > &Modules)
Definition ModuleDescriptor.cpp:510
static PROJECTS_API void WriteArray(TJsonWriter<> &Writer, const TCHAR *ArrayName, const TArray< FModuleDescriptor > &Modules)
Definition ModuleDescriptor.cpp:497
TMap< FString, TArray< FString > > PlatformArchitectureAllowList
Definition ModuleDescriptor.h:172
TArray< EBuildTargetType > TargetAllowList
Definition ModuleDescriptor.h:178
TMap< FString, TArray< FString > > PlatformArchitectureDenyList
Definition ModuleDescriptor.h:175
static PROJECTS_API bool ReadArray(const FJsonObject &Object, const TCHAR *Name, TArray< FModuleDescriptor > &OutModules, FText *OutFailReason=nullptr)
Definition ModuleDescriptor.cpp:265
TArray< FString > PlatformDenyList
Definition ModuleDescriptor.h:169
PROJECTS_API bool IsCompiledInCurrentConfiguration() const
Definition ModuleDescriptor.cpp:633
PROJECTS_API bool IsCompiledInConfiguration(const FString &Platform, EBuildConfiguration Configuration, const FString &TargetName, EBuildTargetType TargetType, bool bBuildDeveloperTools, bool bBuildRequiresCookedData, const FString &Architecture=FString()) const
Definition ModuleDescriptor.cpp:521
PROJECTS_API void UpdateJson(FJsonObject &JsonObject) const
Definition ModuleDescriptor.cpp:283
TArray< FString > ProgramDenyList
Definition ModuleDescriptor.h:193
TArray< EBuildTargetType > TargetDenyList
Definition ModuleDescriptor.h:181
static PROJECTS_API void LoadModulesForPhase(ELoadingPhase::Type LoadingPhase, const TArray< FModuleDescriptor > &Modules, TMap< FName, EModuleLoadResult > &ModuleLoadErrors)
Definition ModuleDescriptor.cpp:778
bool bHasExplicitPlatforms
Definition ModuleDescriptor.h:205
TArray< FString > GameTargetDenyList
Definition ModuleDescriptor.h:199
TArray< FString > ProgramAllowList
Definition ModuleDescriptor.h:190
TArray< EBuildConfiguration > TargetConfigurationAllowList
Definition ModuleDescriptor.h:184
TArray< FString > AdditionalDependencies
Definition ModuleDescriptor.h:202
static PROJECTS_API void UnloadModulesForPhase(ELoadingPhase::Type LoadingPhase, const TArray< FModuleDescriptor > &Modules, TMap< FName, EModuleUnloadResult > &OutErrors, bool bSkipUnload=false, bool bAllowUnloadCode=true)
Definition ModuleDescriptor.cpp:807
TArray< EBuildConfiguration > TargetConfigurationDenyList
Definition ModuleDescriptor.h:187
TArray< FString > GameTargetAllowList
Definition ModuleDescriptor.h:196
EHostType::Type Type
Definition ModuleDescriptor.h:160