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 // virtual functions
61 // NOLINTBEGIN
62 virtual ::ContentTierInfo getContentTierInfo() const /*override*/;
63
64 virtual ::std::string const*
65 getStoreCatalogItemAvailableDateByPackIdentityAndType(::mce::UUID const& uuid) const /*override*/;
66 // NOLINTEND
67
68 public:
69 // virtual function thunks
70 // NOLINTBEGIN
71 MCAPI ::ContentTierInfo $getContentTierInfo() const;
72
73 MCAPI ::std::string const*
74 $getStoreCatalogItemAvailableDateByPackIdentityAndType(::mce::UUID const& uuid) const;
75 // NOLINTEND
76 };
77
78public:
79 // member variables
80 // NOLINTBEGIN
81 ::ll::TypedStorage<8, 184, ::ContentManagerFactoryArgs> mArgs;
82 // NOLINTEND
83
84public:
85 // virtual functions
86 // NOLINTBEGIN
87 virtual ::std::unique_ptr<::WorldContentSource> createWorldContentSource() const /*override*/;
88
89 virtual ::std::unique_ptr<::WorldTemplateSource> createWorldTemplateSource() const /*override*/;
90
91 virtual ::std::unique_ptr<::InvalidResourceSource>
92 createInvalidResourceSource(::InvalidPacksFilterGroup const& filter) const /*override*/;
93
94 virtual ::std::unique_ptr<::ContentSource> createWorldPackManagerContentSource(
95 ::std::string const& worldID,
96 ::Core::PathBuffer<::std::string> worldPath,
97 ::ContentFlags flags,
98 ::std::vector<::PackManagerContentSourceData>&& data,
99 ::std::weak_ptr<::CachedHostPackIdProvider> provider
100 ) const /*override*/;
101
102 virtual ::std::unique_ptr<::ContentSource> createRealmPackManagerContentSource(
103 int64 realmID,
104 ::ContentFlags flags,
105 ::std::vector<::PackManagerContentSourceData>&& data
106 ) const /*override*/;
107
108 virtual ::std::unique_ptr<::ContentSource> createRealmsWorldPackManagerContentSource(
109 ::Realms::RealmId realmId,
110 ::std::vector<::Realms::Content>&& serviceAppliedContent,
111 ::ContentFlags flags,
112 ::std::vector<::PackManagerContentSourceData>&& data
113 ) const /*override*/;
114
115 virtual ::std::unique_ptr<::ContentSource> createPackManagerContentSource(
116 ::ContentType type,
117 ::ContentFlags flags,
118 ::std::vector<::PackManagerContentSourceData>&& data
119 ) const /*override*/;
120
121 virtual ::std::unique_ptr<::CompositePackSource>
122 createCompositePackSource(::std::vector<::PackSource*> sources) const /*override*/;
123
124 virtual ::PackSource* getInPackagePackSource(::PackType type) const /*override*/;
125
126 virtual ::PackSource* getDirectoryPackSource(::Core::Path const& path, ::PackType type) const /*override*/;
127
128 virtual ::PackSource&
129 createDirectoryPackSource(::Core::Path const& path, ::PackType type, ::PackOrigin origin) const /*override*/;
130
131 virtual ::PackSource&
132 createWorldTemplatePackSource(::mce::UUID const& id, ::PackType type, ::PackOrigin origin) const /*override*/;
133
134 virtual ::ContentCatalogPackSource& createContentCatalogPackSource(
135 ::std::weak_ptr<::ContentManagerUtils::ISourcesAsyncReloader>&& weakSourcesAsyncReloader,
136 bool enabled
137 ) const /*override*/;
138
139 virtual ::PackSource& createWorldHistoryPackSource(::Core::Path const& path, ::PackType type) const /*override*/;
140
141 virtual ::RealmsUnknownPackSources& getRealmsUnknownPackSources() const /*override*/;
142
143 virtual ::std::unique_ptr<::Realms::RealmsServicePackSource> createRealmsServicePackSource(
144 int64 realmId,
145 ::PackType packType,
146 ::std::vector<::gsl::not_null<::std::shared_ptr<::Pack>>>&& servicePackData
147 ) const /*override*/;
148
149 virtual bool allowsResourcePackDevelopment() const /*override*/;
150
151 virtual ::Bedrock::NonOwnerPointer<::AppPlatform> getPlatform() const /*override*/;
152 // NOLINTEND
153
154public:
155 // member functions
156 // NOLINTBEGIN
157 MCAPI ::PackManagerContentSourceArgs createPackManagerArgs(
158 ::ContentType type,
159 ::ContentFlags flags,
160 ::std::vector<::PackManagerContentSourceData>&& data
161 ) const;
162 // NOLINTEND
163
164public:
165 // virtual function thunks
166 // NOLINTBEGIN
167 MCAPI ::std::unique_ptr<::WorldContentSource> $createWorldContentSource() const;
168
169 MCAPI ::std::unique_ptr<::WorldTemplateSource> $createWorldTemplateSource() const;
170
171 MCAPI ::std::unique_ptr<::InvalidResourceSource>
172 $createInvalidResourceSource(::InvalidPacksFilterGroup const& filter) const;
173
174 MCAPI ::std::unique_ptr<::ContentSource> $createWorldPackManagerContentSource(
175 ::std::string const& worldID,
176 ::Core::PathBuffer<::std::string> worldPath,
177 ::ContentFlags flags,
178 ::std::vector<::PackManagerContentSourceData>&& data,
179 ::std::weak_ptr<::CachedHostPackIdProvider> provider
180 ) const;
181
182 MCAPI ::std::unique_ptr<::ContentSource> $createRealmPackManagerContentSource(
183 int64 realmID,
184 ::ContentFlags flags,
185 ::std::vector<::PackManagerContentSourceData>&& data
186 ) const;
187
188 MCAPI ::std::unique_ptr<::ContentSource> $createRealmsWorldPackManagerContentSource(
189 ::Realms::RealmId realmId,
190 ::std::vector<::Realms::Content>&& serviceAppliedContent,
191 ::ContentFlags flags,
192 ::std::vector<::PackManagerContentSourceData>&& data
193 ) const;
194
195 MCAPI ::std::unique_ptr<::ContentSource> $createPackManagerContentSource(
196 ::ContentType type,
197 ::ContentFlags flags,
198 ::std::vector<::PackManagerContentSourceData>&& data
199 ) const;
200
201 MCAPI ::std::unique_ptr<::CompositePackSource>
202 $createCompositePackSource(::std::vector<::PackSource*> sources) const;
203
204 MCAPI ::PackSource* $getInPackagePackSource(::PackType type) const;
205
206 MCAPI ::PackSource* $getDirectoryPackSource(::Core::Path const& path, ::PackType type) const;
207
208 MCAPI ::PackSource&
209 $createDirectoryPackSource(::Core::Path const& path, ::PackType type, ::PackOrigin origin) const;
210
211 MCAPI ::PackSource&
212 $createWorldTemplatePackSource(::mce::UUID const& id, ::PackType type, ::PackOrigin origin) const;
213
214 MCAPI ::ContentCatalogPackSource& $createContentCatalogPackSource(
215 ::std::weak_ptr<::ContentManagerUtils::ISourcesAsyncReloader>&& weakSourcesAsyncReloader,
216 bool enabled
217 ) const;
218
219 MCAPI ::PackSource& $createWorldHistoryPackSource(::Core::Path const& path, ::PackType type) const;
220
221 MCAPI ::RealmsUnknownPackSources& $getRealmsUnknownPackSources() const;
222
223 MCAPI ::std::unique_ptr<::Realms::RealmsServicePackSource> $createRealmsServicePackSource(
224 int64 realmId,
225 ::PackType packType,
226 ::std::vector<::gsl::not_null<::std::shared_ptr<::Pack>>>&& servicePackData
227 ) const;
228
229 MCAPI bool $allowsResourcePackDevelopment() const;
230
231 MCAPI ::Bedrock::NonOwnerPointer<::AppPlatform> $getPlatform() const;
232 // NOLINTEND
233};
Definition AppPlatform.h:78
Definition CachedHostPackIdProvider.h:5
Definition CompositePackSource.h:17
Definition ContentManagerFactoryImpl.h:13
Definition ContentManagerFactoryImpl.h:5
Definition ISourcesAsyncReloader.h:7
Definition ContentTierInfo.h:12
Definition Path.h:11
Definition IContentManagerFactory.h:5
Definition IContentTierManager.h:13
Definition PackSource.h:28
Definition Pack.h:28
Definition RealmsServicePackSource.h:18
Definition UUID.h:8
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