Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
FArchive Class Reference

#include <Archive.h>

+ Inheritance diagram for FArchive:
+ Collaboration diagram for FArchive:

Classes

class  FScopeSeekTo
 
class  FScopeSetDebugSerializationFlags
 

Public Member Functions

 FArchive ()=default
 
 FArchive (const FArchive &)=default
 
FArchiveoperator= (const FArchive &ArchiveToCopy)=default
 
 ~FArchive ()=default
 
virtual FArchiveoperator<< (FName &Value)
 
virtual FArchiveoperator<< (FText &Value)
 
virtual FArchiveoperator<< (UObject *&Value)
 
virtual FArchiveoperator<< (FField *&Value)
 
template<class T >
FORCEINLINE FArchiveoperator<< (TCheckedObjPtr< T > &Value)
 
virtual FArchiveoperator<< (struct FLazyObjectPtr &Value)
 
virtual FArchiveoperator<< (struct FObjectPtr &Value)
 
virtual FArchiveoperator<< (struct FSoftObjectPtr &Value)
 
virtual FArchiveoperator<< (struct FSoftObjectPath &Value)
 
virtual FArchiveoperator<< (struct FWeakObjectPtr &Value)
 
virtual void ForceBlueprintFinalization ()
 
virtual void Serialize (void *V, int64 Length)
 
virtual void SerializeBits (void *V, int64 LengthBits)
 
virtual void SerializeInt (uint32 &Value, uint32 Max)
 
virtual void SerializeIntPacked (uint32 &Value)
 
virtual void Preload (UObject *Object)
 
FArchiveStateGetArchiveState ()
 
const FArchiveStateGetArchiveState () const
 
virtual void Seek (int64 InPos)
 
virtual void AttachBulkData (UObject *Owner, FBulkData *BulkData)
 
virtual void AttachBulkData (UE::Serialization::FEditorBulkData *BulkData)
 
virtual void DetachBulkData (FBulkData *BulkData, bool bEnsureBulkDataIsLoaded)
 
virtual void DetachBulkData (UE::Serialization::FEditorBulkData *BulkData, bool bEnsureBulkDataIsLoaded)
 
virtual bool SerializeBulkData (FBulkData &BulkData, const struct FBulkDataSerializationParams &Params)
 
virtual bool IsProxyOf (FArchive *InOther) const
 
virtual bool Precache (int64 PrecacheOffset, int64 PrecacheSize)
 
virtual void FlushCache ()
 
virtual bool SetCompressionMap (TArray< struct FCompressedChunk > *CompressedChunks, ECompressionFlags CompressionFlags)
 
virtual void Flush ()
 
virtual bool Close ()
 
void SerializeCompressed (void *V, int64 Length, FName CompressionFormatCannotChange, ECompressionFlags Flags=COMPRESS_NoFlags, bool bTreatBufferAsFileReader=false)
 
void SerializeCompressedNew (void *V, int64 Length, FName CompressionFormatToEncode, FName CompressionFormatToDecodeOldV1Files, ECompressionFlags Flags=COMPRESS_NoFlags, bool bTreatBufferAsFileReader=false, int64 *OutPartialReadLength=nullptr)
 
void SerializeCompressedNew (void *V, int64 Length)
 
void ByteSwap (void *V, int32 Length)
 
FORCEINLINE FArchiveByteOrderSerialize (void *V, int32 Length)
 
void StartSerializingDefaults ()
 
void StopSerializingDefaults ()
 
virtual void MarkScriptSerializationStart (const UObject *Obj)
 
virtual void MarkScriptSerializationEnd (const UObject *Obj)
 
virtual void MarkSearchableName (const UObject *TypeObject, const FName &ValueName) const
 
template<typename FmtType , typename... Types>
void Logf (const FmtType &Fmt, Types... Args)
 
virtual void UsingCustomVersion (const struct FGuid &Guid)
 
virtual FArchiveGetCacheableArchive ()
 
virtual void PushSerializedProperty (struct FProperty *InProperty, const bool bIsEditorOnlyProperty)
 
virtual void PopSerializedProperty (struct FProperty *InProperty, const bool bIsEditorOnlyProperty)
 
virtual bool AttachExternalReadDependency (FExternalReadCallback &ReadCallback)
 
template<SIZE_T Size>
FORCEINLINE bool FastPathLoad (void *InDest)
 
virtual void PushFileRegionType (EFileRegionType Type)
 
virtual void PopFileRegionType ()
 
void SetArchiveState (const FArchiveState &InState)
 
void SetError ()
 
void ClearError ()
 
virtual FArchiveStateGetInnermostState ()
 
virtual void CountBytes (SIZE_T InNum, SIZE_T InMax)
 
virtual FString GetArchiveName () const
 
virtual FLinkerGetLinker ()
 
virtual int64 Tell ()
 
virtual int64 TotalSize ()
 
virtual bool AtEnd ()
 
FORCEINLINE bool IsByteSwapping ()
 
void ThisContainsCode ()
 
void ThisContainsMap ()
 
void ThisRequiresLocalizationGather ()
 
virtual UObjectGetArchetypeFromLoader (const UObject *Obj)
 
FORCEINLINE FPackageFileVersion UEVer () const
 
FORCEINLINE int32 UE4Ver () const
 
FORCEINLINE int32 LicenseeUEVer () const
 
FORCEINLINE FEngineVersionBase EngineVer () const
 
uint32 EngineNetVer () const
 
uint32 GameNetVer () const
 
int32 CustomVer (const struct FGuid &Key) const
 
FORCEINLINE bool IsLoading () const
 
FORCEINLINE bool IsLoadingFromCookedPackage () const
 
FORCEINLINE bool IsSaving () const
 
FORCEINLINE bool IsTransacting () const
 
FORCEINLINE bool IsTextFormat () const
 
FORCEINLINE bool WantBinaryPropertySerialization () const
 
FORCEINLINE bool UseUnversionedPropertySerialization () const
 
FORCEINLINE bool IsForcingUnicode () const
 
FORCEINLINE bool IsPersistent () const
 
FORCEINLINE bool GetError () const
 
FORCEINLINE bool IsError () const
 
FORCEINLINE bool IsCriticalError () const
 
FORCEINLINE bool ContainsCode () const
 
FORCEINLINE bool ContainsMap () const
 
FORCEINLINE bool RequiresLocalizationGather () const
 
FORCEINLINE bool ForceByteSwapping () const
 
FORCEINLINE bool IsSerializingDefaults () const
 
FORCEINLINE bool IsIgnoringArchetypeRef () const
 
FORCEINLINE bool DoDelta () const
 
FORCEINLINE bool DoIntraPropertyDelta () const
 
FORCEINLINE bool IsIgnoringOuterRef () const
 
FORCEINLINE bool IsIgnoringClassGeneratedByRef () const
 
FORCEINLINE bool IsIgnoringClassRef () const
 
FORCEINLINE bool IsAllowingLazyLoading () const
 
FORCEINLINE bool IsObjectReferenceCollector () const
 
FORCEINLINE bool IsModifyingWeakAndStrongReferences () const
 
FORCEINLINE bool IsCountingMemory () const
 
FORCEINLINE uint32 GetPortFlags () const
 
FORCEINLINE bool HasAnyPortFlags (uint32 Flags) const
 
FORCEINLINE bool HasAllPortFlags (uint32 Flags) const
 
FORCEINLINE uint32 GetDebugSerializationFlags () const
 
FORCEINLINE bool ShouldSkipBulkData () const
 
FORCEINLINE int64 GetMaxSerializeSize () const
 
virtual const FCustomVersionContainerGetCustomVersions () const
 
virtual void SetCustomVersions (const FCustomVersionContainer &CustomVersionContainer)
 
virtual void ResetCustomVersions ()
 
void SetCustomVersion (const struct FGuid &Key, int32 Version, FName FriendlyName)
 
void SetByteSwapping (bool Enabled)
 
void SetPortFlags (uint32 InPortFlags)
 
void SetDebugSerializationFlags (uint32 InCustomFlags)
 
bool IsFilterEditorOnly () const
 
virtual void SetFilterEditorOnly (bool InFilterEditorOnly)
 
bool IsSaveGame () const
 
FORCEINLINE bool IsNetArchive () const
 
FORCEINLINE bool IsCooking () const
 
FORCEINLINE const ITargetPlatformCookingTarget () const
 
void SetCookData (FArchiveCookData *InCookData)
 
FArchiveCookDataGetCookData ()
 
FORCEINLINE FArchiveCookContextGetCookContext ()
 
virtual bool UseToResolveEnumerators () const
 
virtual bool ShouldSkipProperty (const FProperty *InProperty) const
 
virtual void SetSerializedProperty (FProperty *InProperty)
 
FORCEINLINE struct FPropertyGetSerializedProperty () const
 
void GetSerializedPropertyChain (TArray< struct FProperty * > &OutProperties) const
 
FORCEINLINE const FArchiveSerializedPropertyChainGetSerializedPropertyChain () const
 
virtual void SetSerializedPropertyChain (const FArchiveSerializedPropertyChain *InSerializedPropertyChain, struct FProperty *InSerializedPropertyOverride=nullptr)
 
virtual void SetSerializeContext (FUObjectSerializeContext *InLoadContext)
 
virtual FUObjectSerializeContextGetSerializeContext ()
 
virtual void Reset ()
 
virtual void SetIsLoading (bool bInIsLoading)
 
virtual void SetIsLoadingFromCookedPackage (bool bInIsLoadingFromCookedPackage)
 
virtual void SetIsSaving (bool bInIsSaving)
 
virtual void SetIsTransacting (bool bInIsTransacting)
 
virtual void SetIsTextFormat (bool bInIsTextFormat)
 
