@@ -77,7 +77,6 @@ class ProbeTempComp {
77
77
static void reset_index () { calib_idx = 0 ; };
78
78
static uint8_t get_index () { return calib_idx; }
79
79
static void reset ();
80
- static void clear_offsets (const TempSensorID tsi);
81
80
static void clear_all_offsets () {
82
81
TERN_ (PTC_PROBE, clear_offsets (TSI_PROBE));
83
82
TERN_ (PTC_BED, clear_offsets (TSI_BED));
@@ -88,10 +87,16 @@ class ProbeTempComp {
88
87
static void prepare_new_calibration (const_float_t init_meas_z);
89
88
static void push_back_new_measurement (const TempSensorID tsi, const_float_t meas_z);
90
89
static bool finish_calibration (const TempSensorID tsi);
91
- static void compensate_measurement (const TempSensorID tsi, const celsius_t temp, float &meas_z);
90
+ static void set_enabled (const bool ena) { enabled = ena; }
91
+
92
+ // Apply all temperature compensation adjustments
93
+ static void apply_compensation (float &meas_z);
92
94
93
95
private:
94
96
static uint8_t calib_idx;
97
+ static bool enabled;
98
+
99
+ static void clear_offsets (const TempSensorID tsi);
95
100
96
101
/* *
97
102
* Base value. Temperature compensation values will be deltas
@@ -104,6 +109,8 @@ class ProbeTempComp {
104
109
* to allow generating values of higher temperatures.
105
110
*/
106
111
static bool linear_regression (const TempSensorID tsi, float &k, float &d);
112
+
113
+ static void compensate_measurement (const TempSensorID tsi, const celsius_t temp, float &meas_z);
107
114
};
108
115
109
116
extern ProbeTempComp ptc;
0 commit comments