LeviLamina
Loading...
Searching...
No Matches
RouterConfiguration.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/oreui/routing/RouteDataParser.h"
7#include "mc/client/gui/oreui/routing/RouteFlags.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9
10// auto generated forward declare list
11// clang-format off
12class ISceneStack;
13class SceneFactory;
14namespace OreUI { class IEntryPoint; }
15namespace OreUI { class IRouteMatcher; }
16namespace OreUI { struct Route; }
17namespace OreUI { struct RouteData; }
18namespace OreUI { struct RouteJsonMetadata; }
19// clang-format on
20
21namespace OreUI {
22
24public:
25 // RouterConfiguration inner types declare
26 // clang-format off
27 struct EntryPoint;
28 // clang-format on
29
30 // RouterConfiguration inner types define
31 struct EntryPoint {
32 public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<8, 32, ::std::string const> route;
36 ::ll::TypedStorage<4, 4, ::OreUI::EntryPoints::RouteFlags const> flags;
37 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::IEntryPoint>> definition;
38 // NOLINTEND
39
40 public:
41 // prevent constructor by default
42 EntryPoint();
43
44 public:
45 // member functions
46 // NOLINTBEGIN
47 MCAPI EntryPoint(
48 ::std::string const& route,
49 ::OreUI::EntryPoints::RouteFlags const flags,
50 ::std::unique_ptr<::OreUI::IEntryPoint> definition
51 );
52 // NOLINTEND
53
54 public:
55 // constructor thunks
56 // NOLINTBEGIN
57 MCAPI void* $ctor(
58 ::std::string const& route,
59 ::OreUI::EntryPoints::RouteFlags const flags,
60 ::std::unique_ptr<::OreUI::IEntryPoint> definition
61 );
62 // NOLINTEND
63 };
64
65public:
66 // member variables
67 // NOLINTBEGIN
68 ::ll::TypedStorage<8, 88, ::OreUI::RouteDataParser> mRouteDataParser;
69 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::RouteJsonMetadata>> mCurrentRouteJsonMetadata;
70 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::Route>> mDefaultRoutes;
71 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::Route>> mInGameRoutes;
72 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::Route>> mOutOfGameRoutes;
73 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::RouterConfiguration::EntryPoint>> mEntryPoints;
74 // NOLINTEND
75
76public:
77 // prevent constructor by default
78 RouterConfiguration();
79
80public:
81 // member functions
82 // NOLINTBEGIN
83 MCAPI explicit RouterConfiguration(::OreUI::RouteDataParser&& routeDataParser);
84
85 MCAPI void _fillRoutes(::std::vector<::OreUI::RouteData> const& routeData);
86
87 MCAPI ::std::unique_ptr<::OreUI::IRouteMatcher> createRouteMatcher(
88 ::SceneFactory& sceneFactory,
89 ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> const& sceneStack,
90 ::OreUI::EntryPoints::RouteFlags scope
91 ) const;
92
93 MCAPI ::std::tuple<::std::vector<::OreUI::RouteData>, ::std::vector<::OreUI::RouteJsonMetadata>>
94 getRouteData() const;
95
96 MCAPI bool reload();
97
98 MCAPI ~RouterConfiguration();
99 // NOLINTEND
100
101public:
102 // constructor thunks
103 // NOLINTBEGIN
104 MCAPI void* $ctor(::OreUI::RouteDataParser&& routeDataParser);
105 // NOLINTEND
106
107public:
108 // destructor thunk
109 // NOLINTBEGIN
110 MCAPI void $dtor();
111 // NOLINTEND
112};
113
114} // namespace OreUI
Definition ISceneStack.h:5
Definition IEntryPoint.h:7
Definition IRouteMatcher.h:7
Definition RouterConfiguration.h:7
Definition SceneFactory.h:5
Definition RouteData.h:7
Definition RouteJsonMetadata.h:7
Definition Route.h:7
Definition RouterConfiguration.h:15