UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ObjectWriter.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Containers/Array.h"
7#include "CoreGlobals.h"
8#include "CoreMinimal.h"
9#include "HAL/Platform.h"
13#include "UObject/Object.h"
15
16class FArchive;
17class FName;
18struct FLazyObjectPtr;
19struct FObjectPtr;
20struct FSoftObjectPath;
21struct FSoftObjectPtr;
22struct FWeakObjectPtr;
23
28{
29
30public:
31 FObjectWriter(UObject* Obj, TArray<uint8>& InBytes, bool bIgnoreClassRef = false, bool bIgnoreArchetypeRef = false, bool bDoDelta = true, uint32 AdditionalPortFlags = 0)
32 : FMemoryWriter(InBytes)
33 {
36 ArNoDelta = !bDoDelta;
38
39#if USE_STABLE_LOCALIZATION_KEYS
41 {
42 SetLocalizationNamespace(TextNamespaceUtil::EnsurePackageNamespace(Obj));
43 }
44#endif // USE_STABLE_LOCALIZATION_KEYS
45
46 Obj->Serialize(*this);
47 }
48
49 //~ Begin FArchive Interface
50 COREUOBJECT_API virtual FArchive& operator<<(FName& N) override;
51 COREUOBJECT_API virtual FArchive& operator<<(UObject*& Res) override;
57 COREUOBJECT_API virtual FString GetArchiveName() const override;
58 //~ End FArchive Interface
59
61 : FMemoryWriter(InBytes)
62 {
63 ArIgnoreClassRef = false;
65 }
66};
#define GIsEditor
Definition CoreGlobals.h:233
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
@ PPF_DuplicateVerbatim
Definition PropertyPortFlags.h:125
@ PPF_DuplicateForPIE
Definition PropertyPortFlags.h:102
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Archive.h:1208
uint8 ArIgnoreArchetypeRef
Definition Archive.h:894
uint8 ArNoDelta
Definition Archive.h:897
uint32 ArPortFlags
Definition Archive.h:951
uint8 ArIgnoreClassRef
Definition Archive.h:909
friend FArchive & operator<<(FArchive &Ar, ANSICHAR &Value)
Definition Archive.h:1387
Definition MemoryWriter.h:101
Definition NameTypes.h:617
Definition ObjectWriter.h:28
FObjectWriter(UObject *Obj, TArray< uint8 > &InBytes, bool bIgnoreClassRef=false, bool bIgnoreArchetypeRef=false, bool bDoDelta=true, uint32 AdditionalPortFlags=0)
Definition ObjectWriter.h:31
FObjectWriter(TArray< uint8 > &InBytes)
Definition ObjectWriter.h:60
virtual COREUOBJECT_API FString GetArchiveName() const override
Definition ObjectWriter.cpp:56
Definition Array.h:670
Definition Object.h:95
virtual COREUOBJECT_API void Serialize(FArchive &Ar)
Definition LazyObjectPtr.h:151
Definition ObjectPtr.h:55
Definition SoftObjectPath.h:56
Definition SoftObjectPtr.h:45
Definition WeakObjectPtr.h:49