LeviLamina
Loading...
Searching...
No Matches
TouchMapper.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 RectangleArea;
16class TouchControlSet;
18struct InputMapping;
19// clang-format on
20
21class TouchMapper : public ::InputDeviceMapper {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TouchControlSet>> mTouchControlSet;
26 ::ll::TypedStorage<4, 4, int> mYAxisInversionFactor;
27 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<int, int>>> touchIdsWithFlags;
28 ::ll::TypedStorage<8, 64, ::std::function<::std::vector<::RectangleArea>()>> mAreaFunc;
29 ::ll::TypedStorage<4, 4, int> mPrimaryGameControllerId;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 TouchMapper();
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual ~TouchMapper() /*override*/;
40
41 virtual void setMapping(
42 ::InputEventQueue& eventQueue,
43 ::BindingFactory const& bindingFactory,
44 ::InputMapping const& inputMapping,
45 int controllerId
46 ) /*override*/;
47
48 virtual void clearMapping(int controllerId) /*override*/;
49
50 virtual bool
51 tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&) /*override*/;
52
53 virtual void clearInputDeviceQueue() /*override*/;
54
55 virtual ::InputMode getInputMode() const /*override*/;
56
57 virtual void render(::InputRenderContext& context) const /*override*/;
58
59 virtual void setWindowSize(int width, int height) /*override*/;
60
61 virtual void changeControllerId(int oldId, int newId) /*override*/;
62 // NOLINTEND
63
64public:
65 // member functions
66 // NOLINTBEGIN
67 MCAPI explicit TouchMapper(::std::function<::std::vector<::RectangleArea>()> areaFunc);
68 // NOLINTEND
69
70public:
71 // constructor thunks
72 // NOLINTBEGIN
73 MCAPI void* $ctor(::std::function<::std::vector<::RectangleArea>()> areaFunc);
74 // NOLINTEND
75
76public:
77 // destructor thunk
78 // NOLINTBEGIN
79 MCAPI void $dtor();
80 // NOLINTEND
81
82public:
83 // virtual function thunks
84 // NOLINTBEGIN
85 MCAPI void $setMapping(
86 ::InputEventQueue& eventQueue,
87 ::BindingFactory const& bindingFactory,
88 ::InputMapping const& inputMapping,
89 int controllerId
90 );
91
92 MCAPI void $clearMapping(int controllerId);
93
94 MCAPI bool $tick(::InputEventQueue& eventQueue, ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> const&);
95
96 MCAPI void $clearInputDeviceQueue();
97
98 MCFOLD ::InputMode $getInputMode() const;
99
100 MCAPI void $render(::InputRenderContext& context) const;
101
102 MCAPI void $setWindowSize(int width, int height);
103
104 MCAPI void $changeControllerId(int oldId, int newId);
105 // NOLINTEND
106
107public:
108 // vftables
109 // NOLINTBEGIN
110 MCNAPI static void** $vftable();
111 // NOLINTEND
112};
Definition BindingFactory.h:5
Definition InputDeviceMapper.h:5
Definition InputEventQueue.h:5
Definition InputRenderContext.h:5
Definition RectangleArea.h:5
Definition TouchControlSet.h:5
Definition TouchMapper.h:5
static MCAPI void ** $vftable()
Definition ControllerIDtoClientMap.h:5
Definition InputMapping.h:5