6static const char *
const TAG =
"template.fan";
14 if (restore.has_value()) {
15 restore->apply(*
this);
22 auto call_state =
call.get_state();
23 if (call_state.has_value())
24 this->
state = *call_state;
25 auto call_speed =
call.get_speed();
26 if (call_speed.has_value() && (this->speed_count_ > 0))
27 this->
speed = *call_speed;
28 auto call_oscillating =
call.get_oscillating();
29 if (call_oscillating.has_value() && this->has_oscillating_)
31 auto call_direction =
call.get_direction();
32 if (call_direction.has_value() && this->has_direction_)
void apply_preset_mode_(const FanCall &call)
Apply preset mode from a FanCall (handles speed-clears-preset convention)
FanDirection direction
The current direction of the fan.
bool oscillating
The current oscillation state of the fan.
bool state
The current on/off state of the fan.
int speed
The current fan speed level.
optional< FanRestoreState > restore_state_()
void control(const fan::FanCall &call) override
void dump_config() override