From 025118da3ef925df53f2817bf401d3aac1c0f7db Mon Sep 17 00:00:00 2001 From: Bob-the-Kuhn Date: Sun, 4 Mar 2018 16:12:30 -0600 Subject: [PATCH] Init print_job_timer in setup() instead of "early" (#9937) --- Marlin/src/Marlin.cpp | 6 +++++- Marlin/src/libs/stopwatch.h | 5 +++++ Marlin/src/module/printcounter.cpp | 4 ---- Marlin/src/module/printcounter.h | 8 ++++++-- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/Marlin/src/Marlin.cpp b/Marlin/src/Marlin.cpp index 49745ed3be..167339ec6c 100644 --- a/Marlin/src/Marlin.cpp +++ b/Marlin/src/Marlin.cpp @@ -730,7 +730,11 @@ void setup() { // Load data from EEPROM if available (or use defaults) // This also updates variables in the planner, elsewhere (void)settings.load(); - + + #if ENABLED(PRINTCOUNTER) + print_job_timer.init(); + #endif + #if HAS_M206_COMMAND // Initialize current position based on home_offset COPY(current_position, home_offset); diff --git a/Marlin/src/libs/stopwatch.h b/Marlin/src/libs/stopwatch.h index c092ee53c8..4a1cdcfcf5 100644 --- a/Marlin/src/libs/stopwatch.h +++ b/Marlin/src/libs/stopwatch.h @@ -52,6 +52,11 @@ class Stopwatch { */ Stopwatch(); + /** + * @brief Initialize the stopwatch + */ + inline void init() {} + /** * @brief Stops the stopwatch * @details Stops the running timer, it will silently ignore the request if diff --git a/Marlin/src/module/printcounter.cpp b/Marlin/src/module/printcounter.cpp index ab60f391b3..32e4d83212 100644 --- a/Marlin/src/module/printcounter.cpp +++ b/Marlin/src/module/printcounter.cpp @@ -28,10 +28,6 @@ #include "../Marlin.h" -PrintCounter::PrintCounter(): super() { - this->loadStats(); -} - millis_t PrintCounter::deltaDuration() { #if ENABLED(DEBUG_PRINTCOUNTER) PrintCounter::debug(PSTR("deltaDuration")); diff --git a/Marlin/src/module/printcounter.h b/Marlin/src/module/printcounter.h index fb4b18216a..640d505c58 100644 --- a/Marlin/src/module/printcounter.h +++ b/Marlin/src/module/printcounter.h @@ -99,10 +99,14 @@ class PrintCounter: public Stopwatch { millis_t deltaDuration(); public: + /** - * @brief Class constructor + * @brief Initialize the print counter */ - PrintCounter(); + inline void init() { + super::init(); + this->loadStats(); + } /** * @brief Checks if Print Statistics has been loaded