FArchiveState

Windows
MacOS
Linux

Inheritance Hierarchy

FArchiveState

FArchive

FArchiveFileReaderGeneric

FMovieSceneArchiveFileReader

FArchiveFileWriterGeneric

FMovieSceneArchiveFileWriter

FArchiveLoadCompressedProxy

FArchiveProxy

FArchiveFromStructuredArchiveImpl

FArchiveUObjectFromStructuredArchiveImpl

FChaosArchive

FMaterialResourceProxyReader

FNameAsStringProxyArchive

FPropertyProxyArchive

FShaderSaveArchive

FArchiveSaveCompressedProxy

FArchiveUObject

FArchiveCountMem

FArchiveFindCulprit

FArchiveGenerateReferenceGraph

FArchiveHasReferences

FArchiveObjectCrc32

FArchiveObjectGraph

FArchiveObjectPropertyMapper

FArchiveReferenceMarker

FArchiveReplaceObjectRefBase

FArchiveReplaceObjectRef

FArchiveReplaceOrClearExternalReferences

FArchiveScriptReferenceCollector

FArchiveShowReferences

FArchiveTopLevelReferenceCollector

FArchiveTraceRoute

FDuplicateDataReader

FDuplicateDataWriter

FFindAssetsArchive

FFindReferencersArchive

FLinkerLoad

FLinkerSave

FReferenceCollectorArchive

FTransaction::FObjectRecord::FReader

FTransaction::FObjectRecord::FWriter

FAsyncWriter

FBitArchive

FBitReader

FNetBitReader

FInBunch

FBitWriter

FBufferReaderBase

FBufferReader

FBufferReaderWithSHA

FBulkDataReader

FBufferWriter

FBulkDataWriter

FHttpStreamFArchive

FLocalFileStreamFArchive

FMemoryArchive

FArrayReader

FLargeMemoryReader

FArchiveStackTraceReader

FLargeMemoryWriter

FArchiveStackTrace

FMemoryReader

FConcertIdentifierReader

FConcertSyncObjectReader

FMemoryReaderView

FMemoryWriter

FBufferArchive

FNetworkFileArchive

FConcertIdentifierWriter

FConcertSyncObjectWriter

FMaterialResourceMemoryWriter

FObjectWriter

FObjectReader

FStaticMemoryReader

FOutputDeviceMemory::FOutputDeviceMemoryProxyArchive

References

Module

Core

Header

/Engine/Source/Runtime/Core/Public/Serialization/Archive.h

Include

#include "Serialization/Archive.h"

Syntax

struct FArchiveState

Variables

Name Description

Public variable

uint8: 1

 

ArAllowLazyLoading

Whether to allow lazy loading.

Public variable

uint8: 1

 

ArContainsCode

Quickly tell if an archive contains script code.

Public variable

uint8: 1

 

ArContainsMap

Used to determine whether FArchive contains a level or world.

Public variable

const FCustomPr...

 

ArCustomPropertyList

Custom property list attribute.

Public variable

uint32

 

ArDebugSerializationFlags

Custom serialization modifier flags can be used for anything

Protected variable

uint32

 

ArEngineNetVer

Holds the engine network protocol version.

Protected variable

FEngineVersionB...

 

ArEngineVer

Holds the engine version.

Public variable

uint8: 1

 

ArForceByteSwapping

Whether we should forcefully swap bytes.

Protected variable

uint8: 1

 

ArForceUnicode

Whether this archive wants to always save strings in unicode format

Protected variable

uint32

 

ArGameNetVer

Holds the game network protocol version.

Public variable

uint8: 1

 

ArIgnoreArchetypeRef

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

Public variable

uint8: 1

 

ArIgnoreClassGeneratedByRef

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

Public variable

uint8: 1

 

ArIgnoreClassRef

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

Public variable

uint8: 1

 

ArIgnoreOuterRef

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

Public variable

uint8: 1

 

ArIsCountingMemory

Whether this archive is counting memory and therefore wants e.g. TMaps to be serialized.

Public variable

uint8: 1

 

ArIsCriticalError

Whether this archive contains critical errors.

Public variable

uint8: 1

 

ArIsError

Whether this archive contains errors.

Public variable

uint8: 1

 

ArIsFilterEditorOnly

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

Protected variable

uint8: 1

 

ArIsLoading

Whether this archive is for loading data.

Public variable

uint8: 1

 

ArIsModifyingWeakAndStrongReferences

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

Public variable

uint8: 1

 

ArIsNetArchive

Whether or not this archive is sending/receiving network data

Public variable

uint8: 1

 

ArIsObjectReferenceCollector

Whether this archive only cares about serializing object references.

Protected variable

uint8: 1

 

ArIsPersistent

Whether this archive saves to persistent storage.

Public variable

uint8: 1

 

ArIsSaveGame

Whether this archive is saving/loading game state

Protected variable

uint8: 1

 

ArIsSaving

Whether this archive is for saving data.

Protected variable

uint8: 1

 

ArIsTextFormat

Whether this archive serializes to a text format.

Protected variable

uint8: 1

 

ArIsTransacting

Whether archive is transacting.

