9#include "Containers/Array.h"
367 UE_DEPRECATED(5.0,
"Deprecated. UPackage::Guid has not been used by the engine for a long time. Call DoesPackageExist without a Guid.")
673 return OnContentPathMountedEvent;
680 return OnContentPathDismountedEvent;
943 UE_DEPRECATED(5.0,
"Specifying AllowTextFormats is no longer supported. Text format is instead specified as a field on the result struct from IPackageResourceManager->OpenReadPackage.")
959 return DoesPackageExistOverrideDelegate;
1046 friend struct ::UE::AssetRegistry::Impl::FScanPathContext;
#define NULL
Definition oodle2base.h:134
#define UE_INTERNAL
Definition CoreMiscDefines.h:345
#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 DECLARE_DELEGATE_RetVal_OneParam(ReturnValueType, DelegateName, Param1Type)
Definition DelegateCombinations.h:54
#define ENUM_CLASS_FLAGS(Enum)
Definition EnumClassFlags.h:6
return true
Definition ExternalRpcRegistry.cpp:601
const TCHAR * LexToString(EAnalyticsRecordEventMode Mode)
Definition IAnalyticsProvider.cpp:5
#define DECLARE_LOG_CATEGORY_EXTERN(CategoryName, DefaultVerbosity, CompileTimeVerbosity)
Definition LogMacros.h:361
const bool
Definition NetworkReplayStreaming.h:178
EPackageExtension
Definition PackagePath.h:39
Definition AssetRegistryConsoleCommands.h:16
Definition NameTypes.h:617
Definition PackageName.h:34
static UE_INTERNAL COREUOBJECT_API UE::Core::FVersePath LongPackagePathToVersePath(FStringView LongPackagePath)
Definition PackageName.cpp:2486
static COREUOBJECT_API bool TryConvertLongPackageNameToFilename(const FString &InLongPackageName, FString &OutFilename, const FString &InExtension=TEXT(""))
Definition PackageName.cpp:933
static COREUOBJECT_API bool IsInEngineTransientPackages(FStringView InPackageName)
Definition PackageName.cpp:3322
static COREUOBJECT_API FString GetDelegateResolvedPackagePath(const FString &InSourcePackagePath)
Definition PackageName.cpp:2290
static COREUOBJECT_API FWideStringView ObjectPathToPackageName(FWideStringView InObjectPath)
Definition PackageName.cpp:3069
static COREUOBJECT_API FWideStringView ObjectPathToPathWithinPackage(FWideStringView InObjectPath)
Definition PackageName.cpp:3098
static COREUOBJECT_API bool IsLocalizedPackage(FStringView InPackageName)
Definition PackageName.cpp:3329
static COREUOBJECT_API bool ParseExportTextPath(FWideStringView InExportTextPath, FWideStringView *OutClassName, FWideStringView *OutObjectPath)
Definition PackageName.cpp:2834
static COREUOBJECT_API bool IsTextAssetPackageExtension(const TCHAR *Ext)
Definition PackageName.cpp:2551
static COREUOBJECT_API void RegisterShortPackageNamesForUObjectModules()
Definition PackageName.cpp:1836
static COREUOBJECT_API bool TryConvertFilenameToLongPackageName(const FString &InFilename, FString &OutPackageName, FString *OutFailureReason=nullptr, const EConvertFlags Flags=EConvertFlags::None)
Definition PackageName.cpp:797
static COREUOBJECT_API void QueryRootContentPaths(TArray< FString > &OutRootContentPaths, bool bIncludeReadOnlyRoots=false, bool bWithoutLeadingSlashes=false, bool bWithoutTrailingSlashes=false)
Definition PackageName.cpp:2730
static COREUOBJECT_API FGetExplanationForUnavailablePackageDelegate & GetExplanationForUnavailablePackageDelegate()
Definition PackageName.cpp:1734
static COREUOBJECT_API bool IsValidObjectPath(FStringView InObjectPath, FText *OutReason=nullptr)
Definition PackageName.cpp:1327
static COREUOBJECT_API bool IsShortPackageName(const FString &PossiblyLongName)
Definition PackageName.cpp:81
static COREUOBJECT_API bool TryGetMountPointForPath(FStringView InFilePathOrPackageName, FStringBuilderBase &OutMountPointPackageName, FStringBuilderBase &OutMountPointFilePath, FStringBuilderBase &OutRelPath, EFlexNameType *OutFlexNameType=nullptr, EErrorCode *OutFailureReason=nullptr)
Definition PackageName.cpp:1617
TFunctionRef< bool(const TCHAR *)> FPackageNameVisitor
Definition PackageName.h:664
static COREUOBJECT_API void IteratePackagesInDirectory(const FString &RootDir, const FPackageNameVisitor &Visitor)
Definition PackageName.cpp:2688
static COREUOBJECT_API bool IsTextPackageExtension(const TCHAR *Ext)
Definition PackageName.cpp:2541
static COREUOBJECT_API bool IsTempPackage(FStringView InPackageName)
Definition PackageName.cpp:3317
static COREUOBJECT_API FName GetShortFName(FStringView LongName)
Definition PackageName.cpp:118
static COREUOBJECT_API FString GetShortName(const UPackage *Package)
Definition PackageName.cpp:102
static COREUOBJECT_API bool FindPackageFileWithoutExtension(const FString &InPackageFilename, FString &OutFilename)
Definition PackageName.cpp:1870
static COREUOBJECT_API const TCHAR * GetGeneratedPackageSubPath()
Definition PackageName.cpp:2627
static COREUOBJECT_API bool IsVerseExtension(const TCHAR *Ext)
Definition PackageName.cpp:2613
TFunctionRef< bool(const TCHAR *, const FFileStatData &)> FPackageNameStatVisitor
Definition PackageName.h:665
DECLARE_MULTICAST_DELEGATE_TwoParams(FOnContentPathMountedEvent, const FString &, const FString &)
static COREUOBJECT_API FString ConvertToLongScriptPackageName(const TCHAR *InShortName)
Definition PackageName.cpp:1818
static COREUOBJECT_API FString FilenameToLongPackageName(const FString &InFilename)
Definition PackageName.cpp:888
static COREUOBJECT_API void SplitPackageName(FStringView InPackageName, FStringView *OutPackageRoot, FStringView *OutPackagePath, FStringView *OutPackageLeafName, EPathFormatFlags Flags=EPathFormatFlags::MountPointSlashes)
Definition PackageName.cpp:2882
static COREUOBJECT_API FString GetSourcePackagePath(const FString &InLocalizedPackagePath)
Definition PackageName.cpp:2340
static COREUOBJECT_API FString LongPackageNameToFilename(const FString &InLongPackageName, const FString &InExtension=TEXT(""))
Definition PackageName.cpp:966
static COREUOBJECT_API bool FixPackageNameCase(FString &LongPackageName, FStringView Extension)
Definition PackageName.cpp:1884
static COREUOBJECT_API bool IsVersePackage(FStringView InPackageName)
Definition PackageName.cpp:3302
static COREUOBJECT_API void SplitFullObjectPath(const FString &InFullObjectPath, FString &OutClassName, FString &OutPackageName, FString &OutObjectName, FString &OutSubObjectName, bool bDetectClassName=true)
Definition PackageName.cpp:1037
EPathFormatFlags
Definition PackageName.h:729
@ MountPointTrailingSlash
static bool IsPackageFilename(FStringView Filename)
Definition PackageName.h:624
static COREUOBJECT_API void ObjectPathSplitFirstName(FWideStringView Text, FWideStringView &OutFirst, FWideStringView &OutRemainder)
Definition PackageName.cpp:3230
EErrorCode
Definition PackageName.h:45
@ LongPackageNames_PathTooShort
@ PackageNameSpacesNotAllowed
@ PackageNamePathIsMemoryOnly
@ PackageNameContainsInvalidCharacters
@ PackageNamePathNotMounted
@ LongPackageNames_PathWithNoStartingSlash
@ LongPackageNames_PathWithDoubleSlash
@ LongPackageNames_PathWithTrailingSlash
static COREUOBJECT_API TArray< FString > QueryMountPointLocalAbsPaths()
Definition PackageName.cpp:2783
static COREUOBJECT_API bool TryConvertShortPackagePathToLongInObjectPath(const FString &ObjectPath, FString &ConvertedObjectPath)
Definition PackageName.cpp:2242
EConvertFlags
Definition PackageName.h:59
@ AllowDots
When set, this will allow filenames following the wildcard pattern of *.*.*, rather than *....
static COREUOBJECT_API bool IsMemoryPackage(FStringView InPackageName)
Definition PackageName.cpp:3312
static COREUOBJECT_API bool FindPackagesInDirectories(TArray< FString > &OutPackages, const TArrayView< const FString > &RootDirs)
Definition PackageName.cpp:2667
static COREUOBJECT_API FString GetLongPackageAssetName(const FString &InLongPackageName)
Definition PackageName.cpp:1163
static COREUOBJECT_API bool SearchForPackageOnDisk(const FString &PackageName, FString *OutLongPackageName=NULL, FString *OutFilename=NULL)
Definition PackageName.cpp:2127
EPackageLocationFilter
Definition PackageName.h:405
static COREUOBJECT_API FWideStringView ObjectPathToOuterPath(FWideStringView InObjectPath)
Definition PackageName.cpp:3141
DECLARE_MULTICAST_DELEGATE_TwoParams(FGetExplanationForUnavailablePackageDelegate, const FName &, FStringBuilderBase &)
static COREUOBJECT_API bool IsValidLongPackageName(FStringView InLongPackageName, bool bIncludeReadOnlyRoots=false, EErrorCode *OutReason=nullptr)
Definition PackageName.cpp:1284
static COREUOBJECT_API bool MountPointExists(FStringView RootPath)
Definition PackageName.cpp:1410
DECLARE_MULTICAST_DELEGATE_TwoParams(FOnContentPathDismountedEvent, const FString &, const FString &)
static COREUOBJECT_API const FString & GetTextMapPackageExtension()
Definition PackageName.cpp:2535
static COREUOBJECT_API const FString & GetAssetPackageExtension()
Definition PackageName.cpp:2517
static COREUOBJECT_API const FString & GetMapPackageExtension()
Definition PackageName.cpp:2523
static COREUOBJECT_API bool TryConvertToMountedPath(FStringView InPath, FString *OutLocalPathNoExtension, FString *OutPackageName, FString *OutObjectName, FString *OutSubObjectName, FString *OutExtension, EFlexNameType *OutFlexNameType=nullptr, EErrorCode *OutFailureReason=nullptr)
Definition PackageName.cpp:976
static COREUOBJECT_API FWideStringView ObjectPathToObjectName(FWideStringView InObjectPath)
Definition PackageName.cpp:3210
static COREUOBJECT_API FName * FindScriptPackageName(FName InShortName)
Definition PackageName.cpp:1850
static COREUOBJECT_API FWideStringView ExportTextPathToObjectPath(FWideStringView InExportTextPath)
Definition PackageName.cpp:2862
static COREUOBJECT_API FName GetModuleScriptPackageName(FName ModuleName)
Definition PackageName.cpp:1800
static COREUOBJECT_API bool TryConvertGameRelativePackagePathToLocalPath(FStringView RelativePackagePath, FString &OutLocalPath)
Definition PackageName.cpp:154
static COREUOBJECT_API void GetExplanationForUnavailablePackage(const FName &UnavailablePackageName, FStringBuilderBase &InOutExplanation)
Definition PackageName.cpp:1740
static COREUOBJECT_API FStringView SplitPackageNameRoot(FStringView InPackageName, FStringView *OutRelativePath, EPathFormatFlags Flags=EPathFormatFlags::MountPointNoSlashes)
Definition PackageName.cpp:3011
static COREUOBJECT_API bool FindPackagesInDirectory(TArray< FString > &OutPackages, const FString &RootDir)
Definition PackageName.cpp:2655
static COREUOBJECT_API void ObjectPathAppend(FStringBuilderBase &ObjectPath, FStringView NextName)
Definition PackageName.cpp:3241
static bool DoesPackageExist(const FString &LongPackageName, const FGuid *Guid, FString *OutFilename, bool InAllowTextFormats=true)
Definition PackageName.h:368
static COREUOBJECT_API FString FormatErrorAsString(FStringView InPath, EErrorCode ErrorCode)
Definition PackageName.cpp:3360
static UE_INTERNAL COREUOBJECT_API UE::Core::FVersePath GetVersePath(const FTopLevelAssetPath &AssetPath)
Definition PackageName.cpp:2409
static COREUOBJECT_API FString ObjectPathCombine(FStringView ObjectPath, FStringView NextName)
Definition PackageName.cpp:3295
static COREUOBJECT_API EPackageLocationFilter DoesPackageExistEx(const FPackagePath &PackagePath, EPackageLocationFilter Filter, bool bMatchCaseOnDisk=false, FPackagePath *OutPackagePath=nullptr)
Definition PackageName.cpp:1937
static FOnContentPathMountedEvent & OnContentPathMounted()
Definition PackageName.h:671
static COREUOBJECT_API bool DoesPackageNameContainInvalidCharacters(FStringView InLongPackageName, FText *OutReason)
Definition PackageName.cpp:1168
static COREUOBJECT_API bool IsUnderGeneratedPackageSubPath(FStringView FileOrLongPackagePath)
Definition PackageName.cpp:2632
static COREUOBJECT_API bool IsTextMapPackageExtension(const TCHAR *Ext)
Definition PackageName.cpp:2564
static COREUOBJECT_API FString GetLocalizedPackagePath(const FString &InSourcePackagePath)
Definition PackageName.cpp:2397
static COREUOBJECT_API void UnRegisterMountPoint(const FString &RootPath, const FString &ContentPath)
Definition PackageName.cpp:1405
EFlexNameType
Definition PackageName.h:38
static COREUOBJECT_API void RegisterMountPoint(const FString &RootPath, const FString &ContentPath)
Definition PackageName.cpp:1400
static COREUOBJECT_API bool IsPackageExtension(const TCHAR *Ext)
Definition PackageName.cpp:2577
static COREUOBJECT_API void OnCoreUObjectInitialized()
Definition PackageName.cpp:2802
static FOnContentPathDismountedEvent & OnContentPathDismounted()
Definition PackageName.h:678
static COREUOBJECT_API FString GetNormalizedObjectPath(const FString &ObjectPath)
Definition PackageName.cpp:2268
static COREUOBJECT_API FText FormatErrorAsText(FStringView InPath, EErrorCode ErrorCode)
Definition PackageName.cpp:3366
static COREUOBJECT_API bool IsValidTextForLongPackageName(FStringView InLongPackageName, EErrorCode *OutReason=nullptr)
Definition PackageName.cpp:1211
static COREUOBJECT_API FWideStringView ObjectPathToSubObjectPath(FWideStringView InObjectPath)
Definition PackageName.cpp:3167
static COREUOBJECT_API bool TryConvertScriptPackageNameToModuleName(FStringView PackageName, FStringView &OutModuleName)
Definition PackageName.cpp:1805
static COREUOBJECT_API bool IsScriptPackage(FStringView InPackageName)
Definition PackageName.cpp:3307
static COREUOBJECT_API FString GetContentPathForPackageRoot(FStringView InPackageRoot)
Definition PackageName.cpp:1470
static COREUOBJECT_API bool IsAssetPackageExtension(const TCHAR *Ext)
Definition PackageName.cpp:2587
static COREUOBJECT_API bool IsValidPath(FStringView InPath)
Definition PackageName.cpp:1391
static COREUOBJECT_API const FString & GetTextAssetPackageExtension()
Definition PackageName.cpp:2529
static COREUOBJECT_API bool IsMapPackageExtension(const TCHAR *Ext)
Definition PackageName.cpp:2600
static COREUOBJECT_API bool SplitLongPackageName(const FString &InLongPackageName, FString &OutPackageRoot, FString &OutPackagePath, FString &OutPackageLeafName, const bool bStripRootLeadingSlash=false)
Definition PackageName.cpp:2980
static FDoesPackageExistOverride & DoesPackageExistOverride()
Definition PackageName.h:957
static COREUOBJECT_API FName GetPackageMountPoint(FStringView InPackagePath, bool InWithoutSlashes=true)
Definition PackageName.cpp:1425
static COREUOBJECT_API FString GetLongPackagePath(const FString &InLongPackageName)
Definition PackageName.cpp:1024
Definition PackagePath.h:89
Definition ArrayView.h:139
Definition AssetRegistryState.h:50
bool EndsWith(CharType Suffix) const
Definition StringView.h:371
Definition AssetRegistry.h:21
Definition VersePath.h:14
Definition AssetDataGatherer.h:86
Definition GenericPlatformFile.h:195
Definition TopLevelAssetPath.h:38