virtual void SetWantBinaryPropertySerialization (bool bInWantBinaryPropertySerialization)
 
virtual void SetUseUnversionedPropertySerialization (bool bInUseUnversioned)
 
virtual void SetForceUnicode (bool bInForceUnicode)
 
virtual void SetIsPersistent (bool bInIsPersistent)
 
virtual void SetUEVer (FPackageFileVersion InVer)
 
FORCEINLINE void SetUE4Ver (int32 InVer)
 
virtual void SetLicenseeUEVer (int32 InVer)
 
virtual void SetEngineVer (const FEngineVersionBase &InVer)
 
virtual void SetEngineNetVer (const uint32 InEngineNetVer)
 
virtual void SetGameNetVer (const uint32 InGameNetVer)
 
FORCEINLINE bool ShouldSkipCompilingAssets () const
 

Public Attributes

FFastPathLoadBufferActiveFPLB
 
FFastPathLoadBuffer InlineFPLB
 
uint8 ArContainsCode: 1
 
uint8 ArContainsMap: 1
 
uint8 ArRequiresLocalizationGather: 1
 
uint8 ArForceByteSwapping: 1
 
uint8 ArIgnoreArchetypeRef: 1
 
uint8 ArNoDelta: 1
 
uint8 ArNoIntraPropertyDelta: 1
 
uint8 ArIgnoreOuterRef: 1
 
uint8 ArIgnoreClassGeneratedByRef: 1
 
uint8 ArIgnoreClassRef: 1
 
uint8 ArAllowLazyLoading: 1
 
uint8 ArIsObjectReferenceCollector: 1
 
uint8 ArIsModifyingWeakAndStrongReferences: 1
 
uint8 ArIsCountingMemory: 1
 
uint8 ArShouldSkipBulkData: 1
 
uint8 ArIsFilterEditorOnly: 1
 
uint8 ArIsSaveGame: 1
 
uint8 ArIsNetArchive: 1
 
uint8 ArUseCustomPropertyList: 1
 
int32 ArSerializingDefaults
 
uint32 ArPortFlags
 
int64 ArMaxSerializeSize
 
const struct FCustomPropertyListNodeArCustomPropertyList
 

Protected Member Functions

void SetShouldSkipCompilingAssets (bool Enabled)
 

Static Protected Member Functions

static void LinkProxy (FArchiveState &Inner, FArchiveState &Proxy)
 
static void UnlinkProxy (FArchiveState &Inner, FArchiveState &Proxy)
 

Private Member Functions

void VARARGS LogfImpl (const TCHAR *Fmt,...)
 
template<typename T >
FArchiveByteOrderSerialize (T &Value)
 
FArchiveSerializeByteOrderSwapped (void *V, int32 Length)
 
FArchiveSerializeByteOrderSwapped (uint16 &Value)
 
FArchiveSerializeByteOrderSwapped (uint32 &Value)
 
FArchiveSerializeByteOrderSwapped (uint64 &Value)
 
- Private Member Functions inherited from FArchiveState
void SetArchiveState (const FArchiveState &InState)
 
void SetError ()
 
void ClearError ()
 
void SetCriticalError ()
 
FORCEINLINE bool IsByteSwapping ()
 
void ThisContainsCode ()
 
void ThisContainsMap ()
 
void ThisRequiresLocalizationGather ()
 
FORCEINLINE FPackageFileVersion UEVer () const
 
FORCEINLINE int32 LicenseeUEVer () const
 
FORCEINLINE int32 UE4Ver () const
 
FORCEINLINE int32 LicenseeUE4Ver () const
 
FORCEINLINE FEngineVersionBase EngineVer () const
 
uint32 EngineNetVer () const
 
uint32 GameNetVer () const
 
int32 CustomVer (const struct FGuid &Key) const
 
FORCEINLINE bool IsLoading () const
 
FORCEINLINE bool IsLoadingFromCookedPackage () const
 
FORCEINLINE bool IsSaving () const
 
FORCEINLINE bool IsTransacting () const
 
FORCEINLINE bool IsTextFormat () const
 
FORCEINLINE bool WantBinaryPropertySerialization () const
 
FORCEINLINE bool UseUnversionedPropertySerialization () const
 
FORCEINLINE bool IsForcingUnicode () const
 
FORCEINLINE bool IsPersistent () const
 
void SetShouldSkipCompilingAssets (bool Enabled)
 
FORCEINLINE bool ShouldSkipCompilingAssets () const
 
FORCEINLINE bool IsError () const
 
FORCEINLINE bool GetError () const
 
FORCEINLINE bool IsCriticalError () const
 
FORCEINLINE bool ContainsCode () const
 
FORCEINLINE bool ContainsMap () const
 
FORCEINLINE bool RequiresLocalizationGather () const
 
FORCEINLINE bool ForceByteSwapping () const
 
FORCEINLINE bool IsSerializingDefaults () const
 
FORCEINLINE bool IsIgnoringArchetypeRef () const
 
FORCEINLINE bool DoDelta () const
 
FORCEINLINE bool DoIntraPropertyDelta () const
 
FORCEINLINE bool IsIgnoringOuterRef () const
 
FORCEINLINE bool IsIgnoringClassGeneratedByRef () const
 
FORCEINLINE bool IsIgnoringClassRef () const
 
FORCEINLINE bool IsAllowingLazyLoading () const
 
FORCEINLINE bool IsObjectReferenceCollector () const
 
FORCEINLINE bool IsModifyingWeakAndStrongReferences () const
 
FORCEINLINE bool IsCountingMemory () const
 
FORCEINLINE uint32 GetPortFlags () const
 
FORCEINLINE bool HasAnyPortFlags (uint32 Flags) const
 
FORCEINLINE bool HasAllPortFlags (uint32 Flags) const
 
FORCEINLINE uint32 GetDebugSerializationFlags () const
 
FORCEINLINE bool ShouldSkipBulkData () const
 
FORCEINLINE int64 GetMaxSerializeSize () const
 
void SetCustomVersion (const struct FGuid &Key, int32 Version, FName FriendlyName)
 
void SetByteSwapping (bool Enabled)
 
void SetPortFlags (uint32 InPortFlags)
 
void SetDebugSerializationFlags (uint32 InCustomFlags)
 
bool IsFilterEditorOnly () const
 
bool IsSaveGame () const
 
FORCEINLINE bool IsNetArchive () const
 
FORCEINLINE bool IsCooking () const
 
void SetCookData (FArchiveCookData *InCookData)
 
FArchiveCookDataGetCookData ()
 
FORCEINLINE FArchiveCookContextGetCookContext ()
 
void SetCookingTarget (const ITargetPlatform *)
 
FORCEINLINE const ITargetPlatformCookingTarget () const
 
FORCEINLINE struct FPropertyGetSerializedProperty () const
 
void GetSerializedPropertyChain (TArray< struct FProperty * > &OutProperties) const
 
FORCEINLINE const FArchiveSerializedPropertyChainGetSerializedPropertyChain () const
 
FORCEINLINE void SetUE4Ver (int32 InVer)
 
FORCEINLINE void SetLicenseeUE4Ver (int32 InVer)
 
void CopyTrivialFArchiveStatusMembers (const FArchiveState &ArchiveStatusToCopy)
 

Private Attributes

uint8 ArIsLoading: 1
 
uint8 ArIsLoadingFromCookedPackage: 1
 
uint8 ArIsSaving: 1
 
uint8 ArIsTransacting: 1
 
uint8 ArIsTextFormat: 1
 
uint8 ArWantBinaryPropertySerialization: 1
 
uint8 ArUseUnversionedPropertySerialization: 1
 
uint8 ArForceUnicode: 1
 
uint8 ArIsPersistent: 1
 
FPackageFileVersion ArUEVer
 
int32 ArLicenseeUEVer
 
FEngineVersionBase ArEngineVer
 
uint32 ArEngineNetVer
 
uint32 ArGameNetVer
 
FCustomVersionContainerCustomVersionContainer
 
FPropertySerializedProperty
 
FArchiveSerializedPropertyChainSerializedPropertyChain
 
bool bCustomVersionsAreReset
 
- Private Attributes inherited from FArchiveState
FFastPathLoadBufferActiveFPLB
 
FFastPathLoadBuffer InlineFPLB
 
uint8 ArContainsCode: 1
 
uint8 ArContainsMap: 1
 
uint8 ArRequiresLocalizationGather: 1
 
uint8 ArForceByteSwapping: 1
 
uint8 ArIgnoreArchetypeRef: 1
 
uint8 ArNoDelta: 1
 
uint8 ArNoIntraPropertyDelta: 1
 
uint8 ArIgnoreOuterRef: 1
 
uint8 ArIgnoreClassGeneratedByRef: 1
 
uint8 ArIgnoreClassRef: 1
 
uint8 ArAllowLazyLoading: 1
 
uint8 ArIsObjectReferenceCollector: 1
 
uint8 ArIsModifyingWeakAndStrongReferences: 1
 
uint8 ArIsCountingMemory: 1
 
uint8 ArShouldSkipBulkData: 1
 
uint8 ArIsFilterEditorOnly: 1
 
uint8 ArIsSaveGame: 1
 
uint8 ArIsNetArchive: 1
 
uint8 ArUseCustomPropertyList: 1
 
int32 ArSerializingDefaults
 
uint32 ArPortFlags
 
int64 ArMaxSerializeSize
 
const struct FCustomPropertyListNodeArCustomPropertyList
 
uint8 ArIsLoading: 1
 
uint8 ArIsLoadingFromCookedPackage: 1
 
uint8 ArIsSaving: 1
 
uint8 ArIsTransacting: 1
 
uint8 ArIsTextFormat: 1
 
uint8 ArWantBinaryPropertySerialization: 1
 
