[template] Avoid heap allocation for number set trigger

This commit is contained in:
J. Nick Koston
2026-02-02 04:10:36 +01:00
parent 1ff2f3b6a3
commit 2342551402
2 changed files with 3 additions and 3 deletions

View File

@@ -36,7 +36,7 @@ void TemplateNumber::update() {
}
void TemplateNumber::control(float value) {
this->set_trigger_->trigger(value);
this->set_trigger_.trigger(value);
if (this->optimistic_)
this->publish_state(value);

View File

@@ -17,7 +17,7 @@ class TemplateNumber final : public number::Number, public PollingComponent {
void dump_config() override;
float get_setup_priority() const override { return setup_priority::HARDWARE; }
Trigger<float> *get_set_trigger() const { return set_trigger_; }
Trigger<float> *get_set_trigger() { return &this->set_trigger_; }
void set_optimistic(bool optimistic) { optimistic_ = optimistic; }
void set_initial_value(float initial_value) { initial_value_ = initial_value; }
void set_restore_value(bool restore_value) { this->restore_value_ = restore_value; }
@@ -27,7 +27,7 @@ class TemplateNumber final : public number::Number, public PollingComponent {
bool optimistic_{false};
float initial_value_{NAN};
bool restore_value_{false};
Trigger<float> *set_trigger_ = new Trigger<float>();
Trigger<float> set_trigger_;
TemplateLambda<float> f_;
ESPPreferenceObject pref_;