UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
PropertyProxyArchive.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3/*==================================================================================================
4 PropertyProxyArchive.h: Simple proxy archive for serializing references to FFields from Bytecode
5====================================================================================================*/
6
7#pragma once
8
9#include "CoreMinimal.h"
10#include "UObject/Object.h"
11#include "Templates/Casts.h"
12#include "UObject/UnrealType.h"
13#include "UObject/FieldPath.h"
15
20{
21public:
22
29
37 virtual FArchive& operator<<(FField*& Value) override
38 {
40 {
41 // For reference collectors (like FArchiveReplaceFieldReferences): fully serialize the entire field to find all of its UObject references
43 }
44
45 // Serialize the field as FFieldPath
47 *this << PropertyPath;
48 if (IsLoading())
49 {
51 if (!Value && !PropertyPath.IsPathToFieldEmpty())
52 {
53 // Store the field path for deferred resolving
55 }
56 }
57 return *this;
58 }
59};
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
Definition ArchiveProxy.h:19
FArchive & InnerArchive
Definition ArchiveProxy.h:327
Definition Archive.h:1208
UE_FORCEINLINE_HINT bool IsPersistent() const
Definition Archive.h:300
UE_FORCEINLINE_HINT bool IsLoading() const
Definition Archive.h:236
UE_FORCEINLINE_HINT bool IsObjectReferenceCollector() const
Definition Archive.h:456
uint8 ArIsFilterEditorOnly
Definition Archive.h:927
Definition Field.h:556
Definition PropertyProxyArchive.h:20
UStruct * Container
Definition PropertyProxyArchive.h:28
UStruct::FUnresolvedScriptPropertiesArray UnresolvedProperties
Definition PropertyProxyArchive.h:24
FPropertyProxyArchive(FArchive &InInnerArchive, int32 &InBytecodeIndex, UStruct *InContainer)
Definition PropertyProxyArchive.h:30
virtual FArchive & operator<<(FField *&Value) override
Definition PropertyProxyArchive.h:37
int32 & BytecodeIndex
Definition PropertyProxyArchive.h:26
Definition PropertyPath.Build.cs:6
UE_NODEBUG UE_FORCEINLINE_HINT SizeType Add(ElementType &&Item)
Definition Array.h:2696
Definition Class.h:480
Definition FieldPath.h:283
Definition Tuple.h:652