LeviLamina
Loading...
Searching...
No Matches
PauseManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/pub_sub/Connector.h"
7#include "mc/deps/game_refs/StackRefResult.h"
8#include "mc/world/SimulationType.h"
9
10// auto generated forward declare list
11// clang-format off
12class EntityRegistry;
13class Option;
14namespace Bedrock::PubSub { class Subscription; }
16// clang-format on
17
18class PauseManager {
19public:
20 // member variables
21 // NOLINTBEGIN
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 PauseManager& operator=(PauseManager const&);
34 PauseManager(PauseManager const&);
35 PauseManager();
36
37public:
38 // member functions
39 // NOLINTBEGIN
40 MCNAPI explicit PauseManager(::gsl::not_null<::StackRefResult<::EntityRegistry>> const& entityRegistry);
41
42#ifdef LL_PLAT_C
43 MCNAPI ::Bedrock::PubSub::Connector<void(bool)>& getPauseStateChangeConnector();
44#endif
45
46 MCNAPI ::SimulationType getSimulationType() const;
47
48#ifdef LL_PLAT_C
49 MCNAPI void initializeOption(::Option* option);
50#endif
51
52 MCNAPI ::Bedrock::PubSub::Subscription
53 listenForSimulationTypeChange(::std::function<void(::SimulationType, ::SimulationType)> callback);
54
55#ifdef LL_PLAT_C
56 MCNAPI bool requestInGamePause(::ILocalServerPauseCommunication& pauseCommunication, bool status) const;
57
58 MCNAPI void setPauseFeatureEnabled(bool status);
59
60 MCNAPI void setPauseIntent(bool value);
61#endif
62
63 MCNAPI void setSimulationType(::SimulationType simulationType);
64
65 MCNAPI ~PauseManager();
66 // NOLINTEND
67
68public:
69 // static functions
70 // NOLINTBEGIN
71 MCNAPI static ::SimulationType getSimulationType(::StackRefResult<::PauseManager const> pauseManager);
72
73 MCNAPI static bool
74 isSimulationType(::StackRefResult<::PauseManager const> pauseManager, ::SimulationType simulationType);
75
76 MCNAPI static void
77 setSimulationType(::StackRefResult<::PauseManager> pauseManager, ::SimulationType simulationType);
78 // NOLINTEND
79
80public:
81 // constructor thunks
82 // NOLINTBEGIN
83 MCNAPI void* $ctor(::gsl::not_null<::StackRefResult<::EntityRegistry>> const& entityRegistry);
84 // NOLINTEND
85
86public:
87 // destructor thunk
88 // NOLINTBEGIN
89 MCNAPI void $dtor();
90 // NOLINTEND
91};
Definition Subscription.h:10
Definition EntityRegistry.h:11
Definition ILocalServerPauseCommunication.h:5
Definition Option.h:22
MCAPI void $dtor()
static MCAPI bool isSimulationType(::StackRefResult<::PauseManager const > pauseManager, ::SimulationType simulationType)
MCAPI PauseManager(::gsl::not_null<::StackRefResult<::EntityRegistry > > const &entityRegistry)
MCAPI::SimulationType getSimulationType() const
static MCAPI void setSimulationType(::StackRefResult<::PauseManager > pauseManager, ::SimulationType simulationType)
MCAPI void * $ctor(::gsl::not_null<::StackRefResult<::EntityRegistry > > const &entityRegistry)
MCAPI ~PauseManager()
MCAPI::Bedrock::PubSub::Subscription listenForSimulationTypeChange(::std::function< void(::SimulationType, ::SimulationType)> callback)
MCAPI void setSimulationType(::SimulationType simulationType)
static MCAPI ::SimulationType getSimulationType(::StackRefResult<::PauseManager const > pauseManager)
Definition StackRefResult.h:7
Definition Alias.h:14