UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
RemoteObjectSerialization.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
6
7namespace UE::RemoteObject::Handle { struct FRemoteObjectStub; }
8
9#ifndef UE_WITH_REMOTEOBJECTARCHIVE_DEBUGGING
10#define UE_WITH_REMOTEOBJECTARCHIVE_DEBUGGING 0
11#endif
12
14{
16 {
17 None = 0,
18 UseExistingObjects = (1 << 0), // If possible re-use existing UObjects and don't reconstruct them when deserializing object data
19 PreserveRemoteReferences = (1 << 1), // Don't overwrite references to objects that are remote
20 Resetting = (1 << 2) // Indicates that the serialization process is resetting an object to its archetype state
21 };
23
40
51
71
103
108 {
110 FRemoteObjectConstructionOverrides* Overrides = nullptr;
111
112 public:
115 , Overrides(InOverrides)
116 {
117 if (Overrides)
118 {
119 Stack.Push(*Overrides);
120 }
121 }
123 {
124 if (Overrides)
125 {
126 Stack.Pop();
127 }
128 }
129 };
130
140
152
158
159} // namespace UE::RemoveObject::Serialization
160
161
163{
164 void LoadObjectFromDisk(const FUObjectMigrationContext& MigrationContext);
166}
FPlatformTypes::int64 int64
A 64-bit signed integer.
Definition Platform.h:1127
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define ENUM_CLASS_FLAGS(Enum)
Definition EnumClassFlags.h:6
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition NameTypes.h:617
Definition Array.h:670
FRemoteObjectConstructionOverridesScope(FRemoteObjectConstructionOverrides *InOverrides)
Definition RemoteObjectSerialization.h:113
~FRemoteObjectConstructionOverridesScope()
Definition RemoteObjectSerialization.h:122
void Push(const FRemoteObjectConstructionOverrides &InOverrides)
Definition RemoteObjectSerialization.h:89
~FRemoteObjectConstructionOverridesStack()
Definition RemoteObjectSerialization.cpp:166
bool IsEmpty() const
Definition RemoteObjectSerialization.h:97
static COREUOBJECT_API FRemoteObjectConstructionOverridesStack & Get()
Definition RemoteObjectSerialization.cpp:159
Definition Object.h:95
Definition RemoteObject.cpp:483
Definition RemoteObjectSerialization.cpp:55
void SaveObjectToDisk(const UE::RemoteObject::Transfer::FMigrateSendParams &Params)
Definition RemoteObjectSerialization.cpp:108
void LoadObjectFromDisk(const FUObjectMigrationContext &MigrationContext)
Definition RemoteObjectSerialization.cpp:90
Definition RemoteObjectSerialization.cpp:55
int32 DeserializeObjectData(FRemoteObjectData &ObjectData, const FUObjectMigrationContext *MigrationContext, TArray< FRemoteObjectId > &OutObjectRemoteIds, TArray< UObject * > &OutObjects, ERemoteObjectSerializationFlags DeserializeFlags)
Definition RemoteObjectSerialization.cpp:1231
FRemoteObjectData SerializeObjectData(UObject *InObject, TSet< UObject * > &OutObjects, TSet< UObject * > &OutReferencedObjects, const FUObjectMigrationContext *MigrationContext)
Definition RemoteObjectSerialization.cpp:1157
UObject * FindCanonicalRootObjectForSerialization(UObject *Object)
Definition RemoteObjectSerialization.cpp:1381
ERemoteObjectSerializationFlags
Definition RemoteObjectSerialization.h:16
Definition RemoteObjectTransfer.h:30
Definition RemoteObjectTypes.h:212
Definition UObjectMigrationContext.h:62
Definition ObjectPtr.h:488
FRemoteObjectId OuterId
Definition RemoteObjectSerialization.h:47
int32 SerialNumber
Definition RemoteObjectSerialization.h:49
FName Name
Definition RemoteObjectSerialization.h:46
FRemoteObjectId RemoteId
Definition RemoteObjectSerialization.h:48
Definition RemoteObjectSerialization.h:28
TObjectPtr< UObject > Outer
Definition RemoteObjectSerialization.h:32
int32 InternalFlags
Definition RemoteObjectSerialization.h:34
TObjectPtr< UObject > Archetype
Definition RemoteObjectSerialization.h:33
int64 NextOffset
Definition RemoteObjectSerialization.h:35
FRemoteObjectId RemoteId
Definition RemoteObjectSerialization.h:30
int32 SerialNumber
Definition RemoteObjectSerialization.h:38
FName Name
Definition RemoteObjectSerialization.h:29
TObjectPtr< UClass > Class
Definition RemoteObjectSerialization.h:31
Definition RemoteObjectTransfer.h:50