dualsense_rs/dualsense/properties/
trigger_effect.rs

1/// Vibration patterns
2#[derive(Clone, Copy)]
3pub enum TriggerEffect {
4    Off,
5    Mode1,
6    Mode2,
7    Mode1_4,
8    Mode2_4,
9    Mode1_20,
10    Mode1_4_20,
11    Mode2_4_20,
12    Calibration,
13}
14
15impl TriggerEffect {
16    pub(crate) fn byte(self) -> u8 {
17        match self {
18            TriggerEffect::Off => 0x00,
19            TriggerEffect::Mode1 => 0x01,
20            TriggerEffect::Mode2 => 0x02,
21            TriggerEffect::Mode1_4 => 0x05,
22            TriggerEffect::Mode2_4 => 0x06,
23            TriggerEffect::Mode1_20 => 0x21,
24            TriggerEffect::Mode1_4_20 => 0x25,
25            TriggerEffect::Mode2_4_20 => 0x26,
26            TriggerEffect::Calibration => 0xFC,
27        }
28    }
29}