LeviLamina
Loading...
Searching...
No Matches
DirectoryPackWithEncryptionAccessStrategy.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/resources/PackAccessAssetGenerationResult.h"
8#include "mc/resources/PackAccessStrategy.h"
9#include "mc/resources/PackAccessStrategyType.h"
10
11// auto generated forward declare list
12// clang-format off
13class ContentIdentity;
15class IFileAccess;
17namespace Core { class Path; }
18// clang-format on
19
21public:
22 // member variables
23 // NOLINTBEGIN
32 // NOLINTEND
33
34public:
35 // prevent constructor by default
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 // vIndex: 0
44 virtual ~DirectoryPackWithEncryptionAccessStrategy() /*override*/;
45
46 // vIndex: 1
47 virtual uint64 getPackSize() const /*override*/;
48
49 // vIndex: 2
50 virtual ::ResourceLocation const& getPackLocation() const /*override*/;
51
52 // vIndex: 3
53 virtual ::std::string const& getPackName() const /*override*/;
54
55 // vIndex: 4
56 virtual bool isWritable() const /*override*/;
57
58 // vIndex: 6
59 virtual bool isTrusted() const /*override*/;
60
61 // vIndex: 5
62 virtual void setIsTrusted(bool) /*override*/;
63
64 // vIndex: 7
65 virtual bool hasAsset(::Core::Path const& packRelativePath, bool trustedContentOnly, bool caseSensative) const
66 /*override*/;
67
68 // vIndex: 8
69 virtual bool hasFolder(::Core::Path const& packRelativePath) const /*override*/;
70
71 // vIndex: 9
72 virtual bool getAsset(::Core::Path const& packRelativePath, ::std::string& result, bool trustedContentOnly) const
73 /*override*/;
74
75 // vIndex: 10
76 virtual bool deleteAsset(::Core::Path const& packRelativePath) /*override*/;
77
78 // vIndex: 11
79 virtual bool writeAsset(::Core::Path const& packRelativePath, ::std::string const& fileContent) /*override*/;
80
81 // vIndex: 12
82 virtual void forEachIn(
83 ::Core::Path const& packRelativePath,
84 ::std::function<void(::Core::Path const&)> callback,
85 bool recurseAnyways
86 ) const /*override*/;
87
88 // vIndex: 14
89 virtual ::PackAccessStrategyType getStrategyType() const /*override*/;
90
91 // vIndex: 17
92 virtual ::std::unique_ptr<::PackAccessStrategy> createSubPack(::Core::Path const& subPath) const /*override*/;
93
94 // vIndex: 18
95 virtual ::PackAccessAssetGenerationResult generateAssetSet() /*override*/;
96
97 // vIndex: 21
98 virtual void unload() /*override*/;
99
100 // vIndex: 22
101 virtual bool hasUpgradeFiles() const /*override*/;
102
103 // vIndex: 23
104 virtual ::ContentIdentity readContentIdentity() const /*override*/;
105 // NOLINTEND
106
107public:
108 // member functions
109 // NOLINTBEGIN
111 ::ResourceLocation const& packLocation,
112 ::ResourceLocation const& encryptedContentLocation,
113 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider,
114 ::IFileAccess& fileAccess
115 );
116
117 MCAPI bool _getUnencryptedAsset(::Core::Path const& packRelativePath, ::std::string& result) const;
118
119 MCAPI bool _hasUnencryptedAsset(::Core::Path const& packRelativePath) const;
120 // NOLINTEND
121
122public:
123 // constructor thunks
124 // NOLINTBEGIN
125 MCAPI void* $ctor(
126 ::ResourceLocation const& packLocation,
127 ::ResourceLocation const& encryptedContentLocation,
128 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider,
129 ::IFileAccess& fileAccess
130 );
131 // NOLINTEND
132
133public:
134 // destructor thunk
135 // NOLINTBEGIN
136 MCAPI void $dtor();
137 // NOLINTEND
138
139public:
140 // virtual function thunks
141 // NOLINTBEGIN
142 MCAPI uint64 $getPackSize() const;
143
144 MCFOLD ::ResourceLocation const& $getPackLocation() const;
145
146 MCFOLD ::std::string const& $getPackName() const;
147
148 MCFOLD bool $isWritable() const;
149
150 MCFOLD bool $isTrusted() const;
151
152 MCFOLD void $setIsTrusted(bool);
153
154 MCAPI bool $hasAsset(::Core::Path const& packRelativePath, bool trustedContentOnly, bool caseSensative) const;
155
156 MCFOLD bool $hasFolder(::Core::Path const& packRelativePath) const;
157
158 MCAPI bool $getAsset(::Core::Path const& packRelativePath, ::std::string& result, bool trustedContentOnly) const;
159
160 MCAPI bool $deleteAsset(::Core::Path const& packRelativePath);
161
162 MCAPI bool $writeAsset(::Core::Path const& packRelativePath, ::std::string const& fileContent);
163
164 MCAPI void $forEachIn(
165 ::Core::Path const& packRelativePath,
166 ::std::function<void(::Core::Path const&)> callback,
167 bool recurseAnyways
168 ) const;
169
170 MCFOLD ::PackAccessStrategyType $getStrategyType() const;
171
172 MCAPI ::std::unique_ptr<::PackAccessStrategy> $createSubPack(::Core::Path const& subPath) const;
173
174 MCAPI ::PackAccessAssetGenerationResult $generateAssetSet();
175
176 MCAPI void $unload();
177
178 MCAPI bool $hasUpgradeFiles() const;
179
180 MCAPI ::ContentIdentity $readContentIdentity() const;
181 // NOLINTEND
182
183public:
184 // vftables
185 // NOLINTBEGIN
186 MCAPI static void** $vftable();
187 // NOLINTEND
188};
Definition ContentIdentity.h:10
Definition Path.h:15
Definition DirectoryPackWithEncryptionAccessStrategy.h:20
Definition IContentKeyProvider.h:13
Definition IFileAccess.h:15
Definition PackAccessStrategy.h:20
Definition Path.h:16
Definition ResourceLocation.h:15
Definition Alias.h:14