LeviLamina
Loading...
Searching...
No Matches
MouseMapper.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
10// auto generated forward declare list
11// clang-format off
12class BindingFactory;
13class InputEventQueue;
15struct InputMapping;
16// clang-format on
17
18class MouseMapper : public ::InputDeviceMapper {
19public:
20 // MouseMapper inner types define
21 using MouseButtonId = int;
22
23 using MouseButtonToButtonMap = ::std::unordered_multimap<int, uint>;
24
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<4, 4, int> mYAxisInversionFactor;
29 ::ll::TypedStorage<8, 64, ::std::unordered_multimap<int, uint>> mMouseButtonToButtonIdMap;
30 ::ll::TypedStorage<8, 24, ::std::vector<uint>> mMouseWheelUpButtonIds;
31 ::ll::TypedStorage<8, 24, ::std::vector<uint>> mMouseWheelDownButtonIds;
32 ::ll::TypedStorage<4, 4, int> mPrimaryGameControllerId;
33 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mIsClientUsingMouseInputMode;
34 // NOLINTEND
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual void setMapping(
40 ::InputEventQueue& bindingFactory,
41 ::BindingFactory const& inputMapping,
42 ::InputMapping const& controllerId,
43 int
44 ) /*override*/;
45
46 virtual void clearMapping(int controllerId) /*override*/;
47
48 virtual bool
49 tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&) /*override*/;
50
51 virtual void clearInputDeviceQueue() /*override*/;
52
53 virtual ::InputMode getInputMode() const /*override*/;
54
55 virtual void getCursorPos(float& xCursor, float& yCursor) const /*override*/;
56
57 virtual void changeControllerId(int oldId, int newId) /*override*/;
58 // NOLINTEND
59
60public:
61 // member functions
62 // NOLINTBEGIN
63 MCAPI MouseMapper();
64 // NOLINTEND
65
66public:
67 // constructor thunks
68 // NOLINTBEGIN
69 MCAPI void* $ctor();
70 // NOLINTEND
71
72public:
73 // virtual function thunks
74 // NOLINTBEGIN
75 MCAPI void $setMapping(
76 ::InputEventQueue& bindingFactory,
77 ::BindingFactory const& inputMapping,
78 ::InputMapping const& controllerId,
79 int
80 );
81
82 MCAPI void $clearMapping(int controllerId);
83
84 MCAPI bool $tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&);
85
86 MCAPI void $clearInputDeviceQueue();
87
88 MCFOLD ::InputMode $getInputMode() const;
89
90 MCAPI void $getCursorPos(float& xCursor, float& yCursor) const;
91
92 MCAPI void $changeControllerId(int oldId, int newId);
93 // NOLINTEND
94
95public:
96 // vftables
97 // NOLINTBEGIN
98 MCNAPI static void** $vftable();
99 // NOLINTEND
100};
Definition BindingFactory.h:5
Definition InputDeviceMapper.h:5
Definition InputEventQueue.h:5
Definition MouseMapper.h:5
static MCAPI void ** $vftable()
Definition ControllerIDtoClientMap.h:5
Definition InputMapping.h:5