UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FArchiveProxy Class Reference

#include <ArchiveProxy.h>

+ Inheritance diagram for FArchiveProxy:

Public Member Functions

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

Protected Attributes

FArchiveInnerArchive
 

Additional Inherited Members

- Public Attributes inherited from FArchive
FFastPathLoadBufferActiveFPLB
 
FFastPathLoadBuffer InlineFPLB
 
uint8 ArContainsCode: 1
 
uint8 ArContainsMap: 1
 
UE_DEPRECATED(5.6, "Public access to ArRequiresLocalizationGather has been deprecated - please use Ar.RequiresLocalizationGather() and Ar.ThisRequiresLocalizationGather() for getting and setting respectively.") uint8 ArRequiresLocalizationGather 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 ArIsSavingOptionalObject: 1
 
uint8 ArIsSaveGame: 1
 
uint8 ArIsNetArchive: 1
 
uint8 ArUseCustomPropertyList: 1
 
int32 ArSerializingDefaults
 
uint32 ArPortFlags
 
int64 ArMaxSerializeSize
 
uint8 ArMergeOverrides: 1
 
uint8 ArPreserveArrayElements: 1
 
const struct FCustomPropertyListNodeArCustomPropertyList
 
- Protected Member Functions inherited from FArchive
void SetShouldSkipCompilingAssets (bool Enabled)
 
- Static Protected Member Functions inherited from FArchive
static CORE_API void LinkProxy (FArchiveState &Inner, FArchiveState &Proxy)
 
static CORE_API void UnlinkProxy (FArchiveState &Inner, FArchiveState &Proxy)
 

Detailed Description

Base class for archive proxies.

Archive proxies are archive types that modify the behavior of another archive type.

Constructor & Destructor Documentation

◆ FArchiveProxy() [1/3]

FArchiveProxy::FArchiveProxy ( FArchive InInnerArchive)

Creates and initializes a new instance of the archive proxy.

Parameters
InInnerArchiveThe inner archive to proxy.

◆ ~FArchiveProxy()

FArchiveProxy::~FArchiveProxy ( )

◆ FArchiveProxy() [2/3]

FArchiveProxy::FArchiveProxy ( FArchiveProxy &&  )
delete

◆ FArchiveProxy() [3/3]

FArchiveProxy::FArchiveProxy ( const FArchiveProxy )
delete

Member Function Documentation

◆ AtEnd()

virtual bool FArchiveProxy::AtEnd ( )
inlineoverridevirtual

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 FArchive.

◆ AttachBulkData()

virtual void FArchiveProxy::AttachBulkData ( UObject Owner,
FBulkData BulkData 
)
inlineoverridevirtual

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

Parameters
OwnerUObject owning the bulk data
BulkDataBulk data object to associate

Reimplemented from FArchive.

◆ AttachExternalReadDependency()

virtual bool FArchiveProxy::AttachExternalReadDependency ( FExternalReadCallback ReadCallback)
inlineoverridevirtual

Adds external read dependency

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

Reimplemented from FArchive.

◆ Close()

virtual bool FArchiveProxy::Close ( )
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ CountBytes()

virtual void FArchiveProxy::CountBytes ( SIZE_T  InNum,
SIZE_T  InMax 
)
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ DetachBulkData()

virtual void FArchiveProxy::DetachBulkData ( FBulkData BulkData,
bool  bEnsureBulkDataIsLoaded 
)
inlineoverridevirtual

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 from FArchive.

◆ Flush()

virtual void FArchiveProxy::Flush ( )
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ FlushCache()

virtual void FArchiveProxy::FlushCache ( )
inlineoverridevirtual

Flushes cache and frees internal data.

Reimplemented from FArchive.

◆ ForceBlueprintFinalization()

virtual void FArchiveProxy::ForceBlueprintFinalization ( )
inlineoverridevirtual

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 from FArchive.

◆ GetArchetypeFromLoader()

virtual UObject * FArchiveProxy::GetArchetypeFromLoader ( const UObject Obj)
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ GetArchiveName()

FString FArchiveProxy::GetArchiveName ( ) const
overridevirtual

Returns the name of the Archive. Useful for getting the name of the package a struct or object is in when a loading error occurs.

This is overridden for the specific Archive Types

Reimplemented from FArchive.

Reimplemented in FMaterialResourceProxyReader.

◆ GetCacheableArchive()

virtual FArchive * FArchiveProxy::GetCacheableArchive ( )
inlineoverridevirtual

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 from FArchive.

