Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
KeyboardMapper.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/deps/input/InputDeviceMapper.h"
8#include "mc/deps/input/InputMode.h"
9#include "mc/deps/input/enums/FocusImpact.h"
10
11// auto generated forward declare list
12// clang-format off
13class BindingFactory;
14class InputEventQueue;
16struct InputMapping;
17// clang-format on
18
20public:
21 // KeyboardMapper inner types declare
22 // clang-format off
25 // clang-format on
26
27 // KeyboardMapper inner types define
29 public:
30 // member variables
31 // NOLINTBEGIN
32 ::ll::TypedStorage<4, 4, uint> nameId;
33 ::ll::TypedStorage<1, 1, ::FocusImpact> focusImpact;
34 // NOLINTEND
35 };
36
37 struct KeyboardMappingData {
38 public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<8, 16, ::std::multimap<int, ::KeyboardMapper::KeyboardKeyButtonDetails>>
42 mKeyboardKeyToButtonDetailsMap;
43 // NOLINTEND
44 };
45
46 using KeyboardKeyId = int;
47
48 using KeyToButtonDetailsMap = ::std::multimap<int, ::KeyboardMapper::KeyboardKeyButtonDetails>;
49
50public:
51 // member variables
52 // NOLINTBEGIN
53 ::ll::TypedStorage<8, 64, ::std::unordered_map<int, ::KeyboardMapper::KeyboardMappingData>> mPerIdMappings;
54 // NOLINTEND
55
56public:
57 // virtual functions
58 // NOLINTBEGIN
59 virtual void setMapping(
60 ::InputEventQueue& eventQueue,
61 ::BindingFactory const& bindingFactory,
62 ::InputMapping const& inputMapping,
63 int controllerId
64 ) /*override*/;
65
66 virtual void clearMapping(int controllerId) /*override*/;
67
68 virtual void clearInputDeviceQueue() /*override*/;
69
70 virtual bool tick(
71 ::InputEventQueue& eventQueue,
72 ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const& map
73 ) /*override*/;
74
75 virtual ::InputMode getInputMode() const /*override*/;
76
77 virtual void changeControllerId(int oldId, int newId) /*override*/;
78 // NOLINTEND
79
80public:
81 // virtual function thunks
82 // NOLINTBEGIN
83 MCNAPI void $setMapping(
84 ::InputEventQueue& eventQueue,
85 ::BindingFactory const& bindingFactory,
86 ::InputMapping const& inputMapping,
87 int controllerId
88 );
89
90 MCNAPI void $clearMapping(int controllerId);
91
93
94 MCNAPI bool
95 $tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const& map);
96
97 MCNAPI ::InputMode $getInputMode() const;
98
99 MCNAPI void $changeControllerId(int oldId, int newId);
100 // NOLINTEND
101
102public:
103 // vftables
104 // NOLINTBEGIN
105 MCNAPI static void** $vftable();
106 // NOLINTEND
107};
Definition BindingFactory.h:5
Definition InputDeviceMapper.h:5
Definition InputEventQueue.h:5
Definition KeyboardMapper.h:5
MCAPI void $changeControllerId(int oldId, int newId)
MCAPI::InputMode $getInputMode() const
MCAPI void $setMapping(::InputEventQueue &eventQueue, ::BindingFactory const &bindingFactory, ::InputMapping const &inputMapping, int controllerId)
static MCAPI void ** $vftable()
MCAPI bool $tick(::InputEventQueue &eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap > const &map)
MCAPI void $clearMapping(int controllerId)
MCAPI void $clearInputDeviceQueue()
Definition ControllerIDtoClientMap.h:5
Definition InputMapping.h:5
Definition KeyboardMapper.h:14
Definition KeyboardMapper.h:16