3#ifdef USE_DATETIME_TIME
10static const char *
const TAG =
"template.time";
13 if (this->
f_.has_value())
40 if (!this->
f_.has_value())
43 auto val = (*this->
f_)();
54 bool has_hour =
call.get_hour().has_value();
55 bool has_minute =
call.get_minute().has_value();
56 bool has_second =
call.get_second().has_value();
103 LOG_DATETIME_TIME(
"",
"Template Time",
this);
104 ESP_LOGCONFIG(TAG,
" Optimistic: %s", YESNO(this->
optimistic_));
105 LOG_UPDATE_INTERVAL(
this);
virtual ESPPreferenceObject make_preference(size_t length, uint32_t type, bool in_flash)=0
uint32_t get_object_id_hash()
void trigger(Ts... x)
Inform the parent automation that the event has triggered.
optional< uint8_t > get_hour() const
optional< uint8_t > get_second() const
optional< uint8_t > get_minute() const
void control(const datetime::TimeCall &call) override
optional< std::function< optional< ESPTime >()> > f_
void dump_config() override
ESPPreferenceObject pref_
Trigger< ESPTime > * set_trigger_
Providing packet encoding functions for exchanging data with a remote host.
ESPPreferences * global_preferences
A more user-friendly version of struct tm from time.h.
uint8_t minute
minutes after the hour [0-59]
uint8_t second
seconds after the minute [0-60]
uint8_t hour
hours since midnight [0-23]
void apply(TimeEntity *time)