UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Net::Private::FObjectReferenceCache Class Reference

#include <ObjectReferenceCache.h>

Public Types

enum class  EWriteExportsResult : unsigned { WroteExports , BitStreamOverflow , NoExports }
 
enum class  EAsyncLoadMode : uint8 { UseCVar = 0 , ForceDisable = 1 , ForceEnable = 2 }
 

Public Member Functions

 FObjectReferenceCache ()
 
void Init (UReplicationSystem *ReplicationSystem)
 
bool IsDynamicObject (const UObject *Object) const
 
bool IsAuthority () const
 
FNetRefHandle CreateObjectReferenceHandle (const UObject *Object)
 
FNetRefHandle PreRegisterObjectReferenceHandle (const UObject *Object)
 
FNetRefHandle GetObjectReferenceHandleFromObject (const UObject *Object, EGetRefHandleFlags GetRefHandleFlags=EGetRefHandleFlags::None) const
 
UObjectGetObjectFromReferenceHandle (FNetRefHandle RefHandle)
 
UObjectGetPreRegisteredObjectFromReferenceHandle (FNetRefHandle RefHandle)
 
UObjectResolveObjectReferenceHandle (FNetRefHandle RefHandle, const FNetObjectResolveContext &ResolveContext)
 
UObjectResolveObjectReference (const FNetObjectReference &ObjectRef, const FNetObjectResolveContext &ResolveContext)
 
ENetObjectReferenceResolveResult ResolveObjectReference (const FNetObjectReference &ObjectRef, const FNetObjectResolveContext &ResolveContext, UObject *&OutResolvedObject)
 
bool IsNetRefHandleBroken (FNetRefHandle Handle, bool bMustBeRegistered) const
 
bool IsNetRefHandlePending (FNetRefHandle NetRefHandle, const FPendingBatchHolder &PendingBatchHolder) const
 
bool IsNetRefHandlePreRegistered (FNetRefHandle NetRefHandle) const
 
FNetObjectReference GetReplicatedOuter (const FNetObjectReference &Reference) const
 
FNetObjectReference GetOrCreateObjectReference (const UObject *Instance)
 
FNetObjectReference GetOrCreateObjectReference (const FString &ObjectPath, const UObject *Outer)
 
void BindRemoteReference (FNetRefHandle RefHandle, const UObject *Object)
 
void AddPreRegisteredReference (FNetRefHandle RefHandle, const UObject *Object)
 
void RemoveReference (FNetRefHandle RefHandle, const UObject *Object)
 
void WriteFullReference (FNetSerializationContext &Context, FNetObjectReference Ref) const
 
void ReadFullReference (FNetSerializationContext &Context, FNetObjectReference &OutRef)
 
void WriteReference (FNetSerializationContext &Context, FNetObjectReference Ref) const
 
void ReadReference (FNetSerializationContext &Context, FNetObjectReference &OutRef)
 
void AddPendingExports (FNetSerializationContext &Context, TArrayView< const FNetObjectReference > ExportsView) const
 
void AddPendingExports (FNetSerializationContext &Context, TArrayView< const FObjectNetSerializerQuantizedReferenceStorage > ExportsView) const
 
void AddPendingExport (FNetExportContext &ExportContext, const FNetObjectReference &Reference) const
 
EWriteExportsResult WritePendingExports (FNetSerializationContext &Context, FInternalNetRefIndex ObjectIndex)
 
bool ReadExports (const FNetRefHandle &NetObjectHandle, FNetSerializationContext &Context, TArray< FNetRefHandle > *MustBeMappedExports, EIrisAsyncLoadingPriority &OutIrisAsyncLoadingPriority)
 
void SetAsyncLoadMode (const EAsyncLoadMode NewMode)
 
bool ShouldAsyncLoad () const
 
void AddReferencedObjects (FReferenceCollector &ReferenceCollector)
 
void AddTrackedQueuedBatchObjectReference (const FNetRefHandle InHandle, const UObject *InObject)
 
void UpdateTrackedQueuedBatchObjectReference (const FNetRefHandle InHandle, const UObject *NewObject)
 
void RemoveTrackedQueuedBatchObjectReference (const FNetRefHandle InHandle)
 
