LeviLamina
Loading...
Searching...
No Matches
WorldCreationHelper.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/services/download/DlcCheckResult.h"
7#include "mc/client/world/CopyResourcePacksResult.h"
8#include "mc/client/world/world_creation_utils/WorldCreationResult.h"
9#include "mc/deps/core/resource/PackIdVersion.h"
10#include "mc/deps/core/threading/Async.h"
11#include "mc/deps/core/threading/SharedAsync.h"
12#include "mc/deps/core/utility/NonOwnerPointer.h"
13#include "mc/world/level/LevelSettings.h"
14#include "mc/world/level/storage/LevelSummary.h"
15
16// auto generated forward declare list
17// clang-format off
18class IContentManager;
19class IDlcBatcher;
21class ILevelListCache;
27struct IDlcValidation;
28struct IEntitlementManager;
29struct IStoreCatalogRepository;
31struct TrialManager;
32// clang-format on
33
35public:
36 // WorldCreationHelper inner types define
37 enum class WorldCreationMode : int {
38 Local = 0,
39 Realms = 1,
40 };
41
42public:
43 // member variables
44 // NOLINTBEGIN
45 ::ll::TypedStorage<8, 8, ::IContentManager&> mContentManager;
46 ::ll::TypedStorage<8, 8, ::IDlcValidation&> mDlcValidation;
47 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::IDlcBatcher>> mDlcBatcher;
48 ::ll::TypedStorage<8, 8, ::ILevelListCache&> mLevelListCache;
49 ::ll::TypedStorage<8, 8, ::IContentAcquisition&> mContentAcquisition;
50 ::ll::TypedStorage<8, 8, ::IStoreCatalogRepository&> mStoreCatalogRepository;
51 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager>> mEntitlementManager;
52 ::ll::TypedStorage<8, 8, ::IGameServerStartup&> mGameServerStartup;
53 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IResourcePackRepository>> mResourcePackRepository;
54 ::ll::TypedStorage<8, 8, ::ResourcePackManager&> mResourcePackManager;
55 ::ll::TypedStorage<8, 8, ::ResourcePackManager&> mServerResourcePackManager;
56 ::ll::TypedStorage<8, 8, ::TrialManager&> mTrialManager;
57 ::ll::TypedStorage<8, 16, ::std::shared_ptr<bool>> mExistenceTracker;
58 ::ll::TypedStorage<4, 4, ::WorldCreationHelper::WorldCreationMode> mCreationMode;
59 ::ll::TypedStorage<1, 1, bool> mCreatingFromTemplate;
60 ::ll::TypedStorage<8, 1440, ::LevelSettings> mLevelSettings;
61 ::ll::TypedStorage<8, 32, ::std::string> mLevelName;
62 ::ll::TypedStorage<8, 48, ::PackIdVersion> mPackIdVersion;
63 ::ll::TypedStorage<8, 8, ::PackManagerContentSource*> mWorldContentSource;
64 ::ll::TypedStorage<8, 840, ::LevelSummary> mLevelSummary;
65 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ResourcePackCopyProgressHandler>> mProgressHandler;
66 ::ll::TypedStorage<8, 16, ::Bedrock::Threading::Async<void>> mCopyResourcePacksFuture;
67 ::ll::TypedStorage<8, 16, ::Bedrock::Threading::SharedAsync<void>> mStartResult;
68 // NOLINTEND
69
70public:
71 // prevent constructor by default
72 WorldCreationHelper& operator=(WorldCreationHelper const&);
73 WorldCreationHelper(WorldCreationHelper const&);
74 WorldCreationHelper();
75
76public:
77 // member functions
78 // NOLINTBEGIN
79 MCAPI WorldCreationHelper(
80 ::IContentManager& contentManager,
81 ::IDlcValidation& dlcValidation,
82 ::ILevelListCache& levelListCache,
83 ::IContentAcquisition& contentAcquisition,
84 ::IStoreCatalogRepository& storeCatalogRepository,
85 ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager> entitlementManager,
86 ::Bedrock::NotNullNonOwnerPtr<::IResourcePackRepository> const& resourcePackRepository,
87 ::ResourcePackManager& resourcePackManager,
88 ::ResourcePackManager& serverResourcePackManager,
89 ::TrialManager& trialManager,
90 ::IGameServerStartup& gameServerStartup
91 );
92
93 MCAPI ::WorldCreationUtils::WorldCreationResult
94 _createWorldImpl(::LevelDataWrapper& levelData, ::LevelSummary& levelSummary);
95
96 MCAPI ::DlcCheckResult checkDlc();
97
98 MCAPI ::CopyResourcePacksResult startCopyingResourcePacks();
99
100 MCAPI ~WorldCreationHelper();
101 // NOLINTEND
102
103public:
104 // constructor thunks
105 // NOLINTBEGIN
106 MCAPI void* $ctor(
107 ::IContentManager& contentManager,
108 ::IDlcValidation& dlcValidation,
109 ::ILevelListCache& levelListCache,
110 ::IContentAcquisition& contentAcquisition,
111 ::IStoreCatalogRepository& storeCatalogRepository,
112 ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager> entitlementManager,
113 ::Bedrock::NotNullNonOwnerPtr<::IResourcePackRepository> const& resourcePackRepository,
114 ::ResourcePackManager& resourcePackManager,
115 ::ResourcePackManager& serverResourcePackManager,
116 ::TrialManager& trialManager,
117 ::IGameServerStartup& gameServerStartup
118 );
119 // NOLINTEND
120
121public:
122 // destructor thunk
123 // NOLINTBEGIN
124 MCAPI void $dtor();
125 // NOLINTEND
126};
Definition IContentManager.h:5
Definition IDlcBatcher.h:5
Definition IGameServerStartup.h:5
Definition ILevelListCache.h:27
Definition IResourcePackRepository.h:34
Definition LevelDataWrapper.h:14
Definition ResourcePackCopyProgressHandler.h:5
Definition ResourcePackManager.h:29
Definition WorldCreationHelper.h:5
Definition IContentAcquisition.h:5
Definition IDlcValidation.h:5
Definition PackManagerContentSource.h:5
Definition TrialManager.h:5