3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/oreui/interface/FacetRegistryLocation.h"
7#include "mc/client/gui/oreui/interface/IFacetRegistry.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
13namespace OreUI {
class IFacet; }
31 ::ll::TypedStorage<8, 32, ::std::string const> name;
32 ::ll::TypedStorage<8, 64, ::std::function<::std::unique_ptr<::OreUI::IFacet>()>
const> constructor;
40 ::ll::TypedStorage<8, 32, ::std::string> name;
41 ::ll::TypedStorage<8, 32, ::std::string> id;
42 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::IFacet>> facet;
43 ::ll::TypedStorage<1, 1, bool> isSuspended;
50 ::ll::TypedStorage<4, 4, ::OreUI::FacetRegistryLocation> mLocation;
51 ::ll::TypedStorage<8, 24, ::std::vector<::std::string>> mUpdatingFacets;
52 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::FacetRegistry::FacetEntry>> mFacets;
53 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::FacetRegistry::FacetPrototype>> mFacetPrototypes;
54 ::ll::TypedStorage<1, 1, bool> mIsActivationDisabled;
60 virtual ~FacetRegistry() =
default;
62 virtual void registerFacet(
63 ::std::string
const& name,
64 ::std::function<::std::unique_ptr<::OreUI::IFacet>()>
const& constructor
67 virtual ::std::optional<::OreUI::IFacetRegistry::Error> activateFacet(
68 ::OreUI::FacetBinder& binder,
69 ::std::string
const& name,
70 ::std::string
const&
id,
71 ::std::unordered_map<::std::string, ::std::variant<double, bool, ::std::string>>
const& payload
74 virtual ::std::optional<::OreUI::IFacetRegistry::Error>
75 deactivateFacet(::OreUI::FacetBinder& binder, ::std::string
const&
id) ;
77 virtual void clearAllFacets() ;
79 virtual void suspendAllFacets() ;
81 virtual void disableFacetActivation() ;
83 virtual void bind(::OreUI::FacetBinder& binder) ;
85 virtual ::std::vector<::std::string>
const& update(::OreUI::FacetBinder& binder) ;
87 virtual ::std::unordered_map<::std::string, ::Bedrock::NotNullNonOwnerPtr<::OreUI::IFacet>>
95 $registerFacet(::std::string
const& name, ::std::function<::std::unique_ptr<::OreUI::IFacet>()>
const& constructor);
97 MCAPI ::std::optional<::OreUI::IFacetRegistry::Error> $activateFacet(
98 ::OreUI::FacetBinder& binder,
99 ::std::string
const& name,
100 ::std::string
const&
id,
101 ::std::unordered_map<::std::string, ::std::variant<double, bool, ::std::string>>
const& payload
104 MCAPI ::std::optional<::OreUI::IFacetRegistry::Error>
105 $deactivateFacet(::OreUI::FacetBinder& binder, ::std::string
const&
id);
107 MCAPI
void $clearAllFacets();
109 MCAPI
void $suspendAllFacets();
111 MCAPI
void $disableFacetActivation();
113 MCAPI
void $bind(::OreUI::FacetBinder& binder);
115 MCAPI ::std::vector<::std::string>
const& $update(::OreUI::FacetBinder& binder);
117 MCAPI ::std::unordered_map<::std::string, ::Bedrock::NotNullNonOwnerPtr<::OreUI::IFacet>> $getActiveFacets();
Definition FacetBinder.h:7
Definition FacetRegistry.h:7
Definition FacetRegistry.h:18
Definition FacetRegistry.h:16