UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ObjectHandle.h File Reference
#include "Containers/Map.h"
#include "Containers/ScriptArray.h"
#include "CoreTypes.h"
#include "HAL/CriticalSection.h"
#include "HAL/Platform.h"
#include "Misc/AssertionMacros.h"
#include "Templates/TypeHash.h"
#include "UObject/NameTypes.h"
#include "UObject/ObjectHandleTracking.h"
#include "UObject/ObjectMacros.h"
#include "UObject/ObjectRef.h"
#include "UObject/PackedObjectRef.h"
#include "UObject/RemoteObject.h"

Go to the source code of this file.

Classes

struct  UE::CoreUObject::Private::FObjectHandlePackageDebugData
 
struct  UE::CoreUObject::Private::FObjectHandleDataClassDescriptor
 
struct  UE::CoreUObject::Private::FObjectPathIdDebug
 
struct  UE::CoreUObject::Private::FObjectDescriptorDebug
 
struct  UE::CoreUObject::Private::FStoredObjectPathDebug
 

Namespaces

namespace  UE
 
namespace  UE::CoreUObject
 
namespace  UE::CoreUObject::Private
 

Typedefs

using FObjectHandle = UObject *
 

Functions

bool IsObjectHandleNull (FObjectHandle Handle)
 
bool IsObjectHandleResolved (FObjectHandle Handle)
 
bool IsObjectHandleTypeSafe (FObjectHandle Handle)
 
constexpr FObjectHandle UE::CoreUObject::Private::MakeObjectHandle (UObject *Object)
 these functions are always defined regardless of UE_WITH_OBJECT_HANDLE_LATE_RESOLVE value
 
UObjectUE::CoreUObject::Private::ResolveObjectHandle (FObjectHandle &Handle)
 
UClassUE::CoreUObject::Private::ResolveObjectHandleClass (FObjectHandle Handle)
 
UObjectUE::CoreUObject::Private::ResolveObjectHandleNoRead (FObjectHandle &Handle)
 
UObjectUE::CoreUObject::Private::ResolveObjectHandleNoReadNoCheck (FObjectHandle &Handle)
 
UObjectUE::CoreUObject::Private::ReadObjectHandlePointerNoCheck (FObjectHandle Handle)
 
bool IsObjectHandleResolved_ForGC (FObjectHandle Handle)
 
UObjectUE::CoreUObject::Private::NoResolveObjectHandleNoRead (const FObjectHandle &Handle)
 

Variables

constexpr uint32 UE::CoreUObject::Private::TypeIdShift = 1
 
constexpr uint32 UE::CoreUObject::Private::ObjectIdShift = 2
 
constexpr uint32 UE::CoreUObject::Private::PackageIdShift = 34
 
constexpr uint32 UE::CoreUObject::Private::PackageIdMask = 0x3FFF'FFFF
 

Typedef Documentation

◆ FObjectHandle

FObjectHandle is either a packed object ref or the resolved pointer to an object. Depending on configuration when you create a handle, it may immediately be resolved to a pointer.

Function Documentation

◆ IsObjectHandleNull()

bool IsObjectHandleNull ( FObjectHandle  Handle)
inline

◆ IsObjectHandleResolved()

bool IsObjectHandleResolved ( FObjectHandle  Handle)
inline

◆ IsObjectHandleResolved_ForGC()

bool IsObjectHandleResolved_ForGC ( FObjectHandle  Handle)
inline

◆ IsObjectHandleTypeSafe()

bool IsObjectHandleTypeSafe ( FObjectHandle  Handle)
inline