Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
NameAsStringIndexProxyArchive.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Containers/Array.h"
6#include "Containers/Set.h"
7#include "CoreTypes.h"
8#include "Serialization/ArchiveProxy.h"
9#include "UObject/NameTypes.h"
10
11class FArchive;
12
13/**
14 * Implements a proxy archive that serializes FNames as string data or an index (if the same name is repeated).
15 */
17{
18 /** When FName is first encountered, it is added to the table and saved as a string, otherwise, its index is written. Indices can be looked up from this TSet since it is not compacted. */
20
21 /** Table of names that is populated as the archive is being loaded. */
23
24 /**
25 * Creates and initializes a new instance.
26 *
27 * @param InInnerArchive The inner archive to proxy.
28 */
30 : FArchiveProxy(InInnerArchive)
31 { }
32
33 /**
34 * Serialize the given FName as an FString or an index (if we encountered it again)
35 */
36 virtual FArchive& operator<<(FName& N);
37};
FArchiveProxy(FArchive &InInnerArchive)
FNameAsStringIndexProxyArchive(FArchive &InInnerArchive)