Files
my_glut/headers/input/touch/touch_data.h
2026-03-13 16:48:03 +01:00

31 lines
792 B
C

#pragma once
#include <stdint.h>
typedef struct {
int64_t x; /* touch horizontal center */
int64_t y; /* touch vertical center */
} touch_coordinates;
/* using ultrawide ints (narrowing later) */
typedef struct {
uint64_t slot_number;
uint64_t tracking_id; /* this increases with each new touch */
touch_coordinates position;
/* ignoring ABS_MT_TOUCH_MAJOR
and ABS_MT_WIDTH_MAJOR
*/
} touch_event;
touch_event* touch_event_new();
void touch_event_copy( touch_event *dst, touch_event *src);
touch_coordinates* new_touch_coordinates_buffer( uint8_t count);
void free_touch_coordinates_buffer( touch_coordinates* buffer);
void touch_events_array_copy( touch_event ***dst, touch_event **src, uint8_t count);
void free_touch_events_array( touch_event **buffer, uint8_t count);