UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSoftClassPath Struct Reference

#include <SoftObjectPath.h>

+ Inheritance diagram for FSoftClassPath:

Public Member Functions

 FSoftClassPath ()=default
 
 FSoftClassPath (const FSoftClassPath &Other)=default
 
 FSoftClassPath (FSoftClassPath &&Other)=default
 
 ~FSoftClassPath ()=default
 
FSoftClassPathoperator= (const FSoftClassPath &Path)=default
 
FSoftClassPathoperator= (FSoftClassPath &&Path)=default
 
 FSoftClassPath (const FString &PathString)
 
 FSoftClassPath (const UClass *InClass)
 
template<typename T >
UClassTryLoadClass () const
 
COREUOBJECT_API UClassResolveClass () const
 
COREUOBJECT_API bool SerializeFromMismatchedTag (const FPropertyTag &Tag, FStructuredArchive::FSlot Slot)
 
- Public Member Functions inherited from FSoftObjectPath
 FSoftObjectPath ()=default
 
 FSoftObjectPath (const FSoftObjectPath &Other)=default
 
 FSoftObjectPath (FSoftObjectPath &&Other)=default
 
 ~FSoftObjectPath ()=default
 
FSoftObjectPathoperator= (const FSoftObjectPath &Path)=default
 
FSoftObjectPathoperator= (FSoftObjectPath &&Path)=default
 
 FSoftObjectPath (const FString &Path)
 
 FSoftObjectPath (FTopLevelAssetPath InAssetPath, TStringOverload< FWideString > InSubPathString)
 
 FSoftObjectPath (FTopLevelAssetPath InAssetPath, TStringOverload< FUtf8String > InSubPathString)
 
 FSoftObjectPath (FName InPackageName, FName InAssetName, const FString &InSubPathString)
 
 FSoftObjectPath (FTopLevelAssetPath InAssetPath)
 
 FSoftObjectPath (FWideStringView Path)
 
 FSoftObjectPath (FAnsiStringView Path)
 
 FSoftObjectPath (const WIDECHAR *Path)
 
 FSoftObjectPath (const ANSICHAR *Path)
 
 FSoftObjectPath (TYPE_OF_NULLPTR)
 
template<typename T >
 FSoftObjectPath (const TObjectPtr< T > &InObject)
 
 FSoftObjectPath (const FObjectPtr &InObject)
 
 FSoftObjectPath (const UObject *InObject)
 
FSoftObjectPathoperator= (const FTopLevelAssetPath Path)
 
FSoftObjectPathoperator= (const FString &Path)
 
FSoftObjectPathoperator= (FWideStringView Path)
 
FSoftObjectPathoperator= (FAnsiStringView Path)
 
FSoftObjectPathoperator= (const WIDECHAR *Path)
 
FSoftObjectPathoperator= (const ANSICHAR *Path)
 
FSoftObjectPathoperator= (TYPE_OF_NULLPTR)
 
COREUOBJECT_API FString ToString () const
 
COREUOBJECT_API void ToString (FStringBuilderBase &Builder) const
 
COREUOBJECT_API void ToString (FUtf8StringBuilderBase &Builder) const
 
COREUOBJECT_API void AppendString (FString &Builder) const
 
COREUOBJECT_API void AppendString (FStringBuilderBase &Builder) const
 
COREUOBJECT_API void AppendString (FUtf8StringBuilderBase &Builder) const
 
FTopLevelAssetPath GetAssetPath () const
 
FSoftObjectPath GetWithoutSubPath () const
 
FString GetAssetPathString () const
 
UE_FORCEINLINE_HINT FString GetSubPathString () const
 
UE_FORCEINLINE_HINT const FUtf8StringGetSubPathUtf8String () const
 
UE_FORCEINLINE_HINT void SetSubPathString (TStringOverload< FWideString > InSubPathString)
 
UE_FORCEINLINE_HINT void SetSubPathString (TStringOverload< FUtf8String > InSubPathString)
 
FString GetLongPackageName () const
 
FName GetLongPackageFName () const
 
FString GetAssetName () const
 
FName GetAssetFName () const
 
COREUOBJECT_API void SetPath (const FTopLevelAssetPath &InAssetPath)
 
COREUOBJECT_API void SetPath (const FTopLevelAssetPath &InAssetPath, TStringOverload< FWideString > InSubPathString)
 
COREUOBJECT_API void SetPath (const FTopLevelAssetPath &InAssetPath, TStringOverload< FUtf8String > InSubPathString)
 
COREUOBJECT_API void SetPath (FWideStringView Path)
 
COREUOBJECT_API void SetPath (FAnsiStringView Path)
 
COREUOBJECT_API void SetPath (FUtf8StringView Path)
 
COREUOBJECT_API void SetPath (const UObject *InObject)
 
void SetPath (const WIDECHAR *Path)
 
void SetPath (const ANSICHAR *Path)
 
void SetPath (const FString &Path)
 
COREUOBJECT_API bool RemapPackage (FName OldPackageName, FName NewPackageName)
 
COREUOBJECT_API UObjectTryLoad (FUObjectSerializeContext *InLoadContext=nullptr) const
 
COREUOBJECT_API int32 LoadAsync (FLoadSoftObjectPathAsyncDelegate InCompletionDelegate, FLoadAssetAsyncOptionalParams InOptionalParams=FLoadAssetAsyncOptionalParams()) const
 
COREUOBJECT_API UObjectResolveObject () const
 
void Reset ()
 
UE_FORCEINLINE_HINT bool IsValid () const
 
UE_FORCEINLINE_HINT bool IsNull () const
 
UE_FORCEINLINE_HINT bool IsAsset () const
 
