azizo_core/
state.rs

1//! Controller state snapshot.
2
3/// A snapshot of the controller's current state.
4///
5/// This captures all slider/mode values at a point in time.
6/// Use [`DisplayController::get_state`](crate::DisplayController::get_state) to obtain a snapshot.
7#[derive(Debug, Clone, Default)]
8pub struct ControllerState {
9    /// The current mode ID (1=Normal, 2=Vivid, 6=Manual, 7=EyeCare).
10    pub mode_id: i32,
11    /// Whether monochrome/e-reading mode is active.
12    pub is_monochrome: bool,
13    /// Display dimming level (40-100 in splendid units).
14    pub dimming: i32,
15    /// Manual mode color temperature slider value (0-100).
16    pub manual_slider: u8,
17    /// Eye care mode level (0-4).
18    pub eyecare_level: u8,
19    /// E-reading grayscale level (0-4).
20    pub ereading_grayscale: u8,
21    /// E-reading temperature value.
22    pub ereading_temp: u8,
23    /// The last non-e-reading mode ID (for restoration).
24    pub last_non_ereading_mode: i32,
25}