UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MemoryArchive.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreTypes.h"
9#include "UObject/NameTypes.h"
10
15{
16public:
23 virtual FString GetArchiveName() const { return TEXT("FMemoryArchive"); }
24
25 void Seek( int64 InPos ) final
26 {
27 Offset = InPos;
28 }
29 int64 Tell() final
30 {
31 return Offset;
32 }
33
34 using FArchive::operator<<; // For visibility of the overloads we don't override
35
36 virtual FArchive& operator<<( class FName& N ) override
37 {
38 // Serialize the FName as a string
39 if (IsLoading())
40 {
41 FString StringName;
42 *this << StringName;
43 N = FName(*StringName);
44 }
45 else
46 {
47 FString StringName = N.ToString();
48 *this << StringName;
49 }
50 return *this;
51 }
52
53 virtual FArchive& operator<<( class UObject*& Res ) override
54 {
55 // Not supported through this archive
56 check(0);
57 return *this;
58 }
59
60protected:
61
64 : FArchive(), Offset(0)
65 {
66 }
67
69};
70
#define check(expr)
Definition AssertionMacros.h:314
#define TEXT(x)
Definition Platform.h:1272
FPlatformTypes::int64 int64
A 64-bit signed integer.
Definition Platform.h:1127
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition Archive.h:1208
UE_FORCEINLINE_HINT bool IsLoading() const
Definition Archive.h:236
Definition MemoryArchive.h:15
int64 Offset
Definition MemoryArchive.h:68
virtual FArchive & operator<<(class UObject *&Res) override
Definition MemoryArchive.h:53
virtual FString GetArchiveName() const
Definition MemoryArchive.h:23
int64 Tell() final
Definition MemoryArchive.h:29
FMemoryArchive()
Definition MemoryArchive.h:63
void Seek(int64 InPos) final
Definition MemoryArchive.h:25
virtual FArchive & operator<<(class FName &N) override
Definition MemoryArchive.h:36
Definition NameTypes.h:617
CORE_API FString ToString() const
Definition UnrealNames.cpp:3537
Definition Object.h:95