UE_FORCEINLINE_HINT bool IsSubobject () const
 
bool LexicalLess (const FSoftObjectPath &Other) const
 
bool FastLess (const FSoftObjectPath &Other) const
 
COREUOBJECT_API bool Serialize (FArchive &Ar)
 
COREUOBJECT_API bool Serialize (FStructuredArchive::FSlot Slot)
 
COREUOBJECT_API bool operator== (FSoftObjectPath const &Other) const
 
bool operator!= (FSoftObjectPath const &Other) const
 
COREUOBJECT_API bool ExportTextItem (FString &ValueStr, FSoftObjectPath const &DefaultValue, UObject *Parent, int32 PortFlags, UObject *ExportRootScope) const
 
COREUOBJECT_API bool ImportTextItem (const TCHAR *&Buffer, int32 PortFlags, UObject *Parent, FOutputDevice *ErrorText, FArchive *InSerializingArchive=nullptr)
 
COREUOBJECT_API bool SerializeFromMismatchedTag (struct FPropertyTag const &Tag, FStructuredArchive::FSlot Slot)
 
COREUOBJECT_API void SerializePath (FArchive &Ar)
 
COREUOBJECT_API void SerializePathWithoutFixup (FArchive &Ar)
 
COREUOBJECT_API bool PreSavePath (bool *bReportSoftObjectPathRedirects=nullptr)
 
COREUOBJECT_API void PostLoadPath (FArchive *InArchive) const
 
COREUOBJECT_API bool FixupForPIE (TFunctionRef< void(int32, FSoftObjectPath &)> InPreFixupForPIECustomFunction=FSoftObjectPath_DefaultPreFixupForPIEFunction)
 
COREUOBJECT_API bool FixupForPIE (int32 PIEInstance, TFunctionRef< void(int32, FSoftObjectPath &)> InPreFixupForPIECustomFunction=FSoftObjectPath_DefaultPreFixupForPIEFunction)
 
COREUOBJECT_API bool FixupCoreRedirects ()
 

Static Public Member Functions

static COREUOBJECT_API FSoftClassPath GetOrCreateIDForClass (const UClass *InClass)
 
- Static Public Member Functions inherited from FSoftObjectPath
static COREUOBJECT_API FSoftObjectPath ConstructFromPackageAssetSubpath (FName InPackageName, FName InAssetName, const FString &InSubPathString)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromPackageAsset (FName InPackageName, FName InAssetName)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromAssetPathAndSubpath (FTopLevelAssetPath InAssetPath, TStringOverload< FWideString > InSubPathString)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromAssetPathAndSubpath (FTopLevelAssetPath InAssetPath, TStringOverload< FUtf8String > InSubPathString)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromAssetPath (FTopLevelAssetPath InAssetPath)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromStringPath (FString &&InPath)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromStringPath (FStringView InPath)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromStringPath (FUtf8StringView InPath)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromObject (const UObject *InObject)
 
static COREUOBJECT_API FSoftObjectPath ConstructFromObject (const FObjectPtr &InObject)
 
template<typename T >
static FSoftObjectPath ConstructFromObject (const TObjectPtr< T > &InObject)
 
static COREUOBJECT_API FSoftObjectPath GetOrCreateIDForObject (FObjectPtr Object)
 
static UE_FORCEINLINE_HINT FSoftObjectPath GetOrCreateIDForObject (const UObject *Object)
 
template<typename T >
static UE_FORCEINLINE_HINT FSoftObjectPath GetOrCreateIDForObject (TObjectPtr< T > Object)
 
static COREUOBJECT_API void AddPIEPackageName (FName NewPIEPackageName)
 
static COREUOBJECT_API void ClearPIEPackageNames ()
 

Detailed Description

A struct that contains a string reference to a class, can be used to make soft references to classes

Constructor & Destructor Documentation

◆ FSoftClassPath() [1/5]

FSoftClassPath::FSoftClassPath ( )
default

◆ FSoftClassPath() [2/5]

FSoftClassPath::FSoftClassPath ( const FSoftClassPath Other)
default

◆ FSoftClassPath() [3/5]

FSoftClassPath::FSoftClassPath ( FSoftClassPath &&  Other)
default

◆ ~FSoftClassPath()

FSoftClassPath::~FSoftClassPath ( )
default

◆ FSoftClassPath() [4/5]

FSoftClassPath::FSoftClassPath ( const FString &  PathString)
inline

Construct from a path string

◆ FSoftClassPath() [5/5]

FSoftClassPath::FSoftClassPath ( const UClass InClass)
inline

Construct from an existing class, will do some string processing

Member Function Documentation

◆ GetOrCreateIDForClass()

FSoftClassPath FSoftClassPath::GetOrCreateIDForClass ( const UClass InClass)
static

◆ operator=() [1/2]

FSoftClassPath & FSoftClassPath::operator= ( const FSoftClassPath Path)
default

◆ operator=() [2/2]

FSoftClassPath & FSoftClassPath::operator= ( FSoftClassPath &&  Path)
default

◆ ResolveClass()

UClass * FSoftClassPath::ResolveClass ( ) const

Attempts to find a currently loaded object that matches this object ID

Returns
Found UClass, or NULL if not currently loaded

◆ SerializeFromMismatchedTag()

bool FSoftClassPath::SerializeFromMismatchedTag ( const FPropertyTag Tag,
FStructuredArchive::FSlot  Slot 
)

◆ TryLoadClass()

template<typename T >
UClass * FSoftClassPath::TryLoadClass ( ) const
inline

Attempts to load the class.

Returns
Loaded UObject, or null if the class fails to load, or if the reference is not valid.

The documentation for this struct was generated from the following files: