LeviLamina
Loading...
Searching...
No Matches
ViewContextFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/oreui/binding/ClientDependencies.h"
7#include "mc/client/gui/oreui/binding/GameDependencies.h"
8#include "mc/client/gui/oreui/binding/methods/InvocationStateTracker.h"
9
10// auto generated forward declare list
11// clang-format off
12namespace OreUI::Detail { class Binder; }
13namespace OreUI::Detail { class CommandRegistry; }
14namespace OreUI::Detail { class QueryRegistry; }
15namespace OreUI::Detail { class ViewContext; }
16// clang-format on
17
18namespace OreUI::Detail {
19
21public:
22 // ViewContextFactory inner types define
23 using QueryRegistrator =
24 ::std::function<void(::OreUI::Detail::QueryRegistry&, ::OreUI::Detail::ViewContextFactory&)>;
25
26 using QueryStorage =
27 ::std::vector<::std::function<void(::OreUI::Detail::QueryRegistry&, ::OreUI::Detail::ViewContextFactory&)>>;
28
29 using CommandRegistrator =
30 ::std::function<void(::OreUI::Detail::CommandRegistry&, ::OreUI::Detail::ViewContextFactory&)>;
31
32 using CommandStorage =
33 ::std::vector<::std::function<void(::OreUI::Detail::CommandRegistry&, ::OreUI::Detail::ViewContextFactory&)>>;
34
35 using ContextPtr = ::std::unique_ptr<::OreUI::Detail::ViewContext>;
36
37public:
38 // member variables
39 // NOLINTBEGIN
40 ::ll::TypedStorage<8, 72, ::OreUI::Detail::InvocationStateTracker> mStateTracker;
41 ::ll::TypedStorage<8, 24, ::OreUI::ClientDependencies> mClientDependencies;
42 ::ll::TypedStorage<8, 128, ::OreUI::GameDependencies> mGameDependencies;
43 // NOLINTEND
44
45public:
46 // prevent constructor by default
47 ViewContextFactory();
48
49public:
50 // member functions
51 // NOLINTBEGIN
52 MCAPI
53 ViewContextFactory(::OreUI::GameDependencies gameDependencies, ::OreUI::ClientDependencies clientDependencies);
54
55 MCAPI ::std::unique_ptr<::OreUI::Detail::ViewContext> makeContext(::OreUI::Detail::Binder& binder);
56 // NOLINTEND
57
58public:
59 // static functions
60 // NOLINTBEGIN
61 MCAPI static ::std::vector<
62 ::std::function<void(::OreUI::Detail::CommandRegistry&, ::OreUI::Detail::ViewContextFactory&)>>&
63 _commandStorage();
64
65 MCAPI static ::std::vector<
66 ::std::function<void(::OreUI::Detail::QueryRegistry&, ::OreUI::Detail::ViewContextFactory&)>>&
67 _queryStorage();
68
69 MCAPI static bool _registerCommand(
70 ::std::function<void(::OreUI::Detail::CommandRegistry&, ::OreUI::Detail::ViewContextFactory&)> const&
71 registrator
72 );
73
74 MCAPI static bool _registerQuery(
75 ::std::function<void(::OreUI::Detail::QueryRegistry&, ::OreUI::Detail::ViewContextFactory&)> const& registrator
76 );
77 // NOLINTEND
78
79public:
80 // constructor thunks
81 // NOLINTBEGIN
82 MCAPI void* $ctor(::OreUI::GameDependencies gameDependencies, ::OreUI::ClientDependencies clientDependencies);
83 // NOLINTEND
84};
85
86} // namespace OreUI::Detail
Definition Binder.h:7
Definition CommandRegistry.h:7
Definition QueryRegistry.h:7
Definition ViewContextFactory.h:7
Definition ViewContext.h:7