vex_sdk/
touch.rs

1//! Brain Screen Touchscreen
2
3#[repr(transparent)]
4#[derive(Default, Debug, Copy, Clone, Eq, PartialEq)]
5pub struct V5_TouchEvent(pub core::ffi::c_uchar);
6
7impl V5_TouchEvent {
8    pub const kTouchEventRelease: Self = Self(0);
9    pub const kTouchEventPress: Self = Self(1);
10    pub const kTouchEventPressAuto: Self = Self(2);
11}
12
13#[repr(C)]
14#[derive(Default, Copy, Clone, Eq, PartialEq, Debug)]
15pub struct V5_TouchStatus {
16    pub lastEvent: V5_TouchEvent,
17    pub lastXpos: i16,
18    pub lastYpos: i16,
19    pub pressCount: i32,
20    pub releaseCount: i32,
21}
22
23unsafe extern "system" {
24    pub fn vexTouchUserCallbackSet(callback: unsafe extern "system" fn(V5_TouchEvent, i32, i32));
25    pub fn vexTouchDataGet(status: *mut V5_TouchStatus);
26}