ESPHome  2022.6.2
template_number.h
Go to the documentation of this file.
1 #pragma once
2 
7 
8 namespace esphome {
9 namespace template_ {
10 
12  public:
13  void set_template(std::function<optional<float>()> &&f) { this->f_ = f; }
14 
15  void setup() override;
16  void update() override;
17  void dump_config() override;
18  float get_setup_priority() const override { return setup_priority::HARDWARE; }
19 
21  void set_optimistic(bool optimistic) { optimistic_ = optimistic; }
22  void set_initial_value(float initial_value) { initial_value_ = initial_value; }
23  void set_restore_value(bool restore_value) { this->restore_value_ = restore_value; }
24 
25  protected:
26  void control(float value) override;
27  bool optimistic_{false};
28  float initial_value_{NAN};
29  bool restore_value_{false};
32 
34 };
35 
36 } // namespace template_
37 } // namespace esphome
void set_template(std::function< optional< float >()> &&f)
Trigger< float > * get_set_trigger() const
void set_restore_value(bool restore_value)
This class simplifies creating components that periodically check a state.
Definition: component.h:266
optional< std::function< optional< float >)> > f_
float get_setup_priority() const override
void set_optimistic(bool optimistic)
Base-class for all numbers.
Definition: number.h:29
const float HARDWARE
For components that deal with hardware and are very important like GPIO switch.
Definition: component.cpp:17
Definition: a4988.cpp:4
void set_initial_value(float initial_value)
void control(float value) override