◆ GetCustomVersions()

virtual const FCustomVersionContainer & FArchiveProxy::GetCustomVersions ( ) const
inlineoverridevirtual

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 FArchive.

◆ GetInnermostState()

virtual ::FArchiveState & FArchiveProxy::GetInnermostState ( )
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ GetLinker()

virtual FLinker * FArchiveProxy::GetLinker ( )
inlineoverridevirtual

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 FArchive.

◆ IsProxyOf()

virtual UE_FORCEINLINE_HINT bool FArchiveProxy::IsProxyOf ( FArchive InOther) const
inlineoverridevirtual

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 from FArchive.

◆ MarkScriptSerializationEnd()

virtual void FArchiveProxy::MarkScriptSerializationEnd ( const UObject Obj)
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ MarkScriptSerializationStart()

virtual void FArchiveProxy::MarkScriptSerializationStart ( const UObject Obj)
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ MarkSearchableName()

virtual void FArchiveProxy::MarkSearchableName ( const TObjectPtr< const UObject > &  TypeObject,
const FName ValueName 
) const
inlineoverridevirtual

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 from FArchive.

◆ operator<<() [1/9]

virtual FArchive & FArchiveProxy::operator<< ( FField *&  Value)
inlineoverridevirtual

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 from FArchive.

Reimplemented in FPropertyProxyArchive.

◆ operator<<() [2/9]

virtual FArchive & FArchiveProxy::operator<< ( FLazyObjectPtr Value)
inlineoverridevirtual

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 from FArchive.

◆ operator<<() [3/9]

virtual FArchive & FArchiveProxy::operator<< ( FName Value)
inlineoverridevirtual

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 from FArchive.

Reimplemented in FNameAsStringProxyArchive, FMaterialResourceProxyReader, FNameAsStringIndexProxyArchive, UE::AssetRegistry::FNameMapAwareArchive, and FAssetRegistryReader.

◆ operator<<() [4/9]

virtual FArchive & FArchiveProxy::operator<< ( FObjectPtr Value)
inlineoverridevirtual

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 from FArchive.

Reimplemented in FObjectAndNameAsStringProxyArchive, and FObjectAsTraceIdProxyArchive.

◆ operator<<() [5/9]

virtual FArchive & FArchiveProxy::operator<< ( FSoftObjectPath Value)
inlineoverridevirtual

Serializes soft object paths from or into this archive.

Parameters
ValueSoft object path to serialize.
Returns
This instance.

Reimplemented from FArchive.

Reimplemented in FObjectAndNameAsStringProxyArchive, and FObjectAsTraceIdProxyArchive.

◆ operator<<() [6/9]

virtual FArchive & FArchiveProxy::operator<< ( FSoftObjectPtr Value)
inlineoverridevirtual

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 from FArchive.

Reimplemented in FObjectAndNameAsStringProxyArchive, and FObjectAsTraceIdProxyArchive.

◆ operator<<() [7/9]

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

Serializes an FText value from or into an archive.

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

Reimplemented from FArchive.

Reimplemented in UE::AssetDataGather::Private::FChecksumArchiveBase.

◆ operator<<() [8/9]

virtual FArchive & FArchiveProxy::operator<< ( FWeakObjectPtr Value)
inlineoverridevirtual

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 from FArchive.

Reimplemented in FObjectAndNameAsStringProxyArchive, and FObjectAsTraceIdProxyArchive.

◆ operator<<() [9/9]

virtual FArchive & FArchiveProxy::operator<< ( UObject *&  Value)
inlineoverridevirtual

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 from FArchive.

Reimplemented in FObjectAndNameAsStringProxyArchive, and FObjectAsTraceIdProxyArchive.

◆ operator=() [1/2]

FArchiveProxy & FArchiveProxy::operator= ( const FArchiveProxy )
delete

◆ operator=() [2/2]

FArchiveProxy & FArchiveProxy::operator= ( FArchiveProxy &&  )
delete

◆ PopSerializedProperty()

virtual void FArchiveProxy::PopSerializedProperty ( class FProperty InProperty,
const bool  bIsEditorOnlyProperty 
)
inlineoverridevirtual

Pops editor-only marker from the stack of currently serialized properties

Reimplemented from FArchive.

◆ Precache()

virtual bool FArchiveProxy::Precache ( int64  PrecacheOffset,
int64  PrecacheSize 
)
inlineoverridevirtual

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 from FArchive.

◆ Preload()

