pub trait MultiTouch<'a> {
fn enable(&self) -> Result<(), ErrorCode>;
fn disable(&self) -> Result<(), ErrorCode>;
fn get_num_touches(&self) -> usize;
fn get_touch(&self, index: usize) -> Option<TouchEvent>;
fn set_client(&self, multi_touch_client: &'a dyn MultiTouchClient);
}
Expand description
Multi-touch panels should implement this
Required Methods
Enable the touche panel
returns Ok(()) even if device is already enabled
Disable the touch panel
returns Ok(()) even if device is already disabled
fn get_num_touches(&self) -> usize
fn get_num_touches(&self) -> usize
Returns the number of maximum concurently supported touches.
fn get_touch(&self, index: usize) -> Option<TouchEvent>
fn get_touch(&self, index: usize) -> Option<TouchEvent>
Returns the touch event at index or None
.
This function must be called in the same interrupt as the event, otherwise data might not be available.
fn set_client(&self, multi_touch_client: &'a dyn MultiTouchClient)
fn set_client(&self, multi_touch_client: &'a dyn MultiTouchClient)
Set the multi-touch client