LeviLamina
Loading...
Searching...
No Matches
IDataDrivenUIRepository.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
7
8// auto generated forward declare list
9// clang-format off
11namespace Bedrock::PubSub { class Subscription; }
12namespace SharedTypes::v1_21_130::DataDrivenUI { struct ContainerFixedGridLayout; }
13namespace SharedTypes::v1_21_130::DataDrivenUI { struct ContainerLayout; }
14namespace SharedTypes::v1_21_130::DataDrivenUI { struct ContainerTextField; }
15namespace SharedTypes::v1_21_130::DataDrivenUI { struct Context; }
16namespace SharedTypes::v1_21_130::DataDrivenUI { struct ContextList; }
17namespace SharedTypes::v1_21_130::DataDrivenUI { struct ExtensionPoint; }
18namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormButton; }
19namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormDivider; }
20namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormDropdown; }
21namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormImage; }
22namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormScrollView; }
23namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormSlider; }
24namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormSwitch; }
25namespace SharedTypes::v1_21_130::DataDrivenUI { struct FormTextField; }
26namespace SharedTypes::v1_21_130::DataDrivenUI { struct Panel; }
27namespace SharedTypes::v1_21_130::DataDrivenUI { struct PanelCloseButton; }
28namespace SharedTypes::v1_21_130::DataDrivenUI { struct PanelDecoration; }
29namespace SharedTypes::v1_21_130::DataDrivenUI { struct PanelSpacing; }
30namespace SharedTypes::v1_21_130::DataDrivenUI { struct PanelText; }
31namespace SharedTypes::v1_21_130::DataDrivenUI { struct ScrollableGridLayout; }
32namespace SharedTypes::v1_21_130::DataDrivenUI { struct Visibility; }
33namespace mce { class UUID; }
34// clang-format on
35
37public:
38 // virtual functions
39 // NOLINTBEGIN
40 virtual ~IDataDrivenUIRepository() /*override*/ = default;
41
42 virtual void load(::ResourcePackManager const& resourcePackManager) = 0;
43
44 virtual bool hasRootDefinition(::std::string const& identifier) const = 0;
45
46 virtual ::std::vector<::std::variant<
47 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerFixedGridLayout>,
48 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerTextField>,
49 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ExtensionPoint>,
50 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormButton>,
51 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormDivider>,
52 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormDropdown>,
53 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormImage>,
54 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormScrollView>,
55 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormSlider>,
56 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormSwitch>,
57 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormTextField>,
58 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelCloseButton>,
59 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelDecoration>,
60 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelSpacing>,
61 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContextList>,
62 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ScrollableGridLayout>,
63 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelText>,
64 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::Visibility>>> const&
65 getComposition(::std::string const& identifier) const = 0;
66
67 virtual ::mce::UUID const& getCompositionPackId(::std::string const& identifier) const = 0;
68
69 virtual ::std::vector<::std::variant<
70 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerLayout>,
71 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::Context>,
72 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::Panel>>> const&
73 getRoot(::std::string const& identifier) const = 0;
74
75 virtual ::mce::UUID const& getRootPackId(::std::string const& identifier) const = 0;
76
77 virtual ::std::vector<::std::variant<
78 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerFixedGridLayout>,
79 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContainerTextField>,
80 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ExtensionPoint>,
81 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormButton>,
82 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormDivider>,
83 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormDropdown>,
84 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormImage>,
85 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormScrollView>,
86 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormSlider>,
87 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormSwitch>,
88 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::FormTextField>,
89 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelCloseButton>,
90 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelDecoration>,
91 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelSpacing>,
92 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ContextList>,
93 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::ScrollableGridLayout>,
94 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::PanelText>,
95 ::std::shared_ptr<::SharedTypes::v1_21_130::DataDrivenUI::Visibility>>>
96 getExtensionPointContents(::std::string const& name) const = 0;
97
98 virtual ::Bedrock::PubSub::Subscription
99 subscribeToOnCompositionsReloadedAsync(::std::function<void()>&& onCompositionsReloadedAsyncCallback) = 0;
100 // NOLINTEND
101};
Definition EnableNonOwnerReferences.h:7
Definition Subscription.h:10
Definition IDataDrivenUIRepository.h:36
Definition ResourcePackManager.h:36
Definition UUID.h:8