LeviLamina
Loading...
Searching...
No Matches
DeviceButtonMapper.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;
14struct ControllerIDtoClientMap;
16struct InputMapping;
17// clang-format on
18
20public:
21 // DeviceButtonMapper inner types define
22 using DeviceButtonId = int;
23
24 using DeviceButtonToButtonIdMap = ::std::unordered_multimap<int, uint>;
25
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<8, 64, ::std::unordered_multimap<int, uint>> mDeviceButtonToButtonIdMap;
30 ::ll::TypedStorage<4, 4, int> mPrimaryGameControllerId;
31 // NOLINTEND
32
33public:
34 // virtual functions
35 // NOLINTBEGIN
36 virtual void setMapping(
38 ::BindingFactory const&,
39 ::InputMapping const& inputMapping,
40 int controllerId
41 ) /*override*/;
42
43 virtual void clearMapping(int controllerId) /*override*/;
44
45 virtual ::InputMode getInputMode() const /*override*/;
46
47 virtual bool
48 tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&) /*override*/;
49
50 virtual void changeControllerId(int oldId, int newId) /*override*/;
51
52 virtual void clearInputDeviceQueue() /*override*/;
53
54 virtual ~DeviceButtonMapper() /*override*/;
55 // NOLINTEND
56
57public:
58 // member functions
59 // NOLINTBEGIN
60 MCAPI void handleButtonEvent(::InputEventQueue& eventQueue, ::DeviceButtonEvent const& buttonEvent);
61 // NOLINTEND
62
63public:
64 // destructor thunk
65 // NOLINTBEGIN
66 MCAPI void $dtor();
67 // NOLINTEND
68
69public:
70 // virtual function thunks
71 // NOLINTBEGIN
72 MCAPI void
73 $setMapping(::InputEventQueue&, ::BindingFactory const&, ::InputMapping const& inputMapping, int controllerId);
74
75 MCAPI void $clearMapping(int controllerId);
76
77 MCFOLD ::InputMode $getInputMode() const;
78
79 MCAPI bool $tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&);
80
81 MCAPI void $changeControllerId(int oldId, int newId);
82
83 MCAPI void $clearInputDeviceQueue();
84 // NOLINTEND
85
86public:
87 // vftables
88 // NOLINTBEGIN
89 MCNAPI static void** $vftable();
90 // NOLINTEND
91};
Definition BindingFactory.h:5
Definition DeviceButtonMapper.h:5
static MCAPI void ** $vftable()
Definition InputDeviceMapper.h:5
Definition InputEventQueue.h:5
Definition DeviceButtonEvent.h:5
Definition InputMapping.h:5