LeviLamina
Loading...
Searching...
No Matches
InputDeviceMapper.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/InputBindingMode.h"
8#include "mc/deps/input/InputMode.h"
9
10// auto generated forward declare list
11// clang-format off
12class BindingFactory;
13class InputEventQueue;
16struct InputMapping;
17// clang-format on
18
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<4, 4, int> mScreenWidth;
24 ::ll::TypedStorage<4, 4, int> mScreenHeight;
25 ::ll::TypedStorage<8, 64, ::std::unordered_map<int, ::InputBindingMode>> mBindingMode;
26 // NOLINTEND
27
28public:
29 // virtual functions
30 // NOLINTBEGIN
31 virtual ~InputDeviceMapper() = 0;
32
33 virtual void setMapping(
34 ::InputEventQueue& eventQueue,
35 ::BindingFactory const& bindingFactory,
36 ::InputMapping const& inputMapping,
37 int controllerId
38 ) = 0;
39
40 virtual void clearMapping(int controllerId) = 0;
41
42 virtual void clearInputDeviceQueue();
43
44 virtual void clearInputDeviceQueueForFrame();
45
46 virtual bool
47 tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const& map) = 0;
48
49 virtual ::InputMode getInputMode() const = 0;
50
51 virtual void getCursorPos(float& xCursor, float& yCursor) const;
52
53 virtual void render(::InputRenderContext& context) const;
54
55 virtual void setWindowSize(int width, int height);
56
57 virtual void setBindingMode(::InputBindingMode mode, int controllerId);
58
59 virtual ::InputBindingMode getBindingMode(int controllerId);
60
61 virtual void changeControllerId(int oldId, int newId);
62 // NOLINTEND
63
64public:
65 // member functions
66 // NOLINTBEGIN
67 MCAPI InputDeviceMapper();
68 // NOLINTEND
69
70public:
71 // constructor thunks
72 // NOLINTBEGIN
73 MCAPI void* $ctor();
74 // NOLINTEND
75
76public:
77 // virtual function thunks
78 // NOLINTBEGIN
79 MCFOLD void $clearInputDeviceQueue();
80
81 MCFOLD void $clearInputDeviceQueueForFrame();
82
83 MCAPI void $getCursorPos(float& xCursor, float& yCursor) const;
84
85 MCFOLD void $render(::InputRenderContext& context) const;
86
87 MCAPI void $setWindowSize(int width, int height);
88
89 MCAPI void $setBindingMode(::InputBindingMode mode, int controllerId);
90
91 MCAPI ::InputBindingMode $getBindingMode(int controllerId);
92
93 MCFOLD void $changeControllerId(int oldId, int newId);
94 // NOLINTEND
95
96public:
97 // vftables
98 // NOLINTBEGIN
99 MCNAPI static void** $vftable();
100 // NOLINTEND
101};
Definition BindingFactory.h:5
Definition InputDeviceMapper.h:5
static MCAPI void ** $vftable()
Definition InputEventQueue.h:5
Definition InputRenderContext.h:5
Definition ControllerIDtoClientMap.h:5
Definition InputMapping.h:5