pub struct Ams {
pub units: Vec<AmsUnit>,
pub external: Option<AmsTray>,
pub active_tray: Option<String>,
pub target_tray: Option<String>,
pub previous_tray: Option<String>,
pub ams_exist_bits: Option<String>,
pub tray_exist_bits: Option<String>,
pub tray_is_bbl_bits: Option<String>,
}Expand description
The full AMS picture: every unit and tray, the external spool, and the active/target/previous tray pointers (the live colour-swap signal — the tray array only arrives in full pushalls, the pointers in deltas).
Fields§
§units: Vec<AmsUnit>Attached AMS units (ams.ams[]).
external: Option<AmsTray>The external/virtual spool (vt_tray), surfaced even when not loaded.
active_tray: Option<String>Active tray id (ams.tray_now): 255 none, 254 external, else a tray id.
target_tray: Option<String>Target tray during a swap (ams.tray_tar); != active_tray ⇒ swapping.
previous_tray: Option<String>Previous tray (ams.tray_pre); reconstructs swap timelines.
ams_exist_bits: Option<String>Hex bitfield of attached units (ams.ams_exist_bits).
tray_exist_bits: Option<String>Hex bitfield of occupied slots (ams.tray_exist_bits).
tray_is_bbl_bits: Option<String>Hex bitfield of genuine-Bambu (RFID) trays (ams.tray_is_bbl_bits).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Ams
impl<'de> Deserialize<'de> for Ams
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for Ams
Auto Trait Implementations§
impl Freeze for Ams
impl RefUnwindSafe for Ams
impl Send for Ams
impl Sync for Ams
impl Unpin for Ams
impl UnsafeUnpin for Ams
impl UnwindSafe for Ams
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more