LeviLamina
Loading...
Searching...
No Matches
CustomInputZoneMapper.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;
15class TouchControlSet;
17struct InputMapping;
18// clang-format on
19
21public:
22 // CustomInputZoneMapper inner types define
23 using HandlePointerReturn = ::std::tuple<bool, bool>;
24
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TouchControlSet>> mTouchControlSet;
29 ::ll::TypedStorage<4, 4, int> mYAxisInversionFactor;
30 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<int, int>>> mTouchIdsWithFlags;
31 ::ll::TypedStorage<4, 4, int> mPrimaryGameControllerId;
32 ::ll::TypedStorage<4, 4, ::InputMode> mLastInputMode;
33 // NOLINTEND
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ~CustomInputZoneMapper() /*override*/;
39
40 virtual void setMapping(
41 ::InputEventQueue& eventQueue,
42 ::BindingFactory const& bindingFactory,
43 ::InputMapping const& inputMapping,
44 int controllerId
45 ) /*override*/;
46
47 virtual void clearMapping(int controllerId) /*override*/;
48
49 virtual bool
50 tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&) /*override*/;
51
52 virtual void clearInputDeviceQueue() /*override*/;
53
54 virtual ::InputMode getInputMode() const /*override*/;
55
56 virtual void render(::InputRenderContext& context) const /*override*/;
57
58 virtual void setWindowSize(int width, int height) /*override*/;
59
60 virtual void changeControllerId(int oldId, int newId) /*override*/;
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 $setMapping(
73 ::InputEventQueue& eventQueue,
74 ::BindingFactory const& bindingFactory,
75 ::InputMapping const& inputMapping,
76 int controllerId
77 );
78
79 MCAPI void $clearMapping(int controllerId);
80
81 MCAPI bool $tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&);
82
83 MCFOLD void $clearInputDeviceQueue();
84
85 MCFOLD ::InputMode $getInputMode() const;
86
87 MCAPI void $render(::InputRenderContext& context) const;
88
89 MCAPI void $setWindowSize(int width, int height);
90
91 MCAPI void $changeControllerId(int oldId, int newId);
92 // NOLINTEND
93
94public:
95 // vftables
96 // NOLINTBEGIN
97 MCNAPI static void** $vftable();
98 // NOLINTEND
99};
Definition BindingFactory.h:5
Definition CustomInputZoneMapper.h:5
static MCAPI void ** $vftable()
Definition InputDeviceMapper.h:5
Definition InputEventQueue.h:5
Definition InputRenderContext.h:5
Definition TouchControlSet.h:5
Definition ControllerIDtoClientMap.h:5
Definition InputMapping.h:5