LeviLamina
Loading...
Searching...
No Matches
WorldTemplateHandler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/world/IWorldTemplateHandler.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8
9// auto generated forward declare list
10// clang-format off
11class FileArchiver;
13class ILevelListCache;
16struct LevelSummary;
18namespace Social { class IUserManager; }
19namespace World { struct WorldID; }
20// clang-format on
21
22namespace World {
23
24class WorldTemplateHandler : public ::World::IWorldTemplateHandler {
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::WorldTemplateProvider>> mWorldTemplateProvider;
29 ::ll::TypedStorage<8, 8, ::ILevelListCache&> mLevelListCache;
30 ::ll::TypedStorage<8, 8, ::Social::IUserManager&> mUserManager;
31 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const>> mKeyProvider;
32 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::FileArchiver>> mFileArchiver;
33 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::WorldTemplateManager>> mWorldTemplateManager;
34 // NOLINTEND
35
36public:
37 // prevent constructor by default
38 WorldTemplateHandler& operator=(WorldTemplateHandler const&);
39 WorldTemplateHandler(WorldTemplateHandler const&);
40 WorldTemplateHandler();
41
42public:
43 // virtual functions
44 // NOLINTBEGIN
45 virtual ~WorldTemplateHandler() /*override*/ = default;
46
47 virtual void loadTemplate(
48 ::std::string const& templateId,
49 ::std::function<void(::std::variant<::World::WorldID, ::World::IWorldTemplateHandler::Result>)> onComplete
50 ) /*override*/;
51
52 virtual ::std::optional<::World::IWorldTemplateHandler::WriteTemplateError>
53 saveTemplate(::LevelSummary const& levelSummary) const /*override*/;
54
55 virtual bool isTemplateExportEnabled() const /*override*/;
56
57 virtual ::std::vector<::std::unique_ptr<::WorldTemplateInfo const>> const& getLocalTemplates() const /*override*/;
58 // NOLINTEND
59
60public:
61 // virtual function thunks
62 // NOLINTBEGIN
63 MCAPI void $loadTemplate(
64 ::std::string const& templateId,
65 ::std::function<void(::std::variant<::World::WorldID, ::World::IWorldTemplateHandler::Result>)> onComplete
66 );
67
68 MCAPI ::std::optional<::World::IWorldTemplateHandler::WriteTemplateError>
69 $saveTemplate(::LevelSummary const& levelSummary) const;
70
71 MCFOLD bool $isTemplateExportEnabled() const;
72
73 MCAPI ::std::vector<::std::unique_ptr<::WorldTemplateInfo const>> const& $getLocalTemplates() const;
74 // NOLINTEND
75};
76
77} // namespace World
Definition FileArchiver.h:35
Definition IContentKeyProvider.h:13
Definition ILevelListCache.h:27
Definition IUserManager.h:7
Definition WorldTemplateManager.h:21
Definition WorldTemplateProvider.h:5
Definition WorldTemplateHandler.h:7
Definition LevelSummary.h:30
Definition WorldTemplateInfo.h:12
Definition WorldID.h:7