uint8 ArUseUnversionedPropertySerialization: 1
 
uint8 ArForceUnicode: 1
 
uint8 ArIsPersistent: 1
 
FPackageFileVersion ArUEVer
 
int32 ArLicenseeUEVer
 
FEngineVersionBase ArEngineVer
 
uint32 ArEngineNetVer
 
uint32 ArGameNetVer
 
FCustomVersionContainerCustomVersionContainer = nullptr
 
FArchiveCookDataCookData = nullptr
 
FPropertySerializedProperty
 
FArchiveSerializedPropertyChainSerializedPropertyChain
 
bool bCustomVersionsAreReset
 

Friends

FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, ANSICHAR &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, WIDECHAR &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, uint8 &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, int8 &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, uint16 &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, int16 &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, uint32 &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, bool &D)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, int32 &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, float &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, double &Value)
 
FORCEINLINE friend FArchiveoperator<< (FArchive &Ar, uint64 &Value)
 
FArchiveoperator<< (FArchive &Ar, int64 &Value)
 
FArchiveoperator<< (FArchive &Ar, FIntRect &Value)
 
FArchiveoperator<< (FArchive &Ar, FString &Value)
 

Additional Inherited Members

- Static Private Member Functions inherited from FArchiveState
static void LinkProxy (FArchiveState &Inner, FArchiveState &Proxy)
 
static void UnlinkProxy (FArchiveState &Inner, FArchiveState &Proxy)
 

Detailed Description

Base class for archives that can be used for loading, saving, and garbage collecting in a byte order neutral way.

Definition at line 1124 of file Archive.h.

Constructor & Destructor Documentation

◆ FArchive() [1/2]

FArchive::FArchive ( )
default
+ Here is the caller graph for this function:

◆ FArchive() [2/2]

FArchive::FArchive ( const FArchive & )
default

◆ ~FArchive()

FArchive::~FArchive ( )
default

Member Function Documentation

◆ AtEnd()

virtual bool FArchiveState::AtEnd ( )
inlinevirtual

Returns true if the current location within the backing data storage is at the end, always returns false if there is no storage.

Reimplemented from FArchiveState.

Reimplemented in FBitReader, FBufferWriter, FBufferReaderBase, and FArchiveProxy.

Definition at line 157 of file Archive.h.

◆ AttachBulkData() [1/2]

virtual void FArchive::AttachBulkData ( UE::Serialization::FEditorBulkData * BulkData)
inlinevirtual

Definition at line 1634 of file Archive.h.

◆ AttachBulkData() [2/2]

virtual void FArchive::AttachBulkData ( UObject * Owner,
FBulkData * BulkData )
inlinevirtual

Attaches/ associates the passed in bulk data object with the linker.

Parameters
OwnerUObject owning the bulk data
BulkDataBulk data object to associate

Reimplemented in FArchiveProxy.

Definition at line 1633 of file Archive.h.

+ Here is the caller graph for this function:

◆ AttachExternalReadDependency()

virtual bool FArchive::AttachExternalReadDependency ( FExternalReadCallback & ReadCallback)
inlinevirtual

Adds external read dependency

Returns
true if dependency has been added, false if Archive does not support them

Reimplemented in FArchiveProxy.

Definition at line 1946 of file Archive.h.

+ Here is the caller graph for this function:

◆ ByteOrderSerialize() [1/2]

template<typename T >
FArchive & FArchive::ByteOrderSerialize ( T & Value)
inlineprivate

Definition at line 2009 of file Archive.h.

◆ ByteOrderSerialize() [2/2]

FORCEINLINE FArchive & FArchive::ByteOrderSerialize ( void * V,
int32 Length )
inline

Serialize data of Length bytes, taking into account byte swapping if needed.

Definition at line 1777 of file Archive.h.

+ Here is the call graph for this function:

◆ ByteSwap()

void FArchive::ByteSwap ( void * V,
int32 Length )

Used to do byte swapping on small items. This does not happen usually, so we don't want it inline.

◆ ClearError()

void FArchiveState::ClearError ( )

Sets ArIsError to false, this does not clear any CriticalErrors

◆ Close()

virtual bool FArchive::Close ( )
inlinevirtual

Attempts to close and finalize any handles used for backing data storage, returns true if it succeeded.

Reimplemented in FBufferWriter, FPreloadableArchive, FPreloadableArchiveProxy, FBufferReaderWithSHA, FArchiveProxy, FBufferReaderBase, FArchiveFileReaderGeneric, and FArchiveFileWriterGeneric.

Definition at line 1719 of file Archive.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ContainsCode()

FORCEINLINE bool FArchiveState::ContainsCode ( ) const
inline

Returns true if this archive contains native or generated code.

Definition at line 354 of file Archive.h.

◆ ContainsMap()

FORCEINLINE bool FArchiveState::ContainsMap ( ) const
inline

Returns true if this archive contains a ULevel or UWorld object.

Definition at line 360 of file Archive.h.

◆ CookingTarget()

FORCEINLINE const ITargetPlatform * FArchiveState::CookingTarget ( ) const
inline

Returns the cooking target platform.

Returns
Target platform.

Definition at line 629 of file Archive.h.

◆ CountBytes()

virtual void FArchiveState::CountBytes ( SIZE_T InNum,
SIZE_T InMax )
inlinevirtual

Called to get the computed size from a size-detecting archive after it has finished serializing.

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

Definition at line 121 of file Archive.h.

◆ CustomVer()

int32 FArchiveState::CustomVer ( const struct FGuid & Key) const

Queries a custom version from the archive. If the archive is being used to write, the custom version must have already been registered.

Parameters
KeyThe guid of the custom version to query.
Returns
The version number, or -1 if the custom tag isn't stored in the archive.

◆ DetachBulkData() [1/2]

virtual void FArchive::DetachBulkData ( FBulkData * BulkData,
bool bEnsureBulkDataIsLoaded )
inlinevirtual

Detaches the passed in bulk data object from the linker.

Parameters
BulkDataBulk data object to detach
bEnsureBulkDataIsLoadedWhether to ensure that the bulk data is loaded before detaching

Reimplemented in FArchiveProxy.

Definition at line 1642 of file Archive.h.

+ Here is the caller graph for this function:

◆ DetachBulkData() [2/2]

virtual void FArchive::DetachBulkData ( UE::Serialization::FEditorBulkData * BulkData,
bool bEnsureBulkDataIsLoaded )
inlinevirtual

Definition at line 1643 of file Archive.h.

◆ DoDelta()

FORCEINLINE bool FArchiveState::DoDelta ( ) const
inline

Returns true if this archive should handle delta serialization for properties.

Definition at line 390 of file Archive.h.

◆ DoIntraPropertyDelta()

FORCEINLINE bool FArchiveState::DoIntraPropertyDelta ( ) const
inline

Returns true if this archive should perform delta serialization within properties (e.g. TMaps and TSets).

Definition at line 396 of file Archive.h.

◆ EngineNetVer()

uint32 FArchiveState::EngineNetVer ( ) const

Returns the engine-global network protocol version for this archive.

◆ EngineVer()

FORCEINLINE FEngineVersionBase FArchiveState::EngineVer ( ) const
inline

Returns the compiled engine version used for this archive.

Definition at line 229 of file Archive.h.

◆ FastPathLoad()

template<SIZE_T Size>
FORCEINLINE bool FArchive::FastPathLoad ( void * InDest)
inline

Definition at line 1960 of file Archive.h.

◆ Flush()

virtual void FArchive::Flush ( )
inlinevirtual

Attempts to finish writing any buffered data to disk/permanent storage.

Reimplemented in FAsyncWriter, FArchiveSaveCompressedProxy, FArchiveProxy, and FArchiveFileWriterGeneric.

Definition at line 1714 of file Archive.h.

+ Here is the caller graph for this function:

◆ FlushCache()

virtual void FArchive::FlushCache ( )
inlinevirtual

Flushes cache and frees internal data.

Reimplemented in FArchiveProxy, and FArchiveFileReaderGeneric.

Definition at line 1694 of file Archive.h.

+ Here is the caller graph for this function:

◆ ForceBlueprintFinalization()

virtual void FArchive::ForceBlueprintFinalization ( )
inlinevirtual

Inform the archive that a blueprint would like to force finalization, normally this is triggered by CDO load, but if there's no CDO we force finalization.

Reimplemented in FArchiveProxy.

Definition at line 1281 of file Archive.h.

+ Here is the caller graph for this function:

◆ ForceByteSwapping()

FORCEINLINE bool FArchiveState::ForceByteSwapping ( ) const
inline

Returns true if this archive should always swap bytes, ignoring endian rules.

Definition at line 372 of file Archive.h.

◆ GameNetVer()

uint32 FArchiveState::GameNetVer ( ) const

Returns the game-specific network protocol version for this archive.

◆ GetArchetypeFromLoader()

virtual UObject * FArchiveState::GetArchetypeFromLoader ( const UObject * Obj)
inlinevirtual

Called to retrieve the archetype from the event driven loader. If this returns null, then call GetArchetype yourself.

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

Definition at line 197 of file Archive.h.

◆ GetArchiveName()

◆ GetArchiveState() [1/2]

FArchiveState & FArchive::GetArchiveState ( )
inline

Returns the low level archive state for this archive.

Definition at line 1602 of file Archive.h.

+ Here is the caller graph for this function:

◆ GetArchiveState() [2/2]

const FArchiveState & FArchive::GetArchiveState ( ) const
inline

Definition at line 1607 of file Archive.h.

◆ GetCacheableArchive()

virtual FArchive * FArchive::GetCacheableArchive ( )
inlinevirtual

