ESPHome 2025.12.0
Loading...
Searching...
No Matches
template_fan.h
Go to the documentation of this file.
1#pragma once
2
5
6namespace esphome::template_ {
7
8class TemplateFan final : public Component, public fan::Fan {
9 public:
11 void setup() override;
12 void dump_config() override;
13 void set_has_direction(bool has_direction) { this->has_direction_ = has_direction; }
14 void set_has_oscillating(bool has_oscillating) { this->has_oscillating_ = has_oscillating; }
15 void set_speed_count(int count) { this->speed_count_ = count; }
16 void set_preset_modes(std::initializer_list<const char *> presets) { this->preset_modes_ = presets; }
17 fan::FanTraits get_traits() override { return this->traits_; }
18
19 protected:
20 void control(const fan::FanCall &call) override;
21
22 bool has_oscillating_{false};
23 bool has_direction_{false};
26 std::vector<const char *> preset_modes_{};
27};
28
29} // namespace esphome::template_
std::vector< const char * > preset_modes_
void control(const fan::FanCall &call) override
void set_has_direction(bool has_direction)
void set_has_oscillating(bool has_oscillating)
fan::FanTraits get_traits() override
void set_preset_modes(std::initializer_list< const char * > presets)