UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ConfigCacheIni.cpp File Reference

Classes

struct  FConfigExpansion
 
class  FSinglePropertyConfigHelper
 
struct  UE::ConfigCacheIni::Private::FImpl
 
class  FArchiveCountConfigMem
 
struct  FDetailedConfigMemUsage
 
struct  FConfigFileMemoryData
 
struct  FConfigMemoryData
 
class  FIniExec
 

Namespaces

namespace  UE
 
namespace  UE::ConfigCacheIni
 
namespace  UE::ConfigCacheIni::Private
 

Macros

#define LOCTEXT_NAMESPACE   "ConfigCache"
 
#define SET_KNOWN_NAME(Ini)   Branches[(uint8)EKnownIniFile::Ini].IniName = FName(#Ini);
 
#define ASSIGN_GLOBAL_INI_STRING(IniName)   G##IniName##Ini = FString(#IniName);
 

Functions

 DEFINE_LOG_CATEGORY (LogConfig)
 
bool DoesConfigFileExistWrapper (const TCHAR *IniFile, const TSet< FString > *IniCacheSet, const TSet< FString > *PrimaryConfigFileCache, const TSet< FString > *SecondaryConfigFileCache)
 
FArchiveoperator<< (FArchive &Ar, FConfigSection &ConfigSection)
 
template<typename SectionType >
void FixupArrayOfStructKeysForSection (SectionType *Section, const FString &SectionName, const TMap< FString, TMap< FName, FString > > &PerObjectConfigKeys)
 
template<class KeyType , class ValueType , class AltKeyType >
ValueType & FindOrAddHeterogeneous (TMap< KeyType, ValueType > &Map, const AltKeyType &Key)
 
template<typename FileType >
void FillFileFromBuffer (FileType *File, FStringView Buffer, bool bHandleSymbolCommands, const FString &FileHint)
 
template<typename FileType >
bool FillFileFromDisk (FileType *File, const FString &Filename, bool bHandleSymbolCommands)
 
bool PropertySetFromCommandlineOption (const FConfigFile *InConfigFile, const FString &InSectionName, const FName &InPropertyName, const FString &InPropertyValue)
 
FArchiveoperator<< (FArchive &Ar, FConfigCacheIni::FKnownConfigFiles &KnownFiles)
 
FArchiveoperator<< (FArchive &Ar, FConfigBranch &ConfigBranch)
 
FArchiveoperator<< (FArchive &Ar, FConfigFile &ConfigFile)
 

Variables

double GPrepareForLoadTime = 0
 
double GPerformLoadTime = 0
 
double GConfigShrinkTime = 0
 
FIniExec GConfigExec
 

Macro Definition Documentation

◆ ASSIGN_GLOBAL_INI_STRING

#define ASSIGN_GLOBAL_INI_STRING (   IniName)    G##IniName##Ini = FString(#IniName);

◆ LOCTEXT_NAMESPACE

#define LOCTEXT_NAMESPACE   "ConfigCache"

◆ SET_KNOWN_NAME

#define SET_KNOWN_NAME (   Ini)    Branches[(uint8)EKnownIniFile::Ini].IniName = FName(#Ini);

Function Documentation

◆ DEFINE_LOG_CATEGORY()

DEFINE_LOG_CATEGORY ( LogConfig  )

◆ DoesConfigFileExistWrapper()

bool DoesConfigFileExistWrapper ( const TCHAR IniFile,
const TSet< FString > *  IniCacheSet,
const TSet< FString > *  PrimaryConfigFileCache,
const TSet< FString > *  SecondaryConfigFileCache 
)

Check if an ini file exists, allowing a delegate to determine if it will handle loading it

const bool bFileExistsCachedTest = IFileManager::Get().FileSize(IniFile) >= 0; ensureMsgf( bFileExistsCached == bFileExistsCachedTest, TEXT("DoesConfigFileExistWrapper: InCache = %d, InFileSystem = %d, Name = %s, Configs = \n%s"), !!bFileExistsCached, !!bFileExistsCachedTest, IniFile, FString::Join(*IniCacheSet, TEXT("\n")) );

◆ FillFileFromBuffer()

template<typename FileType >
void FillFileFromBuffer ( FileType *  File,
FStringView  Buffer,
bool  bHandleSymbolCommands,
const FString &  FileHint 
)

◆ FillFileFromDisk()

template<typename FileType >
bool FillFileFromDisk ( FileType *  File,
const FString &  Filename,
bool  bHandleSymbolCommands 
)

◆ FindOrAddHeterogeneous()

template<class KeyType , class ValueType , class AltKeyType >
ValueType & FindOrAddHeterogeneous ( TMap< KeyType, ValueType > &  Map,
const AltKeyType Key 
)

◆ FixupArrayOfStructKeysForSection()

template<typename SectionType >
void FixupArrayOfStructKeysForSection ( SectionType *  Section,
const FString &  SectionName,
const TMap< FString, TMap< FName, FString > > &  PerObjectConfigKeys 
)

◆ operator<<() [1/4]

FArchive & operator<< ( FArchive Ar,
FConfigBranch ConfigBranch 
)

◆ operator<<() [2/4]

FArchive & operator<< ( FArchive Ar,
FConfigCacheIni::FKnownConfigFiles KnownFiles 
)

◆ operator<<() [3/4]

FArchive & operator<< ( FArchive Ar,
FConfigFile ConfigFile 
)

◆ operator<<() [4/4]

FArchive & operator<< ( FArchive Ar,
FConfigSection ConfigSection 
)

◆ PropertySetFromCommandlineOption()

bool PropertySetFromCommandlineOption ( const FConfigFile InConfigFile,
const FString &  InSectionName,
const FName InPropertyName,
const FString &  InPropertyValue 
)

Check if the provided property information was set as a commandline override

Parameters
InConfigFile- The config file which we want to check had overridden values
InSectionName- The name of the section which we are checking for a match
InPropertyName- The name of the property which we are checking for a match
InPropertyValue- The value of the property which we are checking for a match
Returns
True if a commandline option was set that matches the input parameters

Variable Documentation

◆ GConfigExec

FIniExec GConfigExec

◆ GConfigShrinkTime

double GConfigShrinkTime = 0

◆ GPerformLoadTime

double GPerformLoadTime = 0

◆ GPrepareForLoadTime

double GPrepareForLoadTime = 0