Returns a pointer to an archive that represents the same data that the current archive covers, but that can be cached and reused later In the case of standard archives, this function will just return a pointer to itself. If the archive is actually a temporary proxy to another archive, and has a shorter lifecycle than the source archive, it should return either a pointer to the underlying archive, or if the data becomes inaccessible when the proxy object disappears (as is the case with text format archives) then nullptr

Reimplemented in FArchiveProxy.

Definition at line 1857 of file Archive.h.

+ Here is the caller graph for this function:

◆ GetCookContext()

FORCEINLINE FArchiveCookContext * FArchiveState::GetCookContext ( )
inline

Definition at line 616 of file Archive.h.

◆ GetCookData()

FArchiveCookData * FArchiveState::GetCookData ( )
inline

Definition at line 611 of file Archive.h.

◆ GetCustomVersions()

virtual const FCustomVersionContainer & FArchiveState::GetCustomVersions ( ) const
virtual

Gets the custom version numbers for this archive. These are used to check for system or game-specific version numbers.

Returns
The container of custom versions in the archive.

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

◆ GetDebugSerializationFlags()

FORCEINLINE uint32 FArchiveState::GetDebugSerializationFlags ( ) const
inline

Returns the editor-only debug serialization flags.

Definition at line 465 of file Archive.h.

◆ GetError()

FORCEINLINE bool FArchiveState::GetError ( ) const
inline

Definition at line 342 of file Archive.h.

◆ GetInnermostState()

virtual FArchiveState & FArchiveState::GetInnermostState ( )
inlinevirtual

Returns lowest level archive state, proxy archives will override this.

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

Definition at line 90 of file Archive.h.

◆ GetLinker()

virtual FLinker * FArchiveState::GetLinker ( )
inlinevirtual

If this archive is a FLinkerLoad or FLinkerSave, returns a pointer to the ULinker portion.

Returns
The linker, or nullptr if the archive is not a linker.

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

Definition at line 136 of file Archive.h.

◆ GetMaxSerializeSize()

FORCEINLINE int64 FArchiveState::GetMaxSerializeSize ( ) const
inline

Returns the maximum size of data that this archive is allowed to serialize.

Definition at line 481 of file Archive.h.

◆ GetPortFlags()

FORCEINLINE uint32 FArchiveState::GetPortFlags ( ) const
inline

Returns this archive's property serialization modifier flags.

Definition at line 447 of file Archive.h.

◆ GetSerializeContext()

virtual FUObjectSerializeContext * FArchiveState::GetSerializeContext ( )
inlinevirtual

Gets the current UObject serialization context for this archive.

Reimplemented from FArchiveState.

Definition at line 703 of file Archive.h.

◆ GetSerializedProperty()

FORCEINLINE struct FProperty * FArchiveState::GetSerializedProperty ( ) const
inline

Gets the property that is currently being serialized

Returns
Pointer to the property that is currently being serialized

Definition at line 669 of file Archive.h.

◆ GetSerializedPropertyChain() [1/2]

FORCEINLINE const FArchiveSerializedPropertyChain * FArchiveState::GetSerializedPropertyChain ( ) const
inline

Get the raw serialized property chain for this archive

Note
Accessing this directly can avoid an array allocation depending on your use-case

Definition at line 684 of file Archive.h.

◆ GetSerializedPropertyChain() [2/2]

void FArchiveState::GetSerializedPropertyChain ( TArray< struct FProperty * > & OutProperties) const

Gets the chain of properties that are currently being serialized

Note
This populates the array in stack order, so the 0th entry in the array is the top of the stack of properties

◆ HasAllPortFlags()

FORCEINLINE bool FArchiveState::HasAllPortFlags ( uint32 Flags) const
inline

Checks to see if all of the passed in property serialization modifier flags are set.

Definition at line 459 of file Archive.h.

◆ HasAnyPortFlags()

FORCEINLINE bool FArchiveState::HasAnyPortFlags ( uint32 Flags) const
inline

Checks to see if any of the passed in property serialization modifier flags are set.

Definition at line 453 of file Archive.h.

◆ IsAllowingLazyLoading()

FORCEINLINE bool FArchiveState::IsAllowingLazyLoading ( ) const
inline

Returns true if this archive sould allow lazy loading of bulk / secondary data.

Definition at line 420 of file Archive.h.

◆ IsByteSwapping()

FORCEINLINE bool FArchiveState::IsByteSwapping ( )
inline

Returns true if data larger than 1 byte should be swapped to deal with endian mismatches.

Definition at line 165 of file Archive.h.

◆ IsCooking()

FORCEINLINE bool FArchiveState::IsCooking ( ) const
inline

Checks whether the archive is used for cooking.

Returns
true if the archive is used for cooking, false otherwise.

Definition at line 590 of file Archive.h.

◆ IsCountingMemory()

FORCEINLINE bool FArchiveState::IsCountingMemory ( ) const
inline

Returns true if this archive is counting memory, normally CountBytes is called to get the size.

Definition at line 441 of file Archive.h.

◆ IsCriticalError()

FORCEINLINE bool FArchiveState::IsCriticalError ( ) const
inline

Returns true if this archive contains critical errors that cannot be recovered from.

Definition at line 348 of file Archive.h.

◆ IsError()

FORCEINLINE bool FArchiveState::IsError ( ) const
inline

Returns true if this archive contains errors, which means that further serialization is generally not safe.

Definition at line 337 of file Archive.h.

◆ IsFilterEditorOnly()

bool FArchiveState::IsFilterEditorOnly ( ) const
inline

Indicates whether this archive is filtering editor-only on save or contains data that had editor-only content stripped.

Returns
true if the archive filters editor-only content, false otherwise.

Definition at line 551 of file Archive.h.

◆ IsForcingUnicode()

FORCEINLINE bool FArchiveState::IsForcingUnicode ( ) const
inline

Returns true if this archive wants to always save strings in UTF16 format even if they are ANSI characters.

Definition at line 304 of file Archive.h.

◆ IsIgnoringArchetypeRef()

FORCEINLINE bool FArchiveState::IsIgnoringArchetypeRef ( ) const
inline

Returns true if this archive should ignore archetype references for structs and classes.

Definition at line 384 of file Archive.h.

◆ IsIgnoringClassGeneratedByRef()

FORCEINLINE bool FArchiveState::IsIgnoringClassGeneratedByRef ( ) const
inline

Returns true if this archive should ignore the ClassGeneratedBy reference in UClass.

Definition at line 408 of file Archive.h.

◆ IsIgnoringClassRef()

FORCEINLINE bool FArchiveState::IsIgnoringClassRef ( ) const
inline

Returns true if this archive should ignore the Class reference in UObject.

Definition at line 414 of file Archive.h.

◆ IsIgnoringOuterRef()

FORCEINLINE bool FArchiveState::IsIgnoringOuterRef ( ) const
inline

Returns true if this archive should ignore the Outer reference in UObject.

Definition at line 402 of file Archive.h.

◆ IsLoading()

FORCEINLINE bool FArchiveState::IsLoading ( ) const
inline

Returns true if this archive is for loading data.

Definition at line 249 of file Archive.h.

◆ IsLoadingFromCookedPackage()

FORCEINLINE bool FArchiveState::IsLoadingFromCookedPackage ( ) const
inline

Returns true if this archive is loading from a cooked package.

Definition at line 255 of file Archive.h.

◆ IsModifyingWeakAndStrongReferences()

FORCEINLINE bool FArchiveState::IsModifyingWeakAndStrongReferences ( ) const
inline

Returns true if this archive should modify/search weak object references as well as strong ones.

Definition at line 435 of file Archive.h.

◆ IsNetArchive()

FORCEINLINE bool FArchiveState::IsNetArchive ( ) const
inline

Whether or not this archive is serializing data being sent/received by the netcode

Definition at line 580 of file Archive.h.

◆ IsObjectReferenceCollector()

FORCEINLINE bool FArchiveState::IsObjectReferenceCollector ( ) const
inline

Returns true if this archive is only looking for UObject references. This can be false for reference collectors looking for more general references.

Definition at line 429 of file Archive.h.

◆ IsPersistent()

FORCEINLINE bool FArchiveState::IsPersistent ( ) const
inline

Returns true if this archive is saving or loading data destined for persistent storage and should skip transient data. This is also true for some intermediate archives for tasks like duplication that are eventually destined for persistent storage.

Definition at line 313 of file Archive.h.

◆ IsProxyOf()

virtual bool FArchive::IsProxyOf ( FArchive * InOther) const
inlinevirtual

Determine if the given archive is a valid "child" of this archive. In general, this means "is exactly the same" but this function allows a derived archive to support "child" or "internal" archives which are different objects that proxy the original one in some way.

Parameters
BulkDataBulk data object to detach
bEnsureBulkDataIsLoadedWhether to ensure that the bulk data is loaded before detaching

Reimplemented in FArchiveProxy.

Definition at line 1666 of file Archive.h.

+ Here is the caller graph for this function:

◆ IsSaveGame()

bool FArchiveState::IsSaveGame ( ) const
inline

Indicates whether this archive is saving or loading game state

Note
This is intended for game-specific archives and is not true for any of the build in save methods
Returns
true if the archive is dealing with save games, false otherwise.

Definition at line 572 of file Archive.h.

◆ IsSaving()

FORCEINLINE bool FArchiveState::IsSaving ( ) const
inline

Returns true if this archive is for saving data, this can also be a pre-save preparation archive.

Definition at line 261 of file Archive.h.

◆ IsSerializingDefaults()

FORCEINLINE bool FArchiveState::IsSerializingDefaults ( ) const
inline

Returns true if this archive is currently serializing class/struct default values.

Definition at line 378 of file Archive.h.

◆ IsTextFormat()

FORCEINLINE bool FArchiveState::IsTextFormat ( ) const
inline

