LeviLamina
Loading...
Searching...
No Matches
MinecraftInputHandler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/game/IConfigListener.h"
7#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/deps/core/utility/pub_sub/Publisher.h"
10
11// auto generated forward declare list
12// clang-format off
14class IAdvancedGraphicsOptions;
15class IClientInstance;
16class InputHandler;
20class MouseMapper;
22struct Config;
23struct IGameModuleApp;
24namespace Bedrock::PubSub::ThreadModel { struct MultiThreaded; }
25// clang-format on
26
27class MinecraftInputHandler : public ::IConfigListener, public ::Bedrock::EnableNonOwnerReferences {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::InputHandler>> mInputHandler;
32 ::ll::TypedStorage<4, 4, int> mControllerId;
33 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IClientInstance>> mClient;
34 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IAdvancedGraphicsOptions>> mAdvancedGraphicsOptions;
35 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::MinecraftBindingFactoryMap>> mBindingFactoryMap;
36 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::MinecraftInputMappingFactoryMap>> mMappingFactoryMap;
37 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SplitscreenJoinListener>> mSplitscreenJoinListener;
38 ::ll::TypedStorage<
39 8,
40 128,
41 ::Bedrock::PubSub::Publisher<void(::IClientInstance&), ::Bedrock::PubSub::ThreadModel::MultiThreaded, 0>>
42 mAnyInputSubscription;
43 ::ll::TypedStorage<8, 8, ::MouseMapper*> mMouseMapper;
44 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::MinecraftInputHandlerProxy>> mProxy;
45 // NOLINTEND
46
47public:
48 // prevent constructor by default
50
51public:
52 // virtual functions
53 // NOLINTBEGIN
54 virtual ~MinecraftInputHandler() /*override*/;
55
56 virtual void onConfigChanged(::Config const& c) /*override*/;
57
58 virtual void _registerInputHandlers();
59
60 virtual void _registerDebugInputHandlers();
61
62 virtual ::std::unique_ptr<::ClientMoveInputHandler> _createClientMoveInputHandler() = 0;
63 // NOLINTEND
64
65public:
66 // member functions
67 // NOLINTBEGIN
69 ::Bedrock::NotNullNonOwnerPtr<::IClientInstance> const& client,
70 ::Bedrock::NotNullNonOwnerPtr<::IAdvancedGraphicsOptions> const& advancedGraphicsOptions
71 );
72
73 MCAPI void _registerMenuButton(::std::string const& buttonName, bool suspendable);
74
75 MCAPI void init(::IGameModuleApp& gameModuleApp);
76
77 MCAPI ::ClientMoveInputHandler*
78 initClientInput(::Bedrock::NotNullNonOwnerPtr<::IClientInstance> const& client, ::IGameModuleApp& gameModuleApp);
79 // NOLINTEND
80
81public:
82 // constructor thunks
83 // NOLINTBEGIN
84 MCAPI void* $ctor(
85 ::Bedrock::NotNullNonOwnerPtr<::IClientInstance> const& client,
86 ::Bedrock::NotNullNonOwnerPtr<::IAdvancedGraphicsOptions> const& advancedGraphicsOptions
87 );
88 // NOLINTEND
89
90public:
91 // destructor thunk
92 // NOLINTBEGIN
93 MCAPI void $dtor();
94 // NOLINTEND
95
96public:
97 // virtual function thunks
98 // NOLINTBEGIN
99 MCAPI void $onConfigChanged(::Config const& c);
100
101 MCAPI void $_registerInputHandlers();
102
103 MCAPI void $_registerDebugInputHandlers();
104 // NOLINTEND
105
106public:
107 // vftables
108 // NOLINTBEGIN
109 MCNAPI static void** $vftableForIConfigListener();
110
112 // NOLINTEND
113};
Definition ClientMoveInputHandler.h:5
Definition IConfigListener.h:5
Definition InputHandler.h:5
Definition MinecraftBindingFactoryMap.h:5
Definition MinecraftInputHandlerProxy.h:5
Definition MinecraftInputHandler.h:5
static MCAPI void ** $vftableForIConfigListener()
static MCAPI void ** $vftableForEnableNonOwnerReferences()
Definition MinecraftInputMappingFactoryMap.h:5
Definition MouseMapper.h:5
Definition SplitscreenJoinListener.h:5
Definition Config.h:5
Definition IGameModuleApp.h:5