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

#include <LazyObjectPtr.h>

Public Member Functions

 FUniqueObjectGuid ()
 
 FUniqueObjectGuid (const FGuid &InGuid)
 
UE_FORCEINLINE_HINT void Reset ()
 
COREUOBJECT_API FUniqueObjectGuid (const UObject *InObject)
 
COREUOBJECT_API FString ToString () const
 
COREUOBJECT_API void FromString (const FString &From)
 
COREUOBJECT_API FUniqueObjectGuid FixupForPIE (int32 PlayInEditorID=UE::GetPlayInEditorID()) const
 
COREUOBJECT_API UObjectResolveObject () const
 
UE_FORCEINLINE_HINT bool IsValid () const
 
UE_FORCEINLINE_HINT bool operator== (const FUniqueObjectGuid &Other) const
 
UE_FORCEINLINE_HINT bool operator!= (const FUniqueObjectGuid &Other) const
 
UE_FORCEINLINE_HINT bool IsDefault () const
 
UE_FORCEINLINE_HINT const FGuidGetGuid () const
 

Static Public Member Functions

static int32 GetCurrentTag ()
 
static int32 InvalidateTag ()
 
static COREUOBJECT_API FUniqueObjectGuid GetOrCreateIDForObject (FObjectPtr Object)
 
static UE_FORCEINLINE_HINT FUniqueObjectGuid GetOrCreateIDForObject (const UObject *Object)
 
template<typename T >
static UE_FORCEINLINE_HINT FUniqueObjectGuid GetOrCreateIDForObject (TObjectPtr< T > Object)
 

Friends

UE_FORCEINLINE_HINT friend uint32 GetTypeHash (const FUniqueObjectGuid &ObjectGuid)
 
FArchiveoperator<< (FArchive &Ar, FUniqueObjectGuid &ObjectGuid)
 
void operator<< (FStructuredArchive::FSlot Slot, FUniqueObjectGuid &ObjectGuid)
 

Detailed Description

Wrapper structure for a GUID that uniquely identifies registered UObjects. The actual GUID is stored in an object annotation that is updated when a new reference is made.

Constructor & Destructor Documentation

◆ FUniqueObjectGuid() [1/3]

FUniqueObjectGuid::FUniqueObjectGuid ( )
inline

◆ FUniqueObjectGuid() [2/3]

FUniqueObjectGuid::FUniqueObjectGuid ( const FGuid InGuid)
inline

◆ FUniqueObjectGuid() [3/3]

COREUOBJECT_API FUniqueObjectGuid::FUniqueObjectGuid ( const UObject InObject)
explicit

Construct from an existing object

Member Function Documentation

◆ FixupForPIE()

FUniqueObjectGuid FUniqueObjectGuid::FixupForPIE ( int32  PlayInEditorID = UE::GetPlayInEditorID()) const

Fixes up this UniqueObjectID to add or remove the PIE prefix depending on what is currently active

◆ FromString()

void FUniqueObjectGuid::FromString ( const FString &  From)

Converts from a string

◆ GetCurrentTag()

static int32 FUniqueObjectGuid::GetCurrentTag ( )
inlinestatic

◆ GetGuid()

UE_FORCEINLINE_HINT const FGuid & FUniqueObjectGuid::GetGuid ( ) const
inline

Returns wrapped Guid

◆ GetOrCreateIDForObject() [1/3]

static UE_FORCEINLINE_HINT FUniqueObjectGuid FUniqueObjectGuid::GetOrCreateIDForObject ( const UObject Object)
inlinestatic

◆ GetOrCreateIDForObject() [2/3]

FUniqueObjectGuid FUniqueObjectGuid::GetOrCreateIDForObject ( FObjectPtr  Object)
static

◆ GetOrCreateIDForObject() [3/3]

template<typename T >
static UE_FORCEINLINE_HINT FUniqueObjectGuid FUniqueObjectGuid::GetOrCreateIDForObject ( TObjectPtr< T >  Object)
inlinestatic

◆ InvalidateTag()

static int32 FUniqueObjectGuid::InvalidateTag ( )
inlinestatic

◆ IsDefault()

UE_FORCEINLINE_HINT bool FUniqueObjectGuid::IsDefault ( ) const
inline

Returns true is this is the default value

◆ IsValid()

UE_FORCEINLINE_HINT bool FUniqueObjectGuid::IsValid ( ) const
inline

Test if this can ever point to a live UObject

◆ operator!=()

UE_FORCEINLINE_HINT bool FUniqueObjectGuid::operator!= ( const FUniqueObjectGuid Other) const
inline

◆ operator==()

UE_FORCEINLINE_HINT bool FUniqueObjectGuid::operator== ( const FUniqueObjectGuid Other) const
inline

◆ Reset()

UE_FORCEINLINE_HINT void FUniqueObjectGuid::Reset ( )
inline

Reset the guid pointer back to the invalid state

◆ ResolveObject()

UObject * FUniqueObjectGuid::ResolveObject ( ) const

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

Returns
Found UObject, or nullptr if not currently loaded

◆ ToString()

FString FUniqueObjectGuid::ToString ( ) const

Converts into a string

Friends And Related Symbol Documentation

◆ GetTypeHash

UE_FORCEINLINE_HINT friend uint32 GetTypeHash ( const FUniqueObjectGuid ObjectGuid)
friend

◆ operator<< [1/2]

FArchive & operator<< ( FArchive Ar,
FUniqueObjectGuid ObjectGuid 
)
friend

◆ operator<< [2/2]

void operator<< ( FStructuredArchive::FSlot  Slot,
FUniqueObjectGuid ObjectGuid 
)
friend

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