summaryrefslogtreecommitdiffstats
path: root/firmware/export/ft6x06.h
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export/ft6x06.h')
-rw-r--r--firmware/export/ft6x06.h23
1 files changed, 16 insertions, 7 deletions
diff --git a/firmware/export/ft6x06.h b/firmware/export/ft6x06.h
index de1fdd0979..6596f89272 100644
--- a/firmware/export/ft6x06.h
+++ b/firmware/export/ft6x06.h
@@ -25,23 +25,32 @@
#include "config.h"
#include <stdbool.h>
-typedef void(*ft6x06_event_cb)(int, int, int);
+enum ft6x06_event {
+ FT6x06_EVT_NONE = -1,
+ FT6x06_EVT_PRESS = 0,
+ FT6x06_EVT_RELEASE = 1,
+ FT6x06_EVT_CONTACT = 2,
+};
-struct ft6x06_state {
+struct ft6x06_point {
int event;
+ int touch_id;
int pos_x;
int pos_y;
+ int weight;
+ int area;
};
-enum ft6x06_event {
- FT6x06_EVT_NONE = -1,
- FT6x06_EVT_PRESS = 0,
- FT6x06_EVT_RELEASE = 1,
- FT6x06_EVT_CONTACT = 2,
+struct ft6x06_state {
+ int gesture;
+ int nr_points;
+ struct ft6x06_point points[FT6x06_NUM_POINTS];
};
extern struct ft6x06_state ft6x06_state;
+typedef void(*ft6x06_event_cb)(struct ft6x06_state* state);
+
void ft6x06_init(void);
void ft6x06_set_event_cb(ft6x06_event_cb fn);
void ft6x06_enable(bool en);