| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 | 
							- /// @file mmu2_reporting.h
 
- #pragma once
 
- #include <stdint.h>
 
- namespace MMU2 {
 
- enum CommandInProgress : uint8_t {
 
-     NoCommand = 0,
 
-     CutFilament = 'C',
 
-     EjectFilament = 'E',
 
-     Homing = 'H',
 
-     LoadFilament = 'L',
 
-     Reset = 'X',
 
-     ToolChange = 'T',
 
-     UnloadFilament = 'U',
 
- };
 
- /// Called at the begin of every MMU operation
 
- void BeginReport(CommandInProgress cip, uint16_t ec);
 
- /// Called at the end of every MMU operation
 
- void EndReport(CommandInProgress cip, uint16_t ec);
 
- /**
 
-  * @brief Called when the MMU or MK3S sends operation error (even repeatedly).
 
-  * Render MMU error screen on the LCD. This must be non-blocking
 
-  * and allow the MMU and printer to communicate with each other.
 
-  * @param[in] ec error code
 
-  */
 
- void ReportErrorHook(uint16_t ec);
 
- /// Called when the MMU sends operation progress update
 
- void ReportProgressHook(CommandInProgress cip, uint16_t ec);
 
- /// Remders the sensor status line. Also used by the "resume temperature" screen.
 
- void ReportErrorHookDynamicRender();
 
- /// Renders the static part of the sensor state line. Also used by "resuming temperature screen"
 
- void ReportErrorHookSensorLineRender();
 
- /// @returns true if the MMU is communicating and available
 
- /// can change at runtime
 
- bool MMUAvailable();
 
- /// Global Enable/Disable use MMU (to be stored in EEPROM)
 
- bool UseMMU();
 
- /// Increments EEPROM cell - number of failed loads into the nozzle
 
- /// Note: technically, this is not an MMU error but an error of the printer.
 
- void IncrementLoadFails();
 
- /// Increments EEPROM cell - number of MMU errors
 
- void IncrementMMUFails();
 
- } // namespace
 
 
  |