UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IoContainerId.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "HAL/Platform.h"
7#include "UObject/NameTypes.h"
8
9class FArchive;
11class FCbFieldView;
12class FCbWriter;
13
18{
19public:
20 inline FIoContainerId() = default;
21 inline FIoContainerId(const FIoContainerId& Other) = default;
22 inline FIoContainerId(FIoContainerId&& Other) = default;
23 inline FIoContainerId& operator=(const FIoContainerId& Other) = default;
24
26
27 uint64 Value() const
28 {
29 return Id;
30 }
31
32 inline bool IsValid() const
33 {
34 return Id != InvalidId;
35 }
36
37 inline bool operator<(FIoContainerId Other) const
38 {
39 return Id < Other.Id;
40 }
41
42 inline bool operator==(FIoContainerId Other) const
43 {
44 return Id == Other.Id;
45 }
46
47 inline bool operator!=(FIoContainerId Other) const
48 {
49 return Id != Other.Id;
50 }
51
52 inline friend uint32 GetTypeHash(const FIoContainerId& In)
53 {
54 return uint32(In.Id);
55 }
56
57 CORE_API friend FArchive& operator<<(FArchive& Ar, FIoContainerId& ContainerId);
58
59 CORE_API friend void operator<<(FStructuredArchiveSlot Slot, FIoContainerId& ContainerId);
60
61 CORE_API friend FCbWriter& operator<<(FCbWriter& Writer, const FIoContainerId& ContainerId);
62
63 CORE_API friend FString LexToString(const FIoContainerId& ContainerId);
64
66
67private:
68 inline explicit FIoContainerId(const uint64 InId)
69 : Id(InId) { }
70
71 static constexpr uint64 InvalidId = uint64(-1);
72
73 uint64 Id = InvalidId;
74};
FPlatformTypes::uint64 uint64
A 64-bit unsigned integer.
Definition Platform.h:1117
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Archive.h:1208
Definition CompactBinary.h:610
Definition CompactBinaryWriter.h:68
Definition IoContainerId.h:18
bool IsValid() const
Definition IoContainerId.h:32
bool operator<(FIoContainerId Other) const
Definition IoContainerId.h:37
static CORE_API FIoContainerId FromName(const FName &Name)
Definition IoContainerId.cpp:13
CORE_API friend FArchive & operator<<(FArchive &Ar, FIoContainerId &ContainerId)
Definition IoContainerId.cpp:26
FIoContainerId(const FIoContainerId &Other)=default
uint64 Value() const
Definition IoContainerId.h:27
bool operator==(FIoContainerId Other) const
Definition IoContainerId.h:42
CORE_API friend bool LoadFromCompactBinary(FCbFieldView Field, FIoContainerId &OutContainerId)
Definition IoContainerId.cpp:49
bool operator!=(FIoContainerId Other) const
Definition IoContainerId.h:47
FIoContainerId & operator=(const FIoContainerId &Other)=default
FIoContainerId()=default
FIoContainerId(FIoContainerId &&Other)=default
CORE_API friend FString LexToString(const FIoContainerId &ContainerId)
Definition IoContainerId.cpp:44
friend uint32 GetTypeHash(const FIoContainerId &In)
Definition IoContainerId.h:52
Definition NameTypes.h:617
Definition StructuredArchiveSlots.h:52
Definition FieldSystemNoiseAlgo.cpp:6
const FId InvalidId
Definition TaskTrace.h:39