UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ContentEncryptionConfig.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
4#include "Containers/Map.h"
5#include "CoreTypes.h"
6#include "Misc/Guid.h"
7#include "UObject/NameTypes.h"
8
11{
12public:
13
15 {
16 None,
17 Soft,
18 All,
19 };
20
21 enum class EGroupType
22 {
23 Root,
25 };
26
39
41
43 {
44 PackageGroups.FindOrAdd(InGroupName).PackageNames.Add(InPackageName);
45 }
46
48 {
49 PackageGroups.FindOrAdd(InGroupName).NonAssetFiles.Add(InFilename);
50 }
51
53 {
54 PackageGroups.FindOrAdd(InGroupName).MountPoints.Add(InMountPoint);
55 }
56
58 {
59 PackageGroups.FindOrAdd(InGroupName).GroupType = InGroupType;
60 }
61
63 {
64 PackageGroups.FindOrAdd(InGroupName).AllowedReferences = InAllowedReferences;
65 }
66
68 {
69 PackageGroups.FindOrAdd(InGroupName).DesiredChunkId = InChunkId;
70 }
71
73 {
74 ReleasedKeys.Add(InKey);
75 }
76
78 {
79 return PackageGroups;
80 }
81
82
84 {
85 return ReleasedKeys;
86 }
87
89 {
90 for (FName GroupName : InGroupsToDissolve)
91 {
92 if (PackageGroups.Contains(GroupName))
93 {
94 PackageGroups.FindOrAdd(NAME_None).PackageNames.Append(PackageGroups.Find(GroupName)->PackageNames);
95 PackageGroups.Remove(GroupName);
96 }
97 }
98 }
99
100private:
101
102 TGroupMap PackageGroups;
103 TSet<FGuid> ReleasedKeys;
104};
@ INDEX_NONE
Definition CoreMiscDefines.h:150
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition ContentEncryptionConfig.h:11
EGroupType
Definition ContentEncryptionConfig.h:22
void AddMountPoint(FName InGroupName, FName InMountPoint)
Definition ContentEncryptionConfig.h:52
EAllowedReferences
Definition ContentEncryptionConfig.h:15
void SetGroupType(FName InGroupName, EGroupType InGroupType)
Definition ContentEncryptionConfig.h:57
TMap< FName, FGroup > TGroupMap
Definition ContentEncryptionConfig.h:40
void DissolveGroups(const TSet< FName > &InGroupsToDissolve)
Definition ContentEncryptionConfig.h:88
void AddNonAssetFile(FName InGroupName, const FString &InFilename)
Definition ContentEncryptionConfig.h:47
const TSet< FGuid > & GetReleasedKeys() const
Definition ContentEncryptionConfig.h:83
void AddPackage(FName InGroupName, FName InPackageName)
Definition ContentEncryptionConfig.h:42
void AddReleasedKey(FGuid InKey)
Definition ContentEncryptionConfig.h:72
const TGroupMap & GetPackageGroupMap() const
Definition ContentEncryptionConfig.h:77
void SetAllowedReferences(FName InGroupName, EAllowedReferences InAllowedReferences)
Definition ContentEncryptionConfig.h:62
void SetDesiredChunkId(FName InGroupName, int32 InChunkId)
Definition ContentEncryptionConfig.h:67
Definition NameTypes.h:617
Definition UnrealString.h.inl:34
Definition ContentEncryptionConfig.h:28
EGroupType GroupType
Definition ContentEncryptionConfig.h:35
TSet< FName > PackageNames
Definition ContentEncryptionConfig.h:29
EAllowedReferences AllowedReferences
Definition ContentEncryptionConfig.h:36
int32 DesiredChunkId
Definition ContentEncryptionConfig.h:37
TSet< FString > NonAssetFiles
Definition ContentEncryptionConfig.h:30
TSet< FName > MountPoints
Definition ContentEncryptionConfig.h:33
Definition Guid.h:109