11 #include "input/touch/ITouchInputHandler.h" 12 #include "input/touch/TouchTypes.h" 13 #include "threads/CriticalSection.h" 14 #include "threads/Timer.h" 41 static constexpr
int MAX_POINTERS = 2;
49 float size = 0.0f)
override;
51 int32_t pointer,
float x,
float y, int64_t time,
float size = 0.0f)
override;
62 TouchGestureUnknown = 0,
64 TouchGestureSingleTouch,
66 TouchGestureSingleTouchHold,
70 TouchGestureMultiTouchStart,
72 TouchGestureMultiTouchHold,
74 TouchGestureMultiTouch,
76 TouchGestureMultiTouchDone
80 void OnTimeout()
override;
83 void setGestureState(TouchGestureState gestureState)
85 m_gestureStateOld = m_gestureState;
86 m_gestureState = gestureState;
88 void triggerDetectors(
TouchInput event, int32_t pointer);
89 float AdjustPointerSize(
float size);
91 CCriticalSection m_critical;
92 std::unique_ptr<CTimer> m_holdTimer;
93 std::array<Pointer, MAX_POINTERS> m_pointers;
94 std::set<std::unique_ptr<IGenericTouchGestureDetector>> m_detectors;
96 TouchGestureState m_gestureState = TouchGestureUnknown;
97 TouchGestureState m_gestureStateOld = TouchGestureUnknown;
Interface defining methods to perform gesture recognition.
Definition: IGenericTouchGestureDetector.h:20
TouchInput
Touch input event.
Definition: ITouchInputHandler.h:20