LeviLamina
Loading...
Searching...
No Matches
TouchControl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
9class RectangleArea;
11// clang-format on
12
13class TouchControl {
14public:
15 // member variables
16 // NOLINTBEGIN
17 ::ll::TypedStorage<8, 64, ::std::function<::RectangleArea()>> mArea;
18 ::ll::TypedStorage<4, 4, int> mScreenWidth;
19 ::ll::TypedStorage<4, 4, int> mScreenHeight;
20 ::ll::TypedStorage<8, 32, ::std::string> mCurrentLabel;
21 // NOLINTEND
22
23public:
24 // prevent constructor by default
25 TouchControl();
26
27public:
28 // virtual functions
29 // NOLINTBEGIN
30 virtual ~TouchControl();
31
32 virtual uint getHoldButtonId() const;
33
34 virtual int getActivePointerId() const;
35
36 virtual bool releaseOnClear() const;
37
38 virtual void render(::InputRenderContext& context) const;
39
40 virtual void tick(::InputEventQueue& eventQueue, ::TouchPointResults& touchPointResults, int yAxisInversionFactor);
41
42 virtual void release(::InputEventQueue& eventQueue);
43 // NOLINTEND
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI explicit TouchControl(::std::function<::RectangleArea()> area);
49
50 MCAPI bool canUpdateActivePointer(::TouchPointResults& touchPointResults, int pointerId, float& x, float& y) const;
51
52 MCAPI int getNewActivePointer(
53 ::TouchPointResults& touchPointResults,
54 ::RectangleArea const& area,
55 float& x,
56 float& y,
57 ::std::vector<::RectangleArea> const& areasToIgnore,
58 ::std::vector<int> const& pointerIdsToIgnore,
59 bool consumeInput
60 ) const;
61
62 MCAPI void setWindowSize(int width, int height);
63 // NOLINTEND
64
65public:
66 // constructor thunks
67 // NOLINTBEGIN
68 MCAPI void* $ctor(::std::function<::RectangleArea()> area);
69 // NOLINTEND
70
71public:
72 // destructor thunk
73 // NOLINTBEGIN
74 MCFOLD void $dtor();
75 // NOLINTEND
76
77public:
78 // virtual function thunks
79 // NOLINTBEGIN
80 MCFOLD uint $getHoldButtonId() const;
81
82 MCFOLD int $getActivePointerId() const;
83
84 MCFOLD bool $releaseOnClear() const;
85
86 MCFOLD void $render(::InputRenderContext& context) const;
87
88 MCFOLD void $tick(::InputEventQueue& eventQueue, ::TouchPointResults& touchPointResults, int yAxisInversionFactor);
89
90 MCFOLD void $release(::InputEventQueue& eventQueue);
91 // NOLINTEND
92
93public:
94 // vftables
95 // NOLINTBEGIN
96 MCNAPI static void** $vftable();
97 // NOLINTEND
98};
Definition InputEventQueue.h:5
Definition InputRenderContext.h:5
Definition RectangleArea.h:5
Definition TouchControl.h:5
static MCAPI void ** $vftable()
Definition TouchPointResults.h:5