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
57 MCAPI ~ViewContextFactory();
58 // NOLINTEND
59
60public:
61 // static functions
62 // NOLINTBEGIN
63 MCAPI static ::std::vector<
64 ::std::function<void(::OreUI::Detail::CommandRegistry&, ::OreUI::Detail::ViewContextFactory&)>>&
65 _commandStorage();
66
67 MCAPI static ::std::vector<
68 ::std::function<void(::OreUI::Detail::QueryRegistry&, ::OreUI::Detail::ViewContextFactory&)>>&
69 _queryStorage();
70
71 MCAPI static bool _registerCommand(
72 ::std::function<void(::OreUI::Detail::CommandRegistry&, ::OreUI::Detail::ViewContextFactory&)> const&
73 registrator
74 );
75
76 MCAPI static bool _registerQuery(
77 ::std::function<void(::OreUI::Detail::QueryRegistry&, ::OreUI::Detail::ViewContextFactory&)> const& registrator
78 );
79 // NOLINTEND
80
81public:
82 // constructor thunks
83 // NOLINTBEGIN
84 MCAPI void* $ctor(::OreUI::GameDependencies gameDependencies, ::OreUI::ClientDependencies clientDependencies);
85 // NOLINTEND
86
87public:
88 // destructor thunk
89 // NOLINTBEGIN
90 MCAPI void $dtor();
91 // NOLINTEND
92};
93
94} // namespace OreUI::Detail
Definition Binder.h:7
Definition CommandRegistry.h:7
Definition QueryRegistry.h:7
Definition ViewContextFactory.h:7
Definition ViewContext.h:7