LeviLamina
Loading...
Searching...
No Matches
ContentManagerFactoryImpl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/screens/models/ContentFlags.h"
7#include "mc/client/gui/screens/models/ContentManagerFactoryArgs.h"
8#include "mc/client/gui/screens/models/ContentType.h"
9#include "mc/client/gui/screens/models/IContentManagerFactory.h"
10#include "mc/client/gui/screens/models/IPackManagerContentQueries.h"
11#include "mc/client/resources/ContentCatalogPackSource.h"
12#include "mc/deps/core/file/PathBuffer.h"
13#include "mc/deps/core/resource/PackOrigin.h"
14#include "mc/deps/core/resource/PackType.h"
15#include "mc/deps/core/utility/NonOwnerPointer.h"
16
17// auto generated forward declare list
18// clang-format off
19class AppPlatform;
22class ContentTierInfo;
24class Pack;
25class PackSource;
26class StoreCatalogRepository;
27struct ContentSource;
35namespace ContentManagerUtils { class ISourcesAsyncReloader; }
36namespace Core { class Path; }
37namespace Realms { class RealmsServicePackSource; }
38namespace Realms { struct Content; }
39namespace Realms { struct RealmId; }
40namespace mce { class UUID; }
41// clang-format on
42
44public:
45 // ContentManagerFactoryImpl inner types declare
46 // clang-format off
48 // clang-format on
49
50 // ContentManagerFactoryImpl inner types define
51 class PackManagerContentQueriesImpl : public ::IPackManagerContentQueries {
52 public:
53 // member variables
54 // NOLINTBEGIN
55 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::StoreCatalogRepository>> mStoreCatalog;
56 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IContentTierManager const>> mContentTierManager;
57 // NOLINTEND
58
59 public:
60 // prevent constructor by default
61 PackManagerContentQueriesImpl();
62
63 public:
64 // virtual functions
65 // NOLINTBEGIN
66 virtual ::ContentTierInfo getContentTierInfo() const /*override*/;
67
68 virtual ::std::string const*
69 getStoreCatalogItemAvailableDateByPackIdentityAndType(::mce::UUID const& uuid) const /*override*/;
70
71 virtual ~PackManagerContentQueriesImpl() /*override*/;
72 // NOLINTEND
73
74 public:
75 // member functions
76 // NOLINTBEGIN
77 MCAPI PackManagerContentQueriesImpl(
78 ::Bedrock::NonOwnerPointer<::StoreCatalogRepository> storeCatalog,
79 ::Bedrock::NotNullNonOwnerPtr<::IContentTierManager const> contentTierManager
80 );
81 // NOLINTEND
82
83 public:
84 // constructor thunks
85 // NOLINTBEGIN
86 MCAPI void* $ctor(
87 ::Bedrock::NonOwnerPointer<::StoreCatalogRepository> storeCatalog,
88 ::Bedrock::NotNullNonOwnerPtr<::IContentTierManager const> contentTierManager
89 );
90 // NOLINTEND
91
92 public:
93 // destructor thunk
94 // NOLINTBEGIN
95 MCAPI void $dtor();
96 // NOLINTEND
97
98 public:
99 // virtual function thunks
100 // NOLINTBEGIN
101 MCAPI ::ContentTierInfo $getContentTierInfo() const;
102
103 MCAPI ::std::string const*
104 $getStoreCatalogItemAvailableDateByPackIdentityAndType(::mce::UUID const& uuid) const;
105 // NOLINTEND
106
107 public:
108 // vftables
109 // NOLINTBEGIN
110 MCNAPI static void** $vftable();
111 // NOLINTEND
112 };
113
114public:
115 // member variables
116 // NOLINTBEGIN
117 ::ll::TypedStorage<8, 184, ::ContentManagerFactoryArgs> mArgs;
118 // NOLINTEND
119
120public:
121 // virtual functions
122 // NOLINTBEGIN
123 virtual ::std::unique_ptr<::WorldContentSource> createWorldContentSource() const /*override*/;
124
125 virtual ::std::unique_ptr<::WorldTemplateSource> createWorldTemplateSource() const /*override*/;
126
127 virtual ::std::unique_ptr<::InvalidResourceSource>
128 createInvalidResourceSource(::InvalidPacksFilterGroup const& filter) const /*override*/;
129
130 virtual ::std::unique_ptr<::ContentSource> createWorldPackManagerContentSource(
131 ::std::string const& worldID,
132 ::Core::PathBuffer<::std::string> worldPath,
133 ::ContentFlags flags,
134 ::std::vector<::PackManagerContentSourceData>&& data,
135 ::std::weak_ptr<::CachedHostPackIdProvider> provider
136 ) const /*override*/;
137
138 virtual ::std::unique_ptr<::ContentSource> createRealmPackManagerContentSource(
139 int64 realmID,
140 ::ContentFlags flags,
141 ::std::vector<::PackManagerContentSourceData>&& data
142 ) const /*override*/;
143
144 virtual ::std::unique_ptr<::ContentSource> createRealmsWorldPackManagerContentSource(
145 ::Realms::RealmId realmId,
146 ::std::vector<::Realms::Content>&& serviceAppliedContent,
147 ::ContentFlags flags,
148 ::std::vector<::PackManagerContentSourceData>&& data
149 ) const /*override*/;
150
151 virtual ::std::unique_ptr<::ContentSource> createPackManagerContentSource(
152 ::ContentType type,
153 ::ContentFlags flags,
154 ::std::vector<::PackManagerContentSourceData>&& data
155 ) const /*override*/;
156
157 virtual ::std::unique_ptr<::CompositePackSource>
158 createCompositePackSource(::std::vector<::PackSource*> sources) const /*override*/;
159
160 virtual ::PackSource* getInPackagePackSource(::PackType type) const /*override*/;
161
162 virtual ::PackSource* getDirectoryPackSource(::Core::Path const& path, ::PackType type) const /*override*/;
163
164 virtual ::PackSource&
165 createDirectoryPackSource(::Core::Path const& path, ::PackType type, ::PackOrigin origin) const /*override*/;
166
167 virtual ::PackSource&
168 createWorldTemplatePackSource(::mce::UUID const& id, ::PackType type, ::PackOrigin origin) const /*override*/;
169
170 virtual ::ContentCatalogPackSource& createContentCatalogPackSource(
171 ::std::weak_ptr<::ContentManagerUtils::ISourcesAsyncReloader>&& weakSourcesAsyncReloader,
172 bool enabled
173 ) const /*override*/;
174
175 virtual ::PackSource& createWorldHistoryPackSource(::Core::Path const& path, ::PackType type) const /*override*/;
176
177 virtual ::RealmsUnknownPackSources& getRealmsUnknownPackSources() const /*override*/;
178
179 virtual ::std::unique_ptr<::Realms::RealmsServicePackSource> createRealmsServicePackSource(
180 int64 realmId,
181 ::PackType packType,
182 ::std::vector<::gsl::not_null<::std::shared_ptr<::Pack>>>&& servicePackData
183 ) const /*override*/;
184
185 virtual bool allowsResourcePackDevelopment() const /*override*/;
186
187 virtual ::Bedrock::NonOwnerPointer<::AppPlatform> getPlatform() const /*override*/;
188
189 virtual ~ContentManagerFactoryImpl() /*override*/ = default;
190 // NOLINTEND
191
192public:
193 // member functions
194 // NOLINTBEGIN
195 MCAPI ::PackManagerContentSourceArgs createPackManagerArgs(
196 ::ContentType type,
197 ::ContentFlags flags,
198 ::std::vector<::PackManagerContentSourceData>&& data
199 ) const;
200 // NOLINTEND
201
202public:
203 // virtual function thunks
204 // NOLINTBEGIN
205 MCAPI ::std::unique_ptr<::WorldContentSource> $createWorldContentSource() const;
206
207 MCAPI ::std::unique_ptr<::WorldTemplateSource> $createWorldTemplateSource() const;
208
209 MCAPI ::std::unique_ptr<::InvalidResourceSource>
210 $createInvalidResourceSource(::InvalidPacksFilterGroup const& filter) const;
211
212 MCAPI ::std::unique_ptr<::ContentSource> $createWorldPackManagerContentSource(
213 ::std::string const& worldID,
214 ::Core::PathBuffer<::std::string> worldPath,
215 ::ContentFlags flags,
216 ::std::vector<::PackManagerContentSourceData>&& data,
217 ::std::weak_ptr<::CachedHostPackIdProvider> provider
218 ) const;
219
220 MCAPI ::std::unique_ptr<::ContentSource> $createRealmPackManagerContentSource(
221 int64 realmID,
222 ::ContentFlags flags,
223 ::std::vector<::PackManagerContentSourceData>&& data
224 ) const;
225
226 MCAPI ::std::unique_ptr<::ContentSource> $createRealmsWorldPackManagerContentSource(
227 ::Realms::RealmId realmId,
228 ::std::vector<::Realms::Content>&& serviceAppliedContent,
229 ::ContentFlags flags,
230 ::std::vector<::PackManagerContentSourceData>&& data
231 ) const;
232
233 MCAPI ::std::unique_ptr<::ContentSource> $createPackManagerContentSource(
234 ::ContentType type,
235 ::ContentFlags flags,
236 ::std::vector<::PackManagerContentSourceData>&& data
237 ) const;
238
239 MCAPI ::std::unique_ptr<::CompositePackSource>
240 $createCompositePackSource(::std::vector<::PackSource*> sources) const;
241
242 MCAPI ::PackSource* $getInPackagePackSource(::PackType type) const;
243
244 MCAPI ::PackSource* $getDirectoryPackSource(::Core::Path const& path, ::PackType type) const;
245
246 MCAPI ::PackSource&
247 $createDirectoryPackSource(::Core::Path const& path, ::PackType type, ::PackOrigin origin) const;
248
249 MCAPI ::PackSource&
250 $createWorldTemplatePackSource(::mce::UUID const& id, ::PackType type, ::PackOrigin origin) const;
251
252 MCAPI ::ContentCatalogPackSource& $createContentCatalogPackSource(
253 ::std::weak_ptr<::ContentManagerUtils::ISourcesAsyncReloader>&& weakSourcesAsyncReloader,
254 bool enabled
255 ) const;
256
257 MCAPI ::PackSource& $createWorldHistoryPackSource(::Core::Path const& path, ::PackType type) const;
258
259 MCAPI ::RealmsUnknownPackSources& $getRealmsUnknownPackSources() const;
260
261 MCAPI ::std::unique_ptr<::Realms::RealmsServicePackSource> $createRealmsServicePackSource(
262 int64 realmId,
263 ::PackType packType,
264 ::std::vector<::gsl::not_null<::std::shared_ptr<::Pack>>>&& servicePackData
265 ) const;
266
267 MCAPI bool $allowsResourcePackDevelopment() const;
268
269 MCAPI ::Bedrock::NonOwnerPointer<::AppPlatform> $getPlatform() const;
270 // NOLINTEND
271
272public:
273 // vftables
274 // NOLINTBEGIN
275 MCNAPI static void** $vftable();
276 // NOLINTEND
277};
Definition AppPlatform.h:91
Definition CachedHostPackIdProvider.h:5
Definition CompositePackSource.h:16
Definition ContentCatalogPackSource.h:5
Definition ContentManagerFactoryImpl.h:13
Definition ContentManagerFactoryImpl.h:5
static MCAPI void ** $vftable()
Definition ISourcesAsyncReloader.h:7
Definition ContentTierInfo.h:5
Definition Path.h:17
Definition IContentManagerFactory.h:5
Definition IContentTierManager.h:13
Definition PackSource.h:28
Definition Pack.h:27
Definition Path.h:16
Definition RealmsServicePackSource.h:18
Definition UUID.h:7
STL namespace.
Definition ContentManagerFactoryArgs.h:5
Definition ContentSource.h:5
Definition InvalidPacksFilterGroup.h:5
Definition InvalidResourceSource.h:5
Definition PackManagerContentSourceArgs.h:5
Definition PackManagerContentSourceData.h:5
Definition RealmsUnknownPackSources.h:5
Definition Content.h:7
Definition RealmId.h:7
Definition WorldContentSource.h:5
Definition WorldTemplateSource.h:5