LeviLamina
Loading...
Searching...
No Matches
SceneProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/oreui/ViewCacheMode.h"
7#include "mc/client/gui/oreui/interface/FacetRegistryLocation.h"
8#include "mc/client/gui/oreui/interface/RouteMode.h"
9#include "mc/deps/core/utility/NonOwnerPointer.h"
10
11// auto generated forward declare list
12// clang-format off
13class AbstractScene;
14class IClientInstance;
15class ISceneStack;
16namespace OreUI { class FacetRegistryFactory; }
17namespace OreUI { class Library; }
18namespace OreUI { class RouteModeInputHandler; }
19namespace OreUI { class Router; }
20namespace OreUI { struct ViewId; }
21namespace OreUI::Experimental::Detail { class ViewContextFactory; }
22namespace ui { class ScreenTechStackSelector; }
23// clang-format on
24
25namespace OreUI {
26
27class SceneProvider {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 8, ::OreUI::Library&> mUILibrary;
32 ::ll::TypedStorage<8, 8, ::ui::ScreenTechStackSelector const&> mScreenTechStackSelector;
33 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::FacetRegistryFactory>> mFacetRegistryFactory;
34 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::Experimental::Detail::ViewContextFactory>> mContextFactory;
35 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IClientInstance>> mClientInstance;
36 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::OreUI::RouteModeInputHandler>> mRouteModeInputHandler;
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 SceneProvider& operator=(SceneProvider const&);
42 SceneProvider(SceneProvider const&);
43 SceneProvider();
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI ::OreUI::ViewId _createView(
49 ::std::string const& url,
50 ::OreUI::FacetRegistryLocation location,
51 ::OreUI::ViewCacheMode cacheMode
52 ) const;
53
54 MCAPI ::std::shared_ptr<::AbstractScene> createScene(
55 ::std::string const& url,
56 ::OreUI::Router& router,
57 ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> const& sceneStack,
58 ::OreUI::RouteMode mode,
59 ::OreUI::FacetRegistryLocation location
60 ) const;
61
62 MCAPI void preCacheGameplayViews();
63
64 MCAPI void preCacheOutOfGameViews();
65 // NOLINTEND
66};
67
68} // namespace OreUI
Definition AbstractScene.h:5
Definition IClientInstance.h:5
Definition ISceneStack.h:5
Definition ViewContextFactory.h:7
Definition FacetRegistryFactory.h:7
Definition Library.h:7
Definition RouteModeInputHandler.h:7
Definition Router.h:7
Definition SceneProvider.h:7
Definition ScreenTechStackSelector.h:7
Definition ViewId.h:7