Returns true if this archive serializes to a structured text format. Text format archives should use high level constructs from FStructuredArchive for delimiting data rather than manually seeking through the file.

Definition at line 283 of file Archive.h.

◆ IsTransacting()

FORCEINLINE bool FArchiveState::IsTransacting ( ) const
inline

Returns true if this archive is transacting, which is used to keep track of changes to objects for things like the editor undo system.

Definition at line 267 of file Archive.h.

◆ LicenseeUEVer()

FORCEINLINE int32 FArchiveState::LicenseeUEVer ( ) const
inline

Returns the licensee-specific version used for this archive, will be 0 by default.

Definition at line 209 of file Archive.h.

◆ LinkProxy()

static void FArchiveState::LinkProxy ( FArchiveState & Inner,
FArchiveState & Proxy )
staticprotected

◆ Logf()

template<typename FmtType , typename... Types>
void FArchive::Logf ( const FmtType & Fmt,
Types... Args )
inline

Definition at line 1826 of file Archive.h.

◆ LogfImpl()

void VARARGS FArchive::LogfImpl ( const TCHAR * Fmt,
... )
private

◆ MarkScriptSerializationEnd()

virtual void FArchive::MarkScriptSerializationEnd ( const UObject * Obj)
inlinevirtual

Called when an object stops serializing property data using script serialization.

Reimplemented in FArchiveProxy.

Definition at line 1811 of file Archive.h.

+ Here is the caller graph for this function:

◆ MarkScriptSerializationStart()

virtual void FArchive::MarkScriptSerializationStart ( const UObject * Obj)
inlinevirtual

Called when an object begins serializing property data using script serialization.

Reimplemented in FArchiveProxy.

Definition at line 1806 of file Archive.h.

+ Here is the caller graph for this function:

◆ MarkSearchableName()

virtual void FArchive::MarkSearchableName ( const UObject * TypeObject,
const FName & ValueName ) const
inlinevirtual

Called to register a reference to a specific name value, of type TypeObject (UEnum or UStruct normally). Const so it can be called from PostSerialize

Reimplemented in FArchiveProxy.

Definition at line 1816 of file Archive.h.

+ Here is the caller graph for this function:

◆ operator<<() [1/10]

virtual FArchive & FArchive::operator<< ( FField *& Value)
inlinevirtual

Serializes a Field value from or into this archive.

This operator can be implemented by sub-classes that wish to serialize UObject instances.

Parameters
ValueThe value to serialize.
Returns
This instance.

Reimplemented in FArchiveMD5, FMemoryArchive, and FArchiveProxy.

Definition at line 1181 of file Archive.h.

◆ operator<<() [2/10]

virtual FArchive & FArchive::operator<< ( FName & Value)
inlinevirtual

Serializes an FName value from or into this archive.

This operator can be implemented by sub-classes that wish to serialize FName instances.

Parameters
ValueThe value to serialize.
Returns
This instance.

Reimplemented in FNameAsStringProxyArchive, FMemoryArchive, FArchiveMD5, FNameAsStringIndexProxyArchive, FArchiveMD5, FMemoryArchive, and FArchiveProxy.

Definition at line 1147 of file Archive.h.

◆ operator<<() [3/10]

virtual FArchive & FArchive::operator<< ( FText & Value)
virtual

Serializes an FText value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Reimplemented in FArchiveMD5, FMemoryArchive, and FArchiveProxy.

◆ operator<<() [4/10]

virtual FArchive & FArchive::operator<< ( struct FLazyObjectPtr & Value)
virtual

Serializes a lazy object pointer value from or into this archive.

Most of the time, FLazyObjectPtrs are serialized as UObject*, but some archives need to override this.

Parameters
ValueThe value to serialize.
Returns
This instance.

Reimplemented in FArchiveProxy, FArchiveMD5, and FMemoryArchive.

◆ operator<<() [5/10]

virtual FArchive & FArchive::operator<< ( struct FObjectPtr & Value)
virtual

Serializes a wrapped object pointer value from or into this archive.

Most of the time, FObjectPtrs are serialized as UObject*, but some archives need to override this.

Parameters
ValueThe value to serialize.
Returns
This instance.

Reimplemented in FArchiveProxy, FArchiveMD5, and FMemoryArchive.

◆ operator<<() [6/10]

virtual FArchive & FArchive::operator<< ( struct FSoftObjectPath & Value)
virtual

Serializes soft object paths from or into this archive.

Parameters
ValueSoft object path to serialize.
Returns
This instance.

Reimplemented in FArchiveProxy, FArchiveMD5, and FMemoryArchive.

◆ operator<<() [7/10]

virtual FArchive & FArchive::operator<< ( struct FSoftObjectPtr & Value)
virtual

Serializes asset pointer from or into this archive.

Most of the time, FSoftObjectPtr are serialized as UObject *, but some archives need to override this.

Parameters
ValueThe asset pointer to serialize.
Returns
This instance.

Reimplemented in FArchiveProxy, FArchiveMD5, and FMemoryArchive.

◆ operator<<() [8/10]

virtual FArchive & FArchive::operator<< ( struct FWeakObjectPtr & Value)
virtual

Serializes FWeakObjectPtr value from or into this archive.

This operator can be implemented by sub-classes that wish to serialize FWeakObjectPtr instances.

Parameters
ValueThe value to serialize.
Returns
This instance.

Reimplemented in FArchiveProxy, FArchiveMD5, and FMemoryArchive.

◆ operator<<() [9/10]

template<class T >
FORCEINLINE FArchive & FArchive::operator<< ( TCheckedObjPtr< T > & Value)
inline

Serializes a UObject wrapped in a TCheckedObjPtr container, using the above operator, and verifies the serialized object is derived from the correct base class, to prevent illegal casting.

Parameters
ValueThe value to serialize.
Returns
This instance.

Definition at line 1193 of file Archive.h.

◆ operator<<() [10/10]

virtual FArchive & FArchive::operator<< ( UObject *& Value)
inlinevirtual

Serializes an UObject value from or into this archive.

This operator can be implemented by sub-classes that wish to serialize UObject instances.

Parameters
ValueThe value to serialize.
Returns
This instance.

Reimplemented in FMemoryArchive, FArchiveMD5, FArchiveMD5, FMemoryArchive, and FArchiveProxy.

Definition at line 1168 of file Archive.h.

◆ operator=()

FArchive & FArchive::operator= ( const FArchive & ArchiveToCopy)
default

◆ PopFileRegionType()

virtual void FArchive::PopFileRegionType ( )
inlinevirtual

Definition at line 2205 of file Archive.h.

◆ PopSerializedProperty()

virtual void FArchive::PopSerializedProperty ( struct FProperty * InProperty,
const bool bIsEditorOnlyProperty )
virtual

Pop a property that was previously being serialized off the property stack

Parameters
InPropertyPointer to the property that was previously being serialized
bIsEditorOnlyPropertyTrue if the property is editor only (call FProperty::IsEditorOnlyProperty to work this out, as the archive can't since it can't access CoreUObject types)

Reimplemented in FArchiveProxy.

+ Here is the caller graph for this function:

◆ Precache()

virtual bool FArchive::Precache ( int64 PrecacheOffset,
int64 PrecacheSize )
inlinevirtual

Hint the archive that the region starting at passed in offset and spanning the passed in size is going to be read soon and should be precached.

The function returns whether the precache operation has completed or not which is an important hint for code knowing that it deals with potential async I/O. The archive is free to either not implement this function or only partially precache so it is required that given sufficient time the function will return true. Archives not based on async I/O should always return true.

This function will not change the current archive position.

Parameters
PrecacheOffsetOffset at which to begin precaching.
PrecacheSizeNumber of bytes to precache
Returns
false if precache operation is still pending, true otherwise

Reimplemented in FArchiveFileReaderGeneric, and FArchiveProxy.

Definition at line 1686 of file Archive.h.

+ Here is the caller graph for this function:

◆ Preload()

virtual void FArchive::Preload ( UObject * Object)
inlinevirtual

Tells the archive to attempt to preload the specified object so data can be loaded out of it.

Reimplemented in FArchiveProxy.

Definition at line 1599 of file Archive.h.

+ Here is the caller graph for this function:

◆ PushFileRegionType()

virtual void FArchive::PushFileRegionType ( EFileRegionType Type)
inlinevirtual

Called whilst cooking to provide file region hints to the cooker.

Definition at line 2204 of file Archive.h.

◆ PushSerializedProperty()

virtual void FArchive::PushSerializedProperty ( struct FProperty * InProperty,
const bool bIsEditorOnlyProperty )
virtual

Push a property that is currently being serialized onto the property stack

Parameters
InPropertyPointer to the property that is currently being serialized
bIsEditorOnlyPropertyTrue if the property is editor only (call FProperty::IsEditorOnlyProperty to work this out, as the archive can't since it can't access CoreUObject types)

Reimplemented in FArchiveProxy.

+ Here is the caller graph for this function:

◆ RequiresLocalizationGather()

FORCEINLINE bool FArchiveState::RequiresLocalizationGather ( ) const
inline

Returns true if this archive contains data required to be gathered for localization.

Definition at line 366 of file Archive.h.

◆ Reset()

virtual void FArchiveState::Reset ( )
virtual

Resets all of the base archive members.

Reimplemented from FArchiveState.

Reimplemented in FBitWriter.

◆ ResetCustomVersions()

virtual void FArchiveState::ResetCustomVersions ( )
virtual

Resets the custom version numbers for this archive.

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

◆ Seek()

virtual void FArchive::Seek ( int64 InPos)
inlinevirtual

Attempts to set the current offset into backing data storage, this will do nothing if there is no storage.

