Remaining Time for FTDI EVE, bp for ExtUI (#20549)

Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
This commit is contained in:
LinFor
2020-12-24 01:37:17 +03:00
committed by GitHub
parent 59de35e749
commit 2d88a2cfb7
7 changed files with 156 additions and 85 deletions

View File

@@ -57,6 +57,10 @@
#define MULTI_MANUAL 1
#endif
#if HAS_DISPLAY
#include "../module/printcounter.h"
#endif
#if HAS_WIRED_LCD
#include "../MarlinCore.h"
@@ -357,11 +361,20 @@ public:
static void set_progress(const progress_t p) { progress_override = _MIN(p, 100U * (PROGRESS_SCALE)); }
static void set_progress_done() { progress_override = (PROGRESS_MASK + 1U) + 100U * (PROGRESS_SCALE); }
static void progress_reset() { if (progress_override & (PROGRESS_MASK + 1U)) set_progress(0); }
#if BOTH(LCD_SET_PROGRESS_MANUALLY, USE_M73_REMAINING_TIME)
static uint32_t remaining_time;
FORCE_INLINE static void set_remaining_time(const uint32_t r) { remaining_time = r; }
FORCE_INLINE static uint32_t get_remaining_time() { return remaining_time; }
FORCE_INLINE static void reset_remaining_time() { set_remaining_time(0); }
#if ENABLED(SHOW_REMAINING_TIME)
static inline uint32_t _calculated_remaining_time() {
const duration_t elapsed = print_job_timer.duration();
const progress_t progress = _get_progress();
return elapsed.value * (100 * (PROGRESS_SCALE) - progress) / progress;
}
#if ENABLED(USE_M73_REMAINING_TIME)
static uint32_t remaining_time;
FORCE_INLINE static void set_remaining_time(const uint32_t r) { remaining_time = r; }
FORCE_INLINE static uint32_t get_remaining_time() { return remaining_time ?: _calculated_remaining_time(); }
FORCE_INLINE static void reset_remaining_time() { set_remaining_time(0); }
#else
FORCE_INLINE static uint32_t get_remaining_time() { return _calculated_remaining_time(); }
#endif
#endif
#endif
static progress_t _get_progress();