Protected variable

int32

 

ArLicenseeUE4Ver

Holds the archive version for licensees.

Public variable

int64

 

ArMaxSerializeSize

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

Public variable

uint8: 1

 

ArNoDelta

If true, do not perform delta serialization of properties.

Public variable

uint8: 1

 

ArNoIntraPropertyDelta

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

Public variable

uint32

 

ArPortFlags

Modifier flags that be used when serializing UProperties

Public variable

uint8: 1

 

ArRequiresLocalizationGather

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

Public variable

int32

 

ArSerializingDefaults

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

Public variable

uint8: 1

 

ArShouldSkipBulkData

Whether bulk data serialization should be skipped or not.

Protected variable

int32

 

ArUE4Ver

These will be private in FArchive.

Public variable

uint8: 1

 

ArUseCustomPropertyList

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

Protected variable

uint8: 1

 

ArUseUnversionedPropertySerialization

Whether tagged property serialization is replaced by faster unversioned serialization.

Protected variable

uint8: 1

 

ArWantBinaryPropertySerialization

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

Protected variable

bool

 

bCustomVersionsAreReset

Indicates if the custom versions container is in a 'reset' state.

Protected variable

const ITargetPl...

 

CookingTargetPlatform

These will be private in FArchive.

Protected variable

FCustomVersionC...

 

CustomVersionContainer

All the custom versions stored in the archive.

Protected variable

FString *

 

LocalizationNamespacePtr

The localization namespace that this archive should use when serializing text properties.

Protected variable

FProperty *

 

SerializedProperty

Holds the pointer to the property that is currently being serialized

Protected variable

FArchiveSeriali...

 

SerializedPropertyChain

Holds the chain of properties that are currently being serialized

Constructors

No constructors are accessible with public or protected access.

Destructors

No destructors are accessible with public or protected access.

Functions

Name Description

Public function Virtual

bool

 

AtEnd()

Public function Const

bool

 

ContainsCode()

Public function Const

bool

 

ContainsMap()

Public function Const

const ITarge...

 

CookingTarget()

Returns the cooking target platform.

Protected function

void

 

CopyTrivialFArchiveStatusMembers

(
    const FArchiveState& ArchiveStatus...
)

These will be private in FArchive.

Public function Virtual

void

 

CountBytes

(
    SIZE_T InNum,
    SIZE_T InMax
)

Public function Const

int32

 

CustomVer

(
    const FGuid& Key
)

Queries a custom version from the archive.

Public function Const

bool

 

DoDelta()

Public function Const

bool

 

DoIntraPropertyDelta()

Public function Const

uint32

 

EngineNetVer()

Public function Const

FEngineVersi...

 

EngineVer()

Public function Const

bool

 

ForceByteSwapping()

Public function Const

uint32

 

GameNetVer()

Public function Virtual

UObject *...

 

GetArchetypeFromLoader

(
    const UObject* Obj
)

Called to retrieve the archetype from the event driven loader.

Public function Virtual Const

FString

 

GetArchiveName()

Returns the name of the Archive.

Protected function Const

FString

 

GetBaseLocalizationNamespace()

See GetLocalizationNamespace

Public function Virtual Const

const FCusto...

 

GetCustomVersions()

Gets the custom version numbers for this archive.

Public function Const

uint32

 

GetDebugSerializationFlags()

Public function Virtual

bool

 

GetError()

Public function Virtual

FLinker *...

 

GetLinker()

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

Public function Virtual Const

FString

 

GetLocalizationNamespace()

Get the localization namespace that this archive should use when serializing text properties.

Public function Const

int64

 

GetMaxSerializeSize()

Public function Const

uint32

 

GetPortFlags()

Public function Virtual

FUObjectSeri...

 

GetSerializeContext()

Gets the current UObject serialization context for this archive

Public function Const

FProperty &#...

 

GetSerializedProperty()

Gets the property that is currently being serialized

Public function Const

const FArchi...

 

GetSerializedPropertyChain()

Get the raw serialized property chain for this archive

Public function Const

void

 

GetSerializedPropertyChain

(
    TArray< class FProperty* >& O...
)

Gets the chain of properties that are currently being serialized

Public function Const

bool

 

HasAllPortFlags

(
    uint32 Flags
)

Public function Const

bool

 

HasAnyPortFlags

(
    uint32 Flags
)

Public function Const

bool

 

IsAllowingLazyLoading()

Public function

bool

 

IsByteSwapping()

Public function Const

bool

 

IsCooking()

Checks whether the archive is used for cooking.

Public function Const

bool

 

IsCountingMemory()

Public function Const

bool

 

IsCriticalError()

Public function Virtual Const

bool

 

IsEditorOnlyPropertyOnTheStack()

Returns true if the stack of currently serialized properties contains an editor-only property

Public function Const

bool

 

IsError()

Public function Const

bool

 

IsFilterEditorOnly()

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

Public function Const

bool

 

IsForcingUnicode()

Public function Const

bool

 

IsIgnoringArchetypeRef()

Public function Const

bool

 

IsIgnoringClassGeneratedByRef()

Public function Const

bool

 

IsIgnoringClassRef()

