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;
15struct ControllerIDtoClientMap;
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(::InputEventQueue&, ::BindingFactory const&, ::InputMapping const&, int) = 0;
34
35 virtual void clearMapping(int) = 0;
36
37 virtual void clearInputDeviceQueue();
38
39 virtual void clearInputDeviceQueueForFrame();
40
41 virtual bool tick(::InputEventQueue&, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&) = 0;
42
43 virtual ::InputMode getInputMode() const = 0;
44
45 virtual void getCursorPos(float& xCursor, float& yCursor) const;
46
47 virtual void render(::InputRenderContext& context) const;
48
49 virtual void setWindowSize(int width, int height);
50
51 virtual void setBindingMode(::InputBindingMode mode, int controllerId);
52
53 virtual ::InputBindingMode getBindingMode(int controllerId);
54
55 virtual void changeControllerId(int oldId, int newId);
56 // NOLINTEND
57
58public:
59 // virtual function thunks
60 // NOLINTBEGIN
61 MCFOLD void $clearInputDeviceQueue();
62
63 MCFOLD void $clearInputDeviceQueueForFrame();
64
65 MCAPI void $getCursorPos(float& xCursor, float& yCursor) const;
66
67 MCFOLD void $render(::InputRenderContext& context) const;
68
69 MCAPI void $setWindowSize(int width, int height);
70
71 MCAPI void $setBindingMode(::InputBindingMode mode, int controllerId);
72
73 MCAPI ::InputBindingMode $getBindingMode(int controllerId);
74
75 MCFOLD void $changeControllerId(int oldId, int newId);
76 // NOLINTEND
77
78public:
79 // vftables
80 // NOLINTBEGIN
81 MCNAPI static void** $vftable();
82 // NOLINTEND
83};
Definition BindingFactory.h:5
Definition InputDeviceMapper.h:5
static MCAPI void ** $vftable()
Definition InputEventQueue.h:5
Definition InputRenderContext.h:5
Definition InputMapping.h:5