5#include "Containers/Array.h"
169 UE_DEPRECATED(5.4,
"Use EnginePlatformExtensionDir(Platform) instead - ProjectPlatformExtensionsDir did not handle programs properly, so for consistency this is being removed as well")
188 UE_DEPRECATED(5.4,
"Use ProjectPlatformExtensionDir(Platform) instead - this function does not handle Programs properly")
253 const FString& BaseDir,
254 const FString&
SubDir = FString(),
455 UE_DEPRECATED(5.5,
"Cooked editor localization path no longer exist. Cooked editors now load game localization paths.")
769 static CORE_API const FString& CustomUserDirArgument();
772 static CORE_API const FString& CustomShaderDirArgument();
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define ENUM_CLASS_FLAGS(Enum)
Definition EnumClassFlags.h:6
#define Split(a, ahi, alo)
Definition Predicates.inl:204
TStringView< TCHAR > FStringView
Definition StringFwd.h:45
#define UE_ARRAY_COUNT(array)
Definition UnrealTemplate.h:212
static CORE_API bool IsRestrictedPath(const FString &InPath)
Definition Paths.cpp:827
static CORE_API FString ProjectIntermediateDir()
Definition Paths.cpp:507
static CORE_API FString ProjectPlatformExtensionsDir()
Definition Paths.cpp:304
static CORE_API FString GameSourceDir()
Definition Paths.cpp:872
static CORE_API const TArray< FString > & GetPropertyNameLocalizationPaths()
Definition Paths.cpp:728
static UE_FORCEINLINE_HINT FString Combine(PathTypes &&... InPaths)
Definition Paths.h:737
static CORE_API void NormalizeDirectoryName(FString &InPath)
Definition Paths.cpp:1343
static CORE_API FString GetPlatformLocalizationFolderName()
Definition Paths.cpp:797
static CORE_API bool IsProjectFilePathSet()
Definition Paths.cpp:882
static CORE_API bool ValidatePath(const FString &InPath, FText *OutReason=nullptr)
Definition Paths.cpp:1733
static CORE_API bool IsSamePath(const FString &PathA, const FString &PathB)
Definition Paths.cpp:1902
FRIEND_ENUM_CLASS_FLAGS(EGetExtensionDirsFlags)
static CORE_API void RemoveDuplicateSlashes(FString &InPath)
Definition Paths.cpp:1376
static CORE_API FString ProjectModsDir()
Definition Paths.cpp:529
static CORE_API FString EnterprisePluginsDir()
Definition Paths.cpp:289
static CORE_API FString EngineUserDir()
Definition Paths.cpp:204
static CORE_API const TArray< FString > & GetEditorLocalizationPaths()
Definition Paths.cpp:704
static CORE_API FString CombineInternal(const FStringView *Paths, int32 NumPaths)
Definition Paths.cpp:1880
static CORE_API const TArray< FString > & GetEngineLocalizationPaths()
Definition Paths.cpp:680
static CORE_API FString ProjectConfigDir()
Definition Paths.cpp:491
static CORE_API FString ProjectDir()
Definition Paths.cpp:457
static CORE_API FString ProfilingDir()
Definition Paths.cpp:559
static CORE_API FString FeaturePackDir()
Definition Paths.cpp:877
static CORE_API FString SandboxesDir()
Definition Paths.cpp:554
static CORE_API FString GameAgnosticSavedDir()
Definition Paths.cpp:862
static CORE_API bool DirectoryExists(const FString &InPath)
Definition Paths.cpp:1154
static CORE_API FString AutomationLogDir()
Definition Paths.cpp:623
static CORE_API FString EngineConfigDir()
Definition Paths.cpp:233
static CORE_API FString EngineVersionAgnosticUserDir()
Definition Paths.cpp:216
static CORE_API FString EngineSavedDir()
Definition Paths.cpp:253
static CORE_API FString EngineContentDir()
Definition Paths.cpp:228
static CORE_API bool IsUnderDirectory(const FString &InPath, const FString &InDirectory)
Definition Paths.cpp:1917
static CORE_API bool FileExists(const FString &InPath)
Definition Paths.cpp:1149
static FString ProjectPlatformExtensionDir(const TCHAR *Platform)
Definition Paths.h:197
static void PlatformIndependentNormalizePath(FString &Path, bool bRemoveDuplicateSlashes, int32 &OutFirstColonIndex, int32 &OutFirstSlashIndex)
Definition Paths.cpp:1284
static CORE_API FString ProjectPersistentDownloadDir()
Definition Paths.cpp:539
static CORE_API FString ScreenShotDir()
Definition Paths.cpp:564
static CORE_API FString GameDevelopersDir()
Definition Paths.cpp:633
static CORE_API bool ShouldSaveToUserDir()
Definition Paths.cpp:183
static CORE_API FString EnterpriseDir()
Definition Paths.cpp:284
static CORE_API FString ProjectLogDir()
Definition Paths.cpp:584
static CORE_API bool MakePathRelativeTo(FString &InPath, const TCHAR *InRelativeTo)
Definition Paths.cpp:1523
static CORE_API FString CreateStandardFilename(const FString &InPath)
Definition Paths.cpp:1414
static CORE_API FString BugItDir()
Definition Paths.cpp:569
static FString EnginePlatformExtensionDir(const TCHAR *Platform)
Definition Paths.h:178
static CORE_API FString EnginePluginsDir()
Definition Paths.cpp:264
static CORE_API void MakePlatformFilename(FString &InPath)
Definition Paths.cpp:1517
static CORE_API FString ConvertFromSandboxPath(const FString &InPath, const TCHAR *InSandboxName)
Definition Paths.cpp:1636
static CORE_API FString SetExtension(const FString &InPath, const FString &InNewExtension)
Definition Paths.cpp:1124
static CORE_API FString EngineUserLayoutDir()
Definition Paths.cpp:279
static CORE_API FString AutomationDir()
Definition Paths.cpp:608
static CORE_API const FString & ProjectSavedDir()
Definition Paths.cpp:496
static CORE_API bool IsRelative(const FString &InPath)
Definition Paths.cpp:1267
static CORE_API FStringView DevelopersFolderName()
Definition Paths.cpp:641
static CORE_API FString ChangeExtension(const FString &InPath, const FString &InNewExtension)
Definition Paths.cpp:1094
static CORE_API FString EngineProjectLayoutDir()
Definition Paths.cpp:274
static CORE_API FString LaunchDir()
Definition Paths.cpp:194
static CORE_API FString EngineSourceDir()
Definition Paths.cpp:867
static CORE_API void NormalizeFilename(FString &InPath)
Definition Paths.cpp:1334
static CORE_API FString GetCleanFilenameUtf8(const FUtf8String &InPath)
Definition Paths.cpp:978
static CORE_API FString GetBaseFilename(const FString &InPath, bool bRemovePath=true)
Definition Paths.cpp:1033
static CORE_API FString AudioCaptureDir()
Definition Paths.cpp:579
static CORE_API FString GameUserDeveloperDir()
Definition Paths.cpp:670
static CORE_API FString EngineEditorSettingsDir()
Definition Paths.cpp:238
EGetExtensionDirsFlags
Definition Paths.h:232
static CORE_API const TArray< FString > & GetGameLocalizationPaths()
Definition Paths.cpp:776
static TArray< FString > GetCookedEditorLocalizationPaths()
Definition Paths.h:456
static CORE_API TArray< FString > GetExtensionDirs(const FString &BaseDir, const FString &SubDir, bool bCheckValid)
Definition Paths.cpp:432
static CORE_API bool CanGetProjectDir()
Definition Paths.cpp:156
static CORE_API bool IsStaged()
Definition Paths.cpp:161
static CORE_API FString EngineDir()
Definition Paths.cpp:199
static CORE_API void TearDown()
Definition Paths.cpp:1937
static CORE_API bool CollapseRelativeDirectories(FString &InPath, bool bCollapseAllPossible=false)
Definition Paths.cpp:1362
static CORE_API FString GetCleanFilename(const FString &InPath)
Definition Paths.cpp:967
static CORE_API FString EnterpriseFeaturePackDir()
Definition Paths.cpp:294
static CORE_API FString GetProjectFilePath()
Definition Paths.cpp:889
static CORE_API const TArray< FString > & GetToolTipLocalizationPaths()
Definition Paths.cpp:752
static CORE_API FString ProjectPluginsDir()
Definition Paths.cpp:524
static CORE_API FString DiffDir()
Definition Paths.cpp:675
static CORE_API FString CloudDir()
Definition Paths.cpp:628
static CORE_API FString SourceConfigDir()
Definition Paths.cpp:544
static CORE_API const TArray< FString > & GetRestrictedFolderNames()
Definition Paths.cpp:803
static CORE_API FString RootDir()
Definition Paths.cpp:452
static CORE_API FString ConvertRelativePathToFull(const FString &InPath)
Definition Paths.cpp:1586
static CORE_API FString CreateTempFilename(const TCHAR *Path, const TCHAR *Prefix=TEXT(""), const TCHAR *Extension=TEXT(".tmp"))
Definition Paths.cpp:1648
static CORE_API FString AutomationTransientDir()
Definition Paths.cpp:613
static CORE_API FString ShaderWorkingDir()
Definition Paths.cpp:512
static CORE_API FString GetPathLeaf(const FString &InPath)
Definition Paths.cpp:1070
static CORE_API FString ProjectUserDir()
Definition Paths.cpp:462
static CORE_API FString EngineIntermediateDir()
Definition Paths.cpp:248
static CORE_API FString ConvertPath(const FString &Path, EPathConversion Method, const TCHAR *ExtraData=nullptr, const TCHAR *OverrideProjectDir=nullptr)
Definition Paths.cpp:310
static CORE_API FString GetInvalidFileSystemChars()
Definition Paths.cpp:1660
static CORE_API FString FindCorrectCase(const FString &Path)
Definition Paths.cpp:904
static CORE_API FString ProjectContentDir()
Definition Paths.cpp:486
static CORE_API FString EnginePlatformExtensionsDir()
Definition Paths.cpp:299
static CORE_API bool HasProjectPersistentDownloadDir()
Definition Paths.cpp:534
static CORE_API void SetProjectFilePath(const FString &NewGameProjectFilePath)
Definition Paths.cpp:896
static CORE_API FString GameUserDeveloperFolderName()
Definition Paths.cpp:646
static CORE_API FString VideoCaptureDir()
Definition Paths.cpp:574
static CORE_API void MakeStandardFilename(FString &InPath)
Definition Paths.cpp:1512
static CORE_API bool IsDrive(const FString &InPath)
Definition Paths.cpp:1159
static CORE_API FString GetPath(const FString &InPath)
Definition Paths.cpp:1043
EPathConversion
Definition Paths.h:203
@ Project_NotForLicensees
@ Project_PlatformExtension
@ Engine_PlatformExtension
static CORE_API FString GetExtension(const FString &InPath, bool bIncludeDot=false)
Definition Paths.cpp:955
static CORE_API FString AutomationReportsDir()
Definition Paths.cpp:618
static CORE_API FString EngineDefaultLayoutDir()
Definition Paths.cpp:269
static CORE_API FString GeneratedConfigDir()
Definition Paths.cpp:549
static CORE_API const FString & GetRelativePathToRoot()
Definition Paths.cpp:1855
static CORE_API FString ConvertToSandboxPath(const FString &InPath, const TCHAR *InSandboxName)
Definition Paths.cpp:1616
static CORE_API FString MakeValidFileName(const FString &InString, const TCHAR InReplacementChar=TEXT('\0'))
Definition Paths.cpp:1670
implementation
Definition PlayInEditorLoadingScope.h:8
decltype(GetBindingType(std::declval< T >())) TToStringType_T
Definition Paths.h:29
const TCHAR * GetBindingType(const TCHAR *Ptr)