ESPHome 2025.12.3
Loading...
Searching...
No Matches
automation.h
Go to the documentation of this file.
1#pragma once
2
6
7namespace esphome::button {
8
9template<typename... Ts> class PressAction : public Action<Ts...> {
10 public:
11 explicit PressAction(Button *button) : button_(button) {}
12
13 void play(const Ts &...x) override { this->button_->press(); }
14
15 protected:
17};
18
19class ButtonPressTrigger : public Trigger<> {
20 public:
22 button->add_on_press_callback([this]() { this->trigger(); });
23 }
24};
25
26} // namespace esphome::button
void trigger(const Ts &...x)
Definition automation.h:204
Base class for all buttons.
Definition button.h:25
void add_on_press_callback(std::function< void()> &&callback)
Set callback for state changes.
Definition button.cpp:26
void press()
Press this button.
Definition button.cpp:21
void play(const Ts &...x) override
Definition automation.h:13
PressAction(Button *button)
Definition automation.h:11
uint16_t x
Definition tt21100.cpp:5