UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ObjectHandlePrivate.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4#include "UObject/Object.h"
6
8{
10 {
12 {
13 return Object->OuterPrivate;
14 }
15
17 {
18#if UE_WITH_REMOTE_OBJECT_HANDLE
19 return Object->OuterPrivate.GetNoResolve();
20#else
21 return Object->OuterPrivate;
22#endif
23 }
24
25#if UE_WITH_REMOTE_OBJECT_HANDLE
26 static void ChangeRemoteId(UObjectBase* Object, FRemoteObjectId Id);
27#endif
28
30 {
31#if UE_WITH_REMOTE_OBJECT_HANDLE
32 if (Object)
33 {
34 if (UNLIKELY(Object->InternalIndex < 0))
35 {
36 return Object->GetPendingRegistrantRemoteId();
37 }
38 else
39 {
40 return GUObjectArray.GetRemoteId(Object->InternalIndex);
41 }
42 }
43#endif // UE_WITH_REMOTE_OBJECT_HANDLE
44 return FRemoteObjectId();
45 }
46 };
47}
48
#define FORCEINLINE
Definition AndroidPlatform.h:140
#define UNLIKELY(x)
Definition Platform.h:857
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
FUObjectArray GUObjectArray
Definition UObjectHash.cpp:55
Definition UObjectBase.h:59
Definition Object.h:95
Definition CoreGlobals.cpp:268
Definition RemoteObjectTypes.h:212
Definition ObjectHandlePrivate.h:10
static FORCEINLINE FRemoteObjectId GetRemoteId(const UObjectBase *Object)
Definition ObjectHandlePrivate.h:29
static FORCEINLINE UObject * GetNonAccessTrackedOuterNoResolve(const UObjectBase *Object)
Definition ObjectHandlePrivate.h:16
static FORCEINLINE const ObjectPtr_Private::TNonAccessTrackedObjectPtr< UObject > & GetNonAccessTrackedOuter(UObjectBase *Object)
Definition ObjectHandlePrivate.h:11