Reimplemented in FArchiveLoadCompressedProxy, FArchiveSaveCompressedProxy, FBufferWriter, FPreloadableArchive, FPreloadableArchiveProxy, FBufferReaderBase, FMemoryArchive, FArchiveProxy, FArchiveFileReaderGeneric, and FArchiveFileWriterGeneric.

Definition at line 1625 of file Archive.h.

+ Here is the caller graph for this function:

◆ Serialize()

◆ SerializeBits()

virtual void FArchive::SerializeBits ( void * V,
int64 LengthBits )
inlinevirtual

Reimplemented in FArchiveProxy, FBitReader, and FBitWriter.

Definition at line 1580 of file Archive.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SerializeBulkData()

virtual bool FArchive::SerializeBulkData ( FBulkData & BulkData,
const struct FBulkDataSerializationParams & Params )
inlinevirtual

Serialize bulk data.

Parameters
BulkDataBulk data object to serialize
ParamsSerialization parameters
Returns
true if the bulk data was serialized, false to fallback to default serialization (inline)

Reimplemented in FArchiveProxy.

Definition at line 1653 of file Archive.h.

◆ SerializeByteOrderSwapped() [1/4]

FArchive & FArchive::SerializeByteOrderSwapped ( uint16 & Value)
inlineprivate

Definition at line 2026 of file Archive.h.

◆ SerializeByteOrderSwapped() [2/4]

FArchive & FArchive::SerializeByteOrderSwapped ( uint32 & Value)
inlineprivate

Definition at line 2030 of file Archive.h.

◆ SerializeByteOrderSwapped() [3/4]

FArchive & FArchive::SerializeByteOrderSwapped ( uint64 & Value)
inlineprivate

Definition at line 2034 of file Archive.h.

◆ SerializeByteOrderSwapped() [4/4]

FArchive & FArchive::SerializeByteOrderSwapped ( void * V,
int32 Length )
inlineprivate

Definition at line 2022 of file Archive.h.

+ Here is the caller graph for this function:

◆ SerializeCompressed()

void FArchive::SerializeCompressed ( void * V,
int64 Length,
FName CompressionFormatCannotChange,
ECompressionFlags Flags = COMPRESS_NoFlags,
bool bTreatBufferAsFileReader = false )

Serializes and compresses/ uncompresses data. This is a shared helper function for compression support.

Do not use SerializeCompressed in new code, prefer SerializeCompressedNew instead. SerializeCompressedNew can be dropped in to any existing use of SerializeCompressed.

Parameters
VData pointer to serialize data from/ to
LengthLength of source data if we're saving, unused otherwise
CompressionFormatCannotChangeCompression Format to use for encoding & decoding - cannot be changed without breaking file compatibility
FlagsFlags to control what method to use for [de]compression and optionally control memory vs speed when compressing
bTreatBufferAsFileReadertrue if V is actually an FArchive, which is used when saving to read data - helps to avoid single huge allocations of source data

◆ SerializeCompressedNew() [1/2]

void FArchive::SerializeCompressedNew ( void * V,
int64 Length )

Serializes and compresses/ uncompresses data with default compressor choices.

Default compressors are Oodle for new data and Zlib when loading legacy data.

Parameters
VData pointer to serialize data from/ to
LengthLength of source data if we're saving, unused otherwise

◆ SerializeCompressedNew() [2/2]

void FArchive::SerializeCompressedNew ( void * V,
int64 Length,
FName CompressionFormatToEncode,
FName CompressionFormatToDecodeOldV1Files,
ECompressionFlags Flags = COMPRESS_NoFlags,
bool bTreatBufferAsFileReader = false,
int64 * OutPartialReadLength = nullptr )

Serializes and compresses/ uncompresses data. This is a shared helper function for compression support.

call SerializeCompressedNew instead of SerializeCompressed Typically you should not serializing data compressed if it will be packaged or stored in the DDC. Prefer to allow the package/iostore system to do the compression for you instead.

SerializeCompressedNew can read existing data written by old SerializeCompressed calls.

Parameters
VData pointer to serialize data from/ to
LengthLength of source data if we're saving, unused otherwise
CompressionFormatToEncodeCompression Format to use for encoding, can be changed freely without breaking compatibility
CompressionFormatToDecodeOldV1FilesCompression Format to decode old data with that didn't write compressor in header, cannot change, usually NAME_Zlib
FlagsFlags to control what method to use for [de]compression and optionally control memory vs speed when compressing
bTreatBufferAsFileReadertrue if V is actually an FArchive, which is used when saving to read data - helps to avoid single huge allocations of source data
OutPartialReadLengthif not null, partial reads are allowed and the size is filled here

◆ SerializeInt()

virtual void FArchive::SerializeInt ( uint32 & Value,
uint32 Max )
inlinevirtual

Reimplemented in FBitReader, FArchiveProxy, and FBitWriter.

Definition at line 1590 of file Archive.h.

+ Here is the caller graph for this function:

◆ SerializeIntPacked()

virtual void FArchive::SerializeIntPacked ( uint32 & Value)
virtual

Packs int value into bytes of 7 bits with 8th bit for 'more'

Reimplemented in FArchiveProxy, FBitReader, and FBitWriter.

+ Here is the caller graph for this function:

◆ SetArchiveState()

void FArchiveState::SetArchiveState ( const FArchiveState & InState)

Modifies current archive state, can be used to override flags.

◆ SetByteSwapping()

void FArchiveState::SetByteSwapping ( bool Enabled)
inline

Toggle byte order swapping. This is needed in rare cases when we already know that the data swapping has already occurred or if we know that it will be handled later.

Parameters
Enabledset to true to enable byte order swapping

Definition at line 519 of file Archive.h.

◆ SetCompressionMap()

virtual bool FArchive::SetCompressionMap ( TArray< struct FCompressedChunk > * CompressedChunks,
ECompressionFlags CompressionFlags )
inlinevirtual

Sets mapping from offsets/ sizes that are going to be used for seeking and serialization to what is actually stored on disk. If the archive supports dealing with compression in this way it is going to return true.

Parameters
CompressedChunksPointer to array containing information about [un]compressed chunks
CompressionFlagsFlags determining compression format associated with mapping
Returns
true if archive supports translating offsets & uncompressing on read, false otherwise

Reimplemented in FArchiveProxy.

Definition at line 1706 of file Archive.h.

◆ SetCookData()

void FArchiveState::SetCookData ( FArchiveCookData * InCookData)
inline

Marks that this archive is "cooking" by providing the cook data bundle. Must be set after loading/saving/transacting.

Definition at line 599 of file Archive.h.

◆ SetCustomVersion()

void FArchiveState::SetCustomVersion ( const struct FGuid & Key,
int32 Version,
FName FriendlyName )

Sets a specific custom version

Parameters
Key- The guid of the custom version to query.
Version- The version number to set key to
FriendlyName- Friendly name corresponding to the key

◆ SetCustomVersions()

virtual void FArchiveState::SetCustomVersions ( const FCustomVersionContainer & CustomVersionContainer)
virtual

Sets the custom version numbers for this archive.

Parameters
CustomVersionContainer- The container of custom versions to copy into the archive.

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

◆ SetDebugSerializationFlags()

void FArchiveState::SetDebugSerializationFlags ( uint32 InCustomFlags)
inline

Sets the archives custom serialization modifier flags (nothing to do with PortFlags or Custom versions)

Parameters
InCustomFlagsthe new flags to use for custom serialization

Definition at line 539 of file Archive.h.

◆ SetEngineNetVer()

virtual void FArchiveState::SetEngineNetVer ( const uint32 InEngineNetVer)
virtual

Sets the archive engine network version.

Reimplemented from FArchiveState.

◆ SetEngineVer()

virtual void FArchiveState::SetEngineVer ( const FEngineVersionBase & InVer)
virtual

Sets the archive engine version. Used by the code that makes sure that FLinkerLoad's internal archive versions match the file reader it creates.

Parameters
InVernew version number

Reimplemented from FArchiveState.

◆ SetError()

void FArchiveState::SetError ( )

Sets ArIsError to true. Also sets error in the proxy archiver if one is wrapping this.

◆ SetFilterEditorOnly()

virtual void FArchiveState::SetFilterEditorOnly ( bool InFilterEditorOnly)
inlinevirtual

Sets a flag indicating that this archive needs to filter editor-only content.

Parameters
InFilterEditorOnlyWhether to filter editor-only content.

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

Definition at line 561 of file Archive.h.

◆ SetForceUnicode()

virtual void FArchiveState::SetForceUnicode ( bool bInForceUnicode)
virtual

Sets whether this archive wants to force saving as Unicode. This is needed when we need to make sure ANSI strings are saved as Unicode.

Parameters
bInForceUnicodetrue if this archive wants to force saving as Unicode, false otherwise.

Reimplemented from FArchiveState.

◆ SetGameNetVer()

virtual void FArchiveState::SetGameNetVer ( const uint32 InGameNetVer)
virtual

Sets the archive game network version.

Reimplemented from FArchiveState.

◆ SetIsLoading()

virtual void FArchiveState::SetIsLoading ( bool bInIsLoading)
virtual

Sets whether this archive is for loading data.

Parameters
bInIsLoadingtrue if this archive is for loading, false otherwise.

Reimplemented from FArchiveState.

◆ SetIsLoadingFromCookedPackage()

virtual void FArchiveState::SetIsLoadingFromCookedPackage ( bool bInIsLoadingFromCookedPackage)
virtual

Sets whether the archive is loading from a cooked package.

Parameters
bInIsLoadingFromCookedPackagetrue if this archive is loading from a cooked package, false otherwise

Reimplemented from FArchiveState.

◆ SetIsPersistent()

virtual void FArchiveState::SetIsPersistent ( bool bInIsPersistent)
virtual

