5#include "Containers/Array.h"
6#include "Containers/Map.h"
7#include "Containers/Set.h"
18#define CUSTOM_CONFIG ""
21#ifndef DISABLE_GENERATED_INI_WHEN_COOKED
22#define DISABLE_GENERATED_INI_WHEN_COOKED 0
121 Context.ConfigFileTag = PluginName;
133 Context.bIsForPluginModification =
true;
136 Context.ConfigFileTag = PluginName;
161 Context.bIsFixingUpAfterBinaryConfig =
true;
277 bool PerformSingleFileLoad();
280 bool LoadIniFileHierarchy();
281 bool GenerateDestIniFile();
283 FString PerformFinalExpansions(
const FString&
InString,
const FString&
Platform);
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
DynamicLayerPriority
Definition ConfigCacheIni.h:1090
bool DoesConfigFileExistWrapper(const TCHAR *IniFile, const TSet< FString > *IniCacheSet=nullptr, const TSet< FString > *PrimaryConfigFileCache=nullptr, const TSet< FString > *SecondaryConfigFileCache=nullptr)
Definition ConfigCacheIni.cpp:318
FConfigCacheIni * GConfig
Definition CoreGlobals.cpp:54
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition ConfigCacheIni.h:1100
Definition ConfigCacheIni.h:1240
Definition ConfigContext.h:31
bool bIsHierarchicalConfig
Definition ConfigContext.h:244
static FConfigContext ReadPluginIntoConfigSystem(FConfigCacheIni *ConfigSystem, FName PluginName, const FString &PluginRootDir, const TArray< FString > &ChildPluginsBaseDirs)
Definition ConfigContext.h:115
FString EngineRootDir
Definition ConfigContext.h:222
FConfigBranch * TemporaryBranch
Definition ConfigContext.h:212
TMap< FString, FPerPlatformDirs > PerPlatformDirs
Definition ConfigContext.h:235
static FConfigContext ReadIntoPluginFile(FConfigFile &DestConfigFile, const FString &PluginRootDir, const TArray< FString > &ChildPluginsBaseDirs, const FString &Platform=FString())
Definition ConfigContext.h:96
FString StartSkippingAtFilename
Definition ConfigContext.h:219
FConfigFile * ExistingFile
Definition ConfigContext.h:210
FString ProjectNotForLicenseesDir
Definition ConfigContext.h:233
FString Platform
Definition ConfigContext.h:215
bool bIsForPlugin
Definition ConfigContext.h:247
bool bDefaultEngineRequired
Definition ConfigContext.h:246
bool bIsForPluginModification
Definition ConfigContext.h:248
FName ConfigFileTag
Definition ConfigContext.h:229
CORE_API const FPerPlatformDirs & GetPerPlatformDirs(const FString &PlatformName)
Definition ConfigContext.cpp:162
bool bUseHierarchyCache
Definition ConfigContext.h:240
FString DestIniFilename
Definition ConfigContext.h:214
static FConfigContext ReadSingleIntoConfigSystem(FConfigCacheIni *ConfigSystem, const FString &Platform)
Definition ConfigContext.h:88
TArray< FString > ChildPluginBaseDirs
Definition ConfigContext.h:226
FString GeneratedConfigDir
Definition ConfigContext.h:217
static FConfigContext ForceReloadIntoGConfig()
Definition ConfigContext.h:62
bool bDoNotResetConfigFile
Definition ConfigContext.h:265
static FConfigContext ReadSingleIntoGConfig()
Definition ConfigContext.h:72
bool bIsFixingUpAfterBinaryConfig
Definition ConfigContext.h:252
FString BaseIniName
Definition ConfigContext.h:218
FString ProjectNoRedistDir
Definition ConfigContext.h:234
TArray< FConfigLayer > OverrideLayers
Definition ConfigContext.h:238
FConfigModificationTracker * ChangeTracker
Definition ConfigContext.h:227
bool bCacheOnNextLoad
Definition ConfigContext.h:266
DynamicLayerPriority PluginModificationPriority
Definition ConfigContext.h:254
static FConfigContext ReadIntoLocalFile(FConfigFile &DestConfigFile, const FString &Platform=FString())
Definition ConfigContext.h:38
FString PluginRootDir
Definition ConfigContext.h:225
static FConfigContext ReadUpToBeforeFile(FConfigFile &DestConfigFile, const FString &Platform, const FString &StartSkippingAtFilename)
Definition ConfigContext.h:147
FConfigCacheIni * ConfigSystem
Definition ConfigContext.h:208
FString ProjectConfigDir
Definition ConfigContext.h:223
static FConfigContext ReadPluginToModifyConfigSystem(FConfigCacheIni *ConfigSystem, DynamicLayerPriority Priority, FName PluginName, const FString &PluginRootDir, const TArray< FString > &ChildPluginsBaseDirs, FConfigModificationTracker *ChangeTracker=nullptr)
Definition ConfigContext.h:129
FConfigBranch * Branch
Definition ConfigContext.h:211
TFunction< void(const TArray< FDynamicLayerInfo > &)> HandleLayersFunction
Definition ConfigContext.h:261
bool bIsMakingBinaryConfig
Definition ConfigContext.h:251
FString ProjectRootDir
Definition ConfigContext.h:224
FString SavePlatform
Definition ConfigContext.h:216
FString EngineConfigDir
Definition ConfigContext.h:221
static FConfigContext ReadSingleIntoLocalFile(FConfigFile &DestConfigFile, const FString &Platform=FString())
Definition ConfigContext.h:46
static CORE_API void VisualizeHierarchy(FOutputDevice &Ar, const TCHAR *IniName, const TCHAR *OverridePlatform, const TCHAR *OverrideProjectOrProgramDataDir, const TCHAR *OverridePluginDir=nullptr, const TArray< FString > *ChildPluginBaseDirs=nullptr)
Definition ConfigContext.cpp:1297
const TSet< FString > * StagedGlobalConfigCache
Definition ConfigContext.h:258
bool bForceReload
Definition ConfigContext.h:242
static FConfigContext ReadIntoGConfig()
Definition ConfigContext.h:54
bool bAllowRemoteConfig
Definition ConfigContext.h:243
bool bWriteDestIni
Definition ConfigContext.h:245
bool bIncludeTagNameInBranchName
Definition ConfigContext.h:250
static CORE_API void EnsureRequiredGlobalPathsHaveBeenInitialized()
Definition ConfigContext.cpp:1291
FString ProjectLimitedAccessDir
Definition ConfigContext.h:232
const TSet< FString > * StagedPluginConfigCache
Definition ConfigContext.h:259
CORE_API ~FConfigContext()
Definition ConfigContext.cpp:85
bool bAllowGeneratedIniWhenCooked
Definition ConfigContext.h:241
static FConfigContext ReadIntoConfigSystem(FConfigCacheIni *ConfigSystem, const FString &Platform)
Definition ConfigContext.h:80
static FConfigContext FixupBranchAfterBinaryConfig()
Definition ConfigContext.h:158
const TSet< FString > * IniCacheSet
Definition ConfigContext.h:257
Definition ConfigCacheIni.h:566
Definition ConfigCacheIni.h:499
Definition NameTypes.h:617
Definition OutputDevice.h:133
Definition AndroidPlatformMisc.h:14
Definition UnrealString.h.inl:34
Definition ConfigContext.h:194
FString PlatformExtensionProjectDir
Definition ConfigContext.h:196
FString PlatformExtensionPluginDir
Definition ConfigContext.h:197
FString PlatformExtensionEngineDir
Definition ConfigContext.h:195