FString DescribeObjectReference (const FNetObjectReference Ref, const FNetObjectResolveContext &ResolveContext)
 
const TCHARGetObjectRelativePath (FNetRefHandle NetRefHandle) const
 

Static Public Member Functions

static FNetObjectReference MakeNetObjectReference (FNetRefHandle Handle)
 

Member Enumeration Documentation

◆ EAsyncLoadMode

Enumerator
UseCVar 
ForceDisable 
ForceEnable 

◆ EWriteExportsResult

Enumerator
WroteExports 
BitStreamOverflow 
NoExports 

Constructor & Destructor Documentation

◆ FObjectReferenceCache()

UE::Net::Private::FObjectReferenceCache::FObjectReferenceCache ( )

Member Function Documentation

◆ AddPendingExport()

void UE::Net::Private::FObjectReferenceCache::AddPendingExport ( FNetExportContext ExportContext,
const FNetObjectReference Reference 
) const

◆ AddPendingExports() [1/2]

void UE::Net::Private::FObjectReferenceCache::AddPendingExports ( FNetSerializationContext Context,
TArrayView< const FNetObjectReference ExportsView 
) const

◆ AddPendingExports() [2/2]

void UE::Net::Private::FObjectReferenceCache::AddPendingExports ( FNetSerializationContext Context,
TArrayView< const FObjectNetSerializerQuantizedReferenceStorage ExportsView 
) const

◆ AddPreRegisteredReference()

void UE::Net::Private::FObjectReferenceCache::AddPreRegisteredReference ( FNetRefHandle  RefHandle,
const UObject Object 
)

◆ AddReferencedObjects()

void UE::Net::Private::FObjectReferenceCache::AddReferencedObjects ( FReferenceCollector ReferenceCollector)

◆ AddTrackedQueuedBatchObjectReference()

void UE::Net::Private::FObjectReferenceCache::AddTrackedQueuedBatchObjectReference ( const FNetRefHandle  InHandle,
const UObject InObject 
)

◆ BindRemoteReference()

void UE::Net::Private::FObjectReferenceCache::BindRemoteReference ( FNetRefHandle  RefHandle,
const UObject Object 
)

◆ CreateObjectReferenceHandle()

FNetRefHandle UE::Net::Private::FObjectReferenceCache::CreateObjectReferenceHandle ( const UObject Object)

◆ DescribeObjectReference()

FString UE::Net::Private::FObjectReferenceCache::DescribeObjectReference ( const FNetObjectReference  Ref,
const FNetObjectResolveContext ResolveContext 
)

◆ GetObjectFromReferenceHandle()

UObject * UE::Net::Private::FObjectReferenceCache::GetObjectFromReferenceHandle ( FNetRefHandle  RefHandle)

◆ GetObjectReferenceHandleFromObject()

FNetRefHandle UE::Net::Private::FObjectReferenceCache::GetObjectReferenceHandleFromObject ( const UObject Object,
EGetRefHandleFlags  GetRefHandleFlags = EGetRefHandleFlags::None 
) const

◆ GetObjectRelativePath()

const TCHAR * UE::Net::Private::FObjectReferenceCache::GetObjectRelativePath ( FNetRefHandle  NetRefHandle) const

Return the stored relative path of a replicated object if it's in the cache.

◆ GetOrCreateObjectReference() [1/2]

FNetObjectReference UE::Net::Private::FObjectReferenceCache::GetOrCreateObjectReference ( const FString &  ObjectPath,
const UObject Outer 
)

◆ GetOrCreateObjectReference() [2/2]

FNetObjectReference UE::Net::Private::FObjectReferenceCache::GetOrCreateObjectReference ( const UObject Instance)

◆ GetPreRegisteredObjectFromReferenceHandle()

UObject * UE::Net::Private::FObjectReferenceCache::GetPreRegisteredObjectFromReferenceHandle ( FNetRefHandle  RefHandle)

◆ GetReplicatedOuter()

FNetObjectReference UE::Net::Private::FObjectReferenceCache::GetReplicatedOuter ( const FNetObjectReference Reference) const

◆ Init()

void UE::Net::Private::FObjectReferenceCache::Init ( UReplicationSystem ReplicationSystem)

◆ IsAuthority()