Sets whether this archive is to persistent storage.

Parameters
bInIsPersistenttrue if this archive is to persistent storage, false otherwise.

Reimplemented from FArchiveState.

◆ SetIsSaving()

virtual void FArchiveState::SetIsSaving ( bool bInIsSaving)
virtual

Sets whether this archive is for saving data.

Parameters
bInIsSavingtrue if this archive is for saving, false otherwise.

Reimplemented from FArchiveState.

◆ SetIsTextFormat()

virtual void FArchiveState::SetIsTextFormat ( bool bInIsTextFormat)
virtual

Sets whether this archive is in text format.

Parameters
bInIsTextFormattrue if this archive is in text format, false otherwise.

Reimplemented from FArchiveState.

◆ SetIsTransacting()

virtual void FArchiveState::SetIsTransacting ( bool bInIsTransacting)
virtual

Sets whether this archive is for transacting.

Parameters
bInIsTransactingtrue if this archive is for transacting, false otherwise.

Reimplemented from FArchiveState.

◆ SetLicenseeUEVer()

virtual void FArchiveState::SetLicenseeUEVer ( int32 InVer)
virtual

Sets the archive licensee version number. Used by the code that makes sure that FLinkerLoad's internal archive versions match the file reader it creates.

Parameters
Vernew version number

Reimplemented from FArchiveState.

◆ SetPortFlags()

void FArchiveState::SetPortFlags ( uint32 InPortFlags)
inline

Sets the archive's property serialization modifier flags

Parameters
InPortFlagsthe new flags to use for property serialization

Definition at line 529 of file Archive.h.

◆ SetSerializeContext()

virtual void FArchiveState::SetSerializeContext ( FUObjectSerializeContext * InLoadContext)
inlinevirtual

Sets the current UObject serialization context for this archive.

Reimplemented from FArchiveState.

Definition at line 700 of file Archive.h.

◆ SetSerializedProperty()

virtual void FArchiveState::SetSerializedProperty ( FProperty * InProperty)
inlinevirtual

Overrides the property that is currently being serialized

Note
: You likely want to call PushSerializedProperty/PopSerializedProperty instead
Parameters
InPropertyPointer to the property that is currently being serialized

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

Definition at line 659 of file Archive.h.

◆ SetSerializedPropertyChain()

virtual void FArchiveState::SetSerializedPropertyChain ( const FArchiveSerializedPropertyChain * InSerializedPropertyChain,
struct FProperty * InSerializedPropertyOverride = nullptr )
virtual

Set the raw serialized property chain for this archive, optionally overriding the serialized property too (or null to use the head of the property chain)

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

◆ SetShouldSkipCompilingAssets()

void FArchiveState::SetShouldSkipCompilingAssets ( bool Enabled)
inlineprotected

Set whether or not it is allowed to skip serialization on assets still being compiled to avoid waiting unless strictly necessary.

Parameters
EnabledSet to true to enable skip serialization on compiling assets.

Definition at line 323 of file Archive.h.

◆ SetUE4Ver()

FORCEINLINE void FArchiveState::SetUE4Ver ( int32 InVer)
inline

Definition at line 923 of file Archive.h.

◆ SetUEVer()

virtual void FArchiveState::SetUEVer ( FPackageFileVersion InVer)
virtual

Sets the archive version number. Used by the code that makes sure that FLinkerLoad's internal archive versions match the file reader it creates.

Parameters
UEVernew version number

Reimplemented from FArchiveState.

◆ SetUseUnversionedPropertySerialization()

virtual void FArchiveState::SetUseUnversionedPropertySerialization ( bool bInUseUnversioned)
virtual

Sets whether tagged property serialization should be replaced by faster unversioned serialization. This assumes writer and reader share the same property definitions.

Reimplemented from FArchiveState.

◆ SetWantBinaryPropertySerialization()

virtual void FArchiveState::SetWantBinaryPropertySerialization ( bool bInWantBinaryPropertySerialization)
virtual

Sets whether this archive wants binary property serialization.

Parameters
bInWantBinaryPropertySerializationtrue if this archive wants binary serialization, false otherwise.

Reimplemented from FArchiveState.

◆ ShouldSkipBulkData()

FORCEINLINE bool FArchiveState::ShouldSkipBulkData ( ) const
inline

Returns true if this archive should ignore bulk data.

Definition at line 475 of file Archive.h.

◆ ShouldSkipCompilingAssets()

FORCEINLINE bool FArchiveState::ShouldSkipCompilingAssets ( ) const
inline

Returns true if it is allowed to skip serialization on assets still being compiled to avoid waiting unless strictly necessary.

Definition at line 331 of file Archive.h.

◆ ShouldSkipProperty()

virtual bool FArchiveState::ShouldSkipProperty ( const FProperty * InProperty) const
inlinevirtual

Checks whether the archive wants to skip the property independent of the other flags

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

Definition at line 648 of file Archive.h.

◆ StartSerializingDefaults()

void FArchive::StartSerializingDefaults ( )
inline

Sets a flag indicating that this archive is currently serializing class/struct defaults.

Definition at line 1792 of file Archive.h.

◆ StopSerializingDefaults()

void FArchive::StopSerializingDefaults ( )
inline

Indicate that this archive is no longer serializing class/struct defaults.

Definition at line 1798 of file Archive.h.

◆ Tell()

virtual int64 FArchiveState::Tell ( )
inlinevirtual

Returns the current location within the backing data storage, which can possibly be passed to Seek later to restore a read/write location. If this returns -1, there is no backing data storage and Seek will not function.

Reimplemented from FArchiveState.

Reimplemented in FArchiveLoadCompressedProxy, FArchiveSaveCompressedProxy, FBufferWriter, FPreloadableArchive, FPreloadableArchiveProxy, FBufferReaderBase, FMemoryArchive, FArchiveProxy, FArchiveFileReaderGeneric, and FArchiveFileWriterGeneric.

Definition at line 145 of file Archive.h.

◆ ThisContainsCode()

void FArchiveState::ThisContainsCode ( )
inline

Sets a flag indicating that this archive contains native or generated code.

Definition at line 176 of file Archive.h.

◆ ThisContainsMap()

void FArchiveState::ThisContainsMap ( )
inline

Sets a flag indicating that this archive contains a ULevel or UWorld object.

Definition at line 182 of file Archive.h.

◆ ThisRequiresLocalizationGather()

void FArchiveState::ThisRequiresLocalizationGather ( )
inline

Sets a flag indicating that this archive contains data required to be gathered for localization.

Definition at line 188 of file Archive.h.

◆ TotalSize()

◆ UE4Ver()

FORCEINLINE int32 FArchiveState::UE4Ver ( ) const
inline

Returns the global engine serialization version used for this archive.

Definition at line 216 of file Archive.h.

◆ UEVer()

FORCEINLINE FPackageFileVersion FArchiveState::UEVer ( ) const
inline

Returns the global engine serialization version used for this archive.

Definition at line 203 of file Archive.h.

◆ UnlinkProxy()

static void FArchiveState::UnlinkProxy ( FArchiveState & Inner,
FArchiveState & Proxy )
staticprotected

◆ UseToResolveEnumerators()

virtual bool FArchiveState::UseToResolveEnumerators ( ) const
inlinevirtual

Checks whether the archive is used to resolve out-of-date enum indexes If function returns true, the archive should be called only for objects containing user defined enum

Returns
true if the archive is used to resolve out-of-date enum indexes

Reimplemented from FArchiveState.

Reimplemented in FArchiveProxy.

Definition at line 640 of file Archive.h.

◆ UseUnversionedPropertySerialization()

FORCEINLINE bool FArchiveState::UseUnversionedPropertySerialization ( ) const
inline

Returns true if tagged property serialization should be replaced by faster unversioned serialization. This assumes writer and reader share the same property definitions.

Definition at line 298 of file Archive.h.

◆ UsingCustomVersion()

virtual void FArchive::UsingCustomVersion ( const struct FGuid & Guid)
virtual

Registers the custom version to the archive. This is used to inform the archive that custom version information is about to be stored. There is no effect when the archive is being loaded from.

Parameters
GuidThe guid of the custom version. This must have previously been registered with FCustomVersionRegistration.

◆ WantBinaryPropertySerialization()

FORCEINLINE bool FArchiveState::WantBinaryPropertySerialization ( ) const
inline

Returns true if this archive wants properties to be serialized in binary form instead of safer but slower tagged form.

Definition at line 289 of file Archive.h.

Friends And Related Symbol Documentation

◆ operator<< [1/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
ANSICHAR & Value )
friend

Serializes an ANSICHAR value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1290 of file Archive.h.

◆ operator<< [2/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
bool & D )
friend

Serializes a Boolean value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1419 of file Archive.h.

◆ operator<< [3/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
double & Value )
friend

Serializes a double precision floating point value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1506 of file Archive.h.

◆ operator<< [4/15]

FArchive & operator<< ( FArchive & Ar,
FIntRect & Value )
friend

Serializes an FIntRect value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

◆ operator<< [5/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
float & Value )
friend

Serializes a single precision floating point value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1488 of file Archive.h.

◆ operator<< [6/15]

FArchive & operator<< ( FArchive & Ar,
FString & Value )
friend

Serializes an FString value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Serializes the string.

Parameters
ArReference to the serialization archive.
SReference to the string being serialized.
Returns
Reference to the Archive after serialization.

Definition at line 1363 of file String.cpp.

◆ operator<< [7/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
int16 & Value )
friend

Serializes a signed 16-bit integer value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1375 of file Archive.h.

◆ operator<< [8/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
int32 & Value )
friend

Serializes a signed 32-bit integer value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1452 of file Archive.h.

◆ operator<< [9/15]

FArchive & operator<< ( FArchive & Ar,
int64 & Value )
friend

