#[derive(Debug, Clone, Copy)]
pub enum MouseDevice {
None,
Rival3,
}
impl MouseDevice {
pub fn from_product_id(product_id: u16) -> Self {
match product_id {
0x184c => MouseDevice::Rival3,
_ => MouseDevice::None
}
}
pub fn product_id(&self) -> u16 {
match self {
MouseDevice::None => 0,
MouseDevice::Rival3 => 0x184c
}
}
pub fn interface(&self) -> i32 {
match self {
MouseDevice::None => -1,
MouseDevice::Rival3 => 3,
}
}
pub fn get_zones(&self) -> usize {
match self {
MouseDevice::None => 0,
MouseDevice::Rival3 => 4,
}
}
}