bool UE::Net::Private::FObjectReferenceCache::IsAuthority ( ) const

◆ IsDynamicObject()

bool UE::Net::Private::FObjectReferenceCache::IsDynamicObject ( const UObject Object) const

◆ IsNetRefHandleBroken()

bool UE::Net::Private::FObjectReferenceCache::IsNetRefHandleBroken ( FNetRefHandle  Handle,
bool  bMustBeRegistered 
) const

◆ IsNetRefHandlePending()

bool UE::Net::Private::FObjectReferenceCache::IsNetRefHandlePending ( FNetRefHandle  NetRefHandle,
const FPendingBatchHolder PendingBatchHolder 
) const

◆ IsNetRefHandlePreRegistered()

bool UE::Net::Private::FObjectReferenceCache::IsNetRefHandlePreRegistered ( FNetRefHandle  NetRefHandle) const

◆ MakeNetObjectReference()

FNetObjectReference UE::Net::Private::FObjectReferenceCache::MakeNetObjectReference ( FNetRefHandle  Handle)
inlinestatic

◆ PreRegisterObjectReferenceHandle()

FNetRefHandle UE::Net::Private::FObjectReferenceCache::PreRegisterObjectReferenceHandle ( const UObject Object)

◆ ReadExports()

bool UE::Net::Private::FObjectReferenceCache::ReadExports ( const FNetRefHandle NetObjectHandle,
FNetSerializationContext Context,
TArray< FNetRefHandle > *  MustBeMappedExports,
EIrisAsyncLoadingPriority OutIrisAsyncLoadingPriority 
)

◆ ReadFullReference()

void UE::Net::Private::FObjectReferenceCache::ReadFullReference ( FNetSerializationContext Context,
FNetObjectReference OutRef 
)

◆ ReadReference()

void UE::Net::Private::FObjectReferenceCache::ReadReference ( FNetSerializationContext Context,
FNetObjectReference OutRef 
)

◆ RemoveReference()

void UE::Net::Private::FObjectReferenceCache::RemoveReference ( FNetRefHandle  RefHandle,
const UObject Object 
)

◆ RemoveTrackedQueuedBatchObjectReference()

void UE::Net::Private::FObjectReferenceCache::RemoveTrackedQueuedBatchObjectReference ( const FNetRefHandle  InHandle)

◆ ResolveObjectReference() [1/2]

UObject * UE::Net::Private::FObjectReferenceCache::ResolveObjectReference ( const FNetObjectReference ObjectRef,
const FNetObjectResolveContext ResolveContext 
)
inline

◆ ResolveObjectReference() [2/2]

ENetObjectReferenceResolveResult UE::Net::Private::FObjectReferenceCache::ResolveObjectReference ( const FNetObjectReference ObjectRef,
const FNetObjectResolveContext ResolveContext,
UObject *&  OutResolvedObject 
)

◆ ResolveObjectReferenceHandle()

UObject * UE::Net::Private::FObjectReferenceCache::ResolveObjectReferenceHandle ( FNetRefHandle  RefHandle,
const FNetObjectResolveContext ResolveContext 
)
inline

◆ SetAsyncLoadMode()

void UE::Net::Private::FObjectReferenceCache::SetAsyncLoadMode ( const EAsyncLoadMode  NewMode)

◆ ShouldAsyncLoad()

bool UE::Net::Private::FObjectReferenceCache::ShouldAsyncLoad ( ) const

◆ UpdateTrackedQueuedBatchObjectReference()

void UE::Net::Private::FObjectReferenceCache::UpdateTrackedQueuedBatchObjectReference ( const FNetRefHandle  InHandle,
const UObject NewObject 
)

◆ WriteFullReference()

void UE::Net::Private::FObjectReferenceCache::WriteFullReference ( FNetSerializationContext Context,
FNetObjectReference  Ref 
) const

◆ WritePendingExports()

FObjectReferenceCache::EWriteExportsResult UE::Net::Private::FObjectReferenceCache::WritePendingExports ( FNetSerializationContext Context,
FInternalNetRefIndex  ObjectIndex 
)

◆ WriteReference()

void UE::Net::Private::FObjectReferenceCache::WriteReference ( FNetSerializationContext Context,
FNetObjectReference  Ref 
) const

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