Serializes a signed 64-bit integer value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1541 of file Archive.h.

◆ operator<< [10/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
int8 & Value )
friend

Serializes a signed 8-bit integer value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1341 of file Archive.h.

◆ operator<< [11/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
uint16 & Value )
friend

Serializes an unsigned 16-bit integer value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1358 of file Archive.h.

◆ operator<< [12/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
uint32 & Value )
friend

Serializes an unsigned 32-bit integer value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1392 of file Archive.h.

◆ operator<< [13/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
uint64 & Value )
friend

Serializes a unsigned 64-bit integer value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1524 of file Archive.h.

◆ operator<< [14/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
uint8 & Value )
friend

Serializes an unsigned 8-bit integer value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1324 of file Archive.h.

◆ operator<< [15/15]

FORCEINLINE friend FArchive & operator<< ( FArchive & Ar,
WIDECHAR & Value )
friend

Serializes a WIDECHAR value from or into an archive.

Parameters
ArThe archive to serialize from or to.
ValueThe value to serialize.

Definition at line 1307 of file Archive.h.

Member Data Documentation

◆ ActiveFPLB

FFastPathLoadBuffer* FArchiveState::ActiveFPLB

Definition at line 742 of file Archive.h.

◆ ArAllowLazyLoading

uint8 FArchiveState::ArAllowLazyLoading

Whether to allow lazy loading of bulk/secondary data.

Definition at line 820 of file Archive.h.

◆ ArContainsCode

uint8 FArchiveState::ArContainsCode

Quickly tell if an archive contains script code.

Definition at line 790 of file Archive.h.

◆ ArContainsMap

uint8 FArchiveState::ArContainsMap

Used to determine whether FArchive contains a level or world.

Definition at line 793 of file Archive.h.

◆ ArCustomPropertyList

const struct FCustomPropertyListNode* FArchiveState::ArCustomPropertyList

Custom property list attribute. If the flag below is set, only these properties will be iterated during serialization. If NULL, then no properties will be iterated.

Definition at line 989 of file Archive.h.

◆ ArEngineNetVer

uint32 FArchiveState::ArEngineNetVer
private

Holds the engine network protocol version.

Definition at line 974 of file Archive.h.

◆ ArEngineVer

FEngineVersionBase FArchiveState::ArEngineVer
private

Holds the engine version.

Definition at line 970 of file Archive.h.

◆ ArForceByteSwapping

uint8 FArchiveState::ArForceByteSwapping

Whether we should forcefully swap bytes.

Definition at line 799 of file Archive.h.

◆ ArForceUnicode

uint8 FArchiveState::ArForceUnicode
private

Whether this archive wants to always save strings in UTF16 format even if they are ANSI characters

Definition at line 773 of file Archive.h.

◆ ArGameNetVer

uint32 FArchiveState::ArGameNetVer
private

Holds the game network protocol version.

Definition at line 978 of file Archive.h.

◆ ArIgnoreArchetypeRef

uint8 FArchiveState::ArIgnoreArchetypeRef

If true, we will not serialize archetype references for structs and classes.

Definition at line 802 of file Archive.h.

◆ ArIgnoreClassGeneratedByRef

uint8 FArchiveState::ArIgnoreClassGeneratedByRef

If true, we will not serialize ClassGeneratedBy reference in UClass.

Definition at line 814 of file Archive.h.

◆ ArIgnoreClassRef

uint8 FArchiveState::ArIgnoreClassRef

If true, UObject::Serialize will skip serialization of the Class property.

Definition at line 817 of file Archive.h.

◆ ArIgnoreOuterRef

uint8 FArchiveState::ArIgnoreOuterRef

If true, we will not serialize the Outer reference in UObject.

Definition at line 811 of file Archive.h.

◆ ArIsCountingMemory

uint8 FArchiveState::ArIsCountingMemory

Whether this archive is counting memory.

Definition at line 829 of file Archive.h.

◆ ArIsFilterEditorOnly

uint8 FArchiveState::ArIsFilterEditorOnly

Whether editor only properties are being filtered from the archive (or has been filtered).

Definition at line 835 of file Archive.h.

◆ ArIsLoading

uint8 FArchiveState::ArIsLoading
private

Whether this archive is for loading data.

Definition at line 752 of file Archive.h.

◆ ArIsLoadingFromCookedPackage

uint8 FArchiveState::ArIsLoadingFromCookedPackage
private

Whether this archive is loading from a cooked package.

Definition at line 755 of file Archive.h.

◆ ArIsModifyingWeakAndStrongReferences

uint8 FArchiveState::ArIsModifyingWeakAndStrongReferences

Whether a reference collector is modifying the references and wants both weak and strong ones

Definition at line 826 of file Archive.h.

◆ ArIsNetArchive

uint8 FArchiveState::ArIsNetArchive

Whether or not this archive is sending/receiving network data

Definition at line 841 of file Archive.h.

◆ ArIsObjectReferenceCollector

uint8 FArchiveState::ArIsObjectReferenceCollector

Whether this archive only cares about serializing object references.

Definition at line 823 of file Archive.h.

◆ ArIsPersistent

uint8 FArchiveState::ArIsPersistent
private

Whether this archive saves to persistent storage. This is also true for some intermediate archives like DuplicateObject that are expected to go to persistent storage but may be discarded

Definition at line 776 of file Archive.h.

◆ ArIsSaveGame

uint8 FArchiveState::ArIsSaveGame

Whether this archive is saving/loading game state

Definition at line 838 of file Archive.h.

◆ ArIsSaving

uint8 FArchiveState::ArIsSaving
private

Whether this archive is for saving data.

Definition at line 758 of file Archive.h.

◆ ArIsTextFormat

uint8 FArchiveState::ArIsTextFormat
private

Whether this archive serializes to a text format. Text format archives should use high level constructs from FStructuredArchive for delimiting data rather than manually seeking through the file.

Definition at line 764 of file Archive.h.

◆ ArIsTransacting

uint8 FArchiveState::ArIsTransacting
private

Whether archive is transacting, which is used to keep track of changes to objects for things like the editor undo system.

Definition at line 761 of file Archive.h.

◆ ArLicenseeUEVer

int32 FArchiveState::ArLicenseeUEVer
private

Holds the archive version for licensees.

Definition at line 967 of file Archive.h.

◆ ArMaxSerializeSize

int64 FArchiveState::ArMaxSerializeSize

Max size of data that this archive is allowed to serialize.

Definition at line 853 of file Archive.h.

◆ ArNoDelta

uint8 FArchiveState::ArNoDelta

If true, do not perform delta serialization of properties.

Definition at line 805 of file Archive.h.

◆ ArNoIntraPropertyDelta

uint8 FArchiveState::ArNoIntraPropertyDelta

If true, do not perform delta serialization within properties (e.g. TMaps and TSets).

Definition at line 808 of file Archive.h.

◆ ArPortFlags

uint32 FArchiveState::ArPortFlags

Modifier flags that be used when serializing UProperties

Definition at line 850 of file Archive.h.

◆ ArRequiresLocalizationGather

uint8 FArchiveState::ArRequiresLocalizationGather

Used to determine whether FArchive contains data required to be gathered for localization.

Definition at line 796 of file Archive.h.

◆ ArSerializingDefaults

int32 FArchiveState::ArSerializingDefaults

Whether we are currently serializing defaults. > 0 means yes, <= 0 means no.

Definition at line 847 of file Archive.h.

◆ ArShouldSkipBulkData

uint8 FArchiveState::ArShouldSkipBulkData

Whether bulk data serialization should be skipped or not.

Definition at line 832 of file Archive.h.

◆ ArUEVer

FPackageFileVersion FArchiveState::ArUEVer
private

Holds the archive version.

Definition at line 964 of file Archive.h.

◆ ArUseCustomPropertyList

uint8 FArchiveState::ArUseCustomPropertyList

Set TRUE to use the custom property list attribute for serialization.

Definition at line 844 of file Archive.h.

◆ ArUseUnversionedPropertySerialization

uint8 FArchiveState::ArUseUnversionedPropertySerialization
private

Whether tagged property serialization is replaced by faster unversioned serialization. This assumes writer and reader share the same property definitions.

Definition at line 770 of file Archive.h.

◆ ArWantBinaryPropertySerialization

uint8 FArchiveState::ArWantBinaryPropertySerialization
private

Whether this archive wants properties to be serialized in binary form instead of tagged.

Definition at line 767 of file Archive.h.

◆ bCustomVersionsAreReset

bool FArchiveState::bCustomVersionsAreReset
mutableprivate

Indicates if the custom versions container is in a 'reset' state. This will be used to defer the choice about how to populate the container until it is needed, where the read/write state will be known.

Definition at line 1026 of file Archive.h.

◆ CustomVersionContainer

FCustomVersionContainer* FArchiveState::CustomVersionContainer
mutableprivate

All the custom versions stored in the archive. Stored as a pointer to a heap-allocated object because of a 3-way dependency between TArray, FCustomVersionContainer and FArchive, which is too much work to change right now. Keeping it as a heap-allocated object also helps with performance in some cases as we don't need to construct it for archives that don't care about custom versions.

Definition at line 985 of file Archive.h.

◆ InlineFPLB

FFastPathLoadBuffer FArchiveState::InlineFPLB

Definition at line 743 of file Archive.h.

◆ SerializedProperty

FProperty* FArchiveState::SerializedProperty
private

Holds the pointer to the property that is currently being serialized

Definition at line 1002 of file Archive.h.

◆ SerializedPropertyChain

FArchiveSerializedPropertyChain* FArchiveState::SerializedPropertyChain
private

Holds the chain of properties that are currently being serialized

Definition at line 1005 of file Archive.h.


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