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
79 virtual ~KeyboardMapper() /*override*/ = default;
80 // NOLINTEND
81
82public:
83 // virtual function thunks
84 // NOLINTBEGIN
85 MCAPI void $setMapping(
86 ::InputEventQueue& eventQueue,
87 ::BindingFactory const& bindingFactory,
88 ::InputMapping const& inputMapping,
89 int controllerId
90 );
91
92 MCAPI void $clearMapping(int controllerId);
93
94 MCAPI void $clearInputDeviceQueue();
95
96 MCAPI bool
97 $tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const& map);
98
99 MCFOLD ::InputMode $getInputMode() const;
100
101 MCAPI void $changeControllerId(int oldId, int newId);
102 // NOLINTEND
103
104public:
105 // vftables
106 // NOLINTBEGIN
107 MCNAPI static void** $vftable();
108 // NOLINTEND
109};
Definition BindingFactory.h:5
Definition InputDeviceMapper.h:5
Definition InputEventQueue.h:5
Definition KeyboardMapper.h:5
static MCAPI void ** $vftable()
Definition ControllerIDtoClientMap.h:13
Definition InputMapping.h:5
Definition KeyboardMapper.h:14
Definition KeyboardMapper.h:16