Public function Const

bool

 

IsIgnoringOuterRef()

Public function Const

bool

 

IsLoading()

Public function Const

bool

 

IsModifyingWeakAndStrongReferences()

Public function Const

bool

 

IsNetArchive()

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

Public function Const

bool

 

IsObjectReferenceCollector()

Public function Const

bool

 

IsPersistent()

Public function Const

bool

 

IsSaveGame()

Indicates whether this archive is saving or loading game state

Public function Const

bool

 

IsSaving()

Public function Const

bool

 

IsSerializingDefaults()

Public function Const

bool

 

IsTextFormat()

Public function Const

bool

 

IsTransacting()

Public function Const

int32

 

LicenseeUE4Ver()

Public function Const

bool

 

RequiresLocalizationGather()

Public function Virtual

void

 

Reset()

Resets all of the base archive members.

Public function Virtual

void

 

ResetCustomVersions()

Resets the custom version numbers for this archive.

Protected function

void

 

SetBaseLocalizationNamespace

(
    const FString& InLocalizationNames...
)

See SetLocalizationNamespace

Public function

void

 

SetByteSwapping

(
    bool Enabled
)

Toggle byte order swapping.

Public function

void

 

SetCookingTarget

(
    const ITargetPlatform* InCooki...
)

Sets the cooking target platform.

Public function

void

 

SetCustomVersion

(
    const FGuid& Key,
    int32 Version,
    FName FriendlyName
)

Sets a specific custom version

Public function Virtual

void

 

SetCustomVersions

(
    const FCustomVersionContainer& Cus...
)

Sets the custom version numbers for this archive.

Public function

void

 

SetDebugSerializationFlags

(
    uint32 InCustomFlags
)

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

Public function Virtual

void

 

SetEngineNetVer

(
    const uint32 InEngineNetVer
)

Sets the archive engine network version.

Public function Virtual

void

 

SetEngineVer

(
    const FEngineVersionBase& InVer
)

Sets the archive engine version.

Public function

void

 

SetError()

Public function Virtual

void

 

SetFilterEditorOnly

(
    bool InFilterEditorOnly
)

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

Public function Virtual

void

 

SetForceUnicode

(
    bool bInForceUnicode
)

Sets whether this archive wants to force saving as Unicode.

Public function Virtual

void

 

SetGameNetVer

(
    const uint32 InGameNetVer
)

Sets the archive game network version.

Public function Virtual

void

 

SetIsLoading

(
    bool bInIsLoading
)

Sets whether this archive is for loading data.

Public function Virtual

void

 

SetIsPersistent

(
    bool bInIsPersistent
)

Sets whether this archive is to persistent storage.

Public function Virtual

void

 

SetIsSaving

(
    bool bInIsSaving
)

Sets whether this archive is for saving data.

Public function Virtual

void

 

SetIsTextFormat

(
    bool bInIsTextFormat
)

Sets whether this archive is in text format.

Public function Virtual

void

 

SetIsTransacting

(
    bool bInIsTransacting
)

Sets whether this archive is for transacting.

Public function Virtual

void

 

SetLicenseeUE4Ver

(
    int32 InVer
)

Sets the archive licensee version number.

Public function Virtual

void

 

SetLocalizationNamespace

(
    const FString& InLocalizationNames...
)

Set the localization namespace that this archive should use when serializing text properties.

Public function

void

 

SetPortFlags

(
    uint32 InPortFlags
)

Sets the archive's property serialization modifier flags

Public function Virtual

void

 

SetSerializeContext

(
    FUObjectSerializeContext* InLo...
)

Sets the current UObject serialization context for this archive

Public function Virtual

void

 

SetSerializedProperty

(
    FProperty* InProperty
)

Overrides the property that is currently being serialized

Public function Virtual

void

 

SetSerializedPropertyChain

(
    const FArchiveSerializedPropertyCha...,
    FProperty* InSerializedPropert...
)

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)

Public function Virtual

void

 

SetUE4Ver

(
    int32 InVer
)

Sets the archive version number.

Public function Virtual

void

 

SetUseUnversionedPropertySerialization

(
    bool bInUseUnversioned
)

Sets whether tagged property serialization should be replaced by faster unversioned serialization.

Public function Virtual

void

 

SetWantBinaryPropertySerialization

(
    bool bInWantBinaryPropertySerializa...
)

Sets whether this archive wants binary property serialization.

Public function Const

bool

 

ShouldSkipBulkData()

Public function Virtual Const

bool

 

ShouldSkipProperty

(
    const FProperty* InProperty
)

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

Public function Virtual

int64

 

Tell()

Public function

void

 

ThisContainsCode()

Sets a flag indicating that this archive contains code.

Public function

void

 

ThisContainsMap()

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

Public function

void

 

ThisRequiresLocalizationGather()

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

Public function Virtual

int64

 

TotalSize()

Public function Const

int32

 

UE4Ver()

Public function Virtual Const

bool

 

UseToResolveEnumerators()

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

Public function Const

bool

 

UseUnversionedPropertySerialization()

Public function Const

bool

 

WantBinaryPropertySerialization()

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss