This commit is contained in:
SoftFever
2026-01-23 17:05:56 +08:00
parent 12f51f906e
commit 9703a6b4d7
60 changed files with 13396 additions and 1785 deletions

View File

@@ -255,6 +255,8 @@ public:
long tray_read_done_bits = 0;
long tray_reading_bits = 0;
bool ams_air_print_status { false };
/** Whether this printer supports virtual trays (external/manual filament loading).
* When true, vt_slot data is used by build_filament_ams_list() to include external filaments. */
bool ams_support_virtual_tray { true };
time_t ams_user_setting_start = 0;
time_t ams_switch_filament_start = 0;
@@ -856,7 +858,16 @@ public:
bool is_enable_np{ false };
bool is_enable_ams_np{ false };
/*vi slot data*/
/**
* Virtual Tray (vt_slot) - External/manual filament loading slots.
*
* Data Flow: Populated from printer JSON via parse_vt_tray() during MachineObject::parse_json().
* Used by: Sidebar::build_filament_ams_list() when ams_support_virtual_tray is true.
*
* Virtual trays represent filament that is manually loaded into the extruder
* rather than fed through an AMS unit. This supports printers without AMS
* or scenarios where users want to bypass the AMS.
*/
std::vector<DevAmsTray> vt_slot;
DevAmsTray parse_vt_tray(json vtray);