virtual void FArchiveProxy::Preload ( UObject Object)
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ PushSerializedProperty()

virtual void FArchiveProxy::PushSerializedProperty ( class FProperty InProperty,
const bool  bIsEditorOnlyProperty 
)
inlineoverridevirtual

Pushes editor-only marker to the stack of currently serialized properties

Reimplemented from FArchive.

◆ ResetCustomVersions()

virtual void FArchiveProxy::ResetCustomVersions ( )
inlineoverridevirtual

Resets the custom version numbers for this archive.

Reimplemented from FArchive.

◆ Seek()

virtual void FArchiveProxy::Seek ( int64  InPos)
inlineoverridevirtual

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

Reimplemented from FArchive.

Reimplemented in FMaterialResourceProxyReader, and FLinkerExportArchive.

◆ Serialize()

virtual void FArchiveProxy::Serialize ( void V,
int64  Length 
)
inlineoverridevirtual

◆ SerializeBits()

virtual void FArchiveProxy::SerializeBits ( void Bits,
int64  LengthBits 
)
inlineoverridevirtual

Reimplemented from FArchive.

Reimplemented in UE::AssetDataGather::Private::FChecksumArchiveBase.

◆ SerializeBulkData()

virtual bool FArchiveProxy::SerializeBulkData ( FBulkData BulkData,
const FBulkDataSerializationParams Params 
)
inlineoverridevirtual

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 from FArchive.

◆ SerializeInt()

virtual void FArchiveProxy::SerializeInt ( uint32 Value,
uint32  Max 
)
inlineoverridevirtual

Reimplemented from FArchive.

Reimplemented in UE::AssetDataGather::Private::FChecksumArchiveBase.

◆ SerializeIntPacked()

virtual void FArchiveProxy::SerializeIntPacked ( uint32 Value)
inlineoverridevirtual

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

Reimplemented from FArchive.

Reimplemented in UE::AssetDataGather::Private::FChecksumArchiveBase.

◆ SetCompressionMap()

virtual bool FArchiveProxy::SetCompressionMap ( TArray< FCompressedChunk > *  CompressedChunks,
ECompressionFlags  CompressionFlags 
)
inlineoverridevirtual

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 from FArchive.

◆ SetCustomVersions()

virtual void FArchiveProxy::SetCustomVersions ( const FCustomVersionContainer CustomVersionContainer)
inlineoverridevirtual

Sets the custom version numbers for this archive.

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

Reimplemented from FArchive.

◆ SetDebugSerializationFlags()

virtual void FArchiveProxy::SetDebugSerializationFlags ( uint32  InCustomFlags)
inlineoverridevirtual

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

Parameters
InCustomFlagsthe new flags to use for custom serialization

Reimplemented from FArchive.

◆ SetFilterEditorOnly()

virtual void FArchiveProxy::SetFilterEditorOnly ( bool  InFilterEditorOnly)
inlineoverridevirtual

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

Parameters
InFilterEditorOnlyWhether to filter editor-only content.

Reimplemented from FArchive.

◆ SetSerializedProperty()

void FArchiveProxy::SetSerializedProperty ( FProperty InProperty)
inlineoverridevirtual

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 FArchive.

◆ SetSerializedPropertyChain()

void FArchiveProxy::SetSerializedPropertyChain ( const FArchiveSerializedPropertyChain InSerializedPropertyChain,
class FProperty InSerializedPropertyOverride = nullptr 
)
inlineoverridevirtual

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 FArchive.

◆ ShouldSkipProperty()

virtual bool FArchiveProxy::ShouldSkipProperty ( const FProperty InProperty) const
inlineoverridevirtual

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

Reimplemented from FArchive.

◆ Tell()

virtual int64 FArchiveProxy::Tell ( )
inlineoverridevirtual

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 FArchive.

Reimplemented in UE::AssetDataGather::Private::FChecksumArchiveWriter, UE::AssetDataGather::Private::FChecksumArchiveReader, FLinkerExportArchive, and FMaterialResourceProxyReader.

◆ TotalSize()

virtual int64 FArchiveProxy::TotalSize ( )
inlineoverridevirtual

Returns total size of the backing data storage.

Reimplemented from FArchive.

◆ UseToResolveEnumerators()

virtual bool FArchiveProxy::UseToResolveEnumerators ( ) const
inlineoverridevirtual

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 FArchive.

Member Data Documentation

◆ InnerArchive

FArchive& FArchiveProxy::InnerArchive
protected

Holds the archive that this archive is a proxy to.


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