25static_assert(
sizeof(StateAnyForwarder) <=
sizeof(
void *));
26static_assert(std::is_trivially_copyable_v<StateAnyForwarder>);
27static_assert(
sizeof(StateEnterForwarder<ACP_STATE_TRIGGERED>) <=
sizeof(
void *));
28static_assert(std::is_trivially_copyable_v<StateEnterForwarder<ACP_STATE_TRIGGERED>>);
virtual void play(const Ts &...x)=0
void trigger(const Ts &...x) ESPHOME_ALWAYS_INLINE
Base class for all automation conditions.
AlarmControlPanelCall & triggered()
AlarmControlPanelCall & pending()
bool check(const Ts &...x) override
AlarmControlPanel * parent_
AlarmControlPanelCondition(AlarmControlPanel *parent)
bool is_state_armed(AlarmControlPanelState state)
void arm_home(const char *code=nullptr)
arm the alarm in home mode
AlarmControlPanelState get_state() const
Get the state.
void disarm(const char *code=nullptr)
disarm the alarm
void arm_night(const char *code=nullptr)
arm the alarm in night mode
void arm_away(const char *code=nullptr)
arm the alarm in away mode
AlarmControlPanelCall make_call()
Make a AlarmControlPanelCall.
TEMPLATABLE_VALUE(std::string, code) void play(const Ts &...x) override
ArmAwayAction(AlarmControlPanel *alarm_control_panel)
AlarmControlPanel * alarm_control_panel_
ArmHomeAction(AlarmControlPanel *alarm_control_panel)
TEMPLATABLE_VALUE(std::string, code) void play(const Ts &...x) override
AlarmControlPanel * alarm_control_panel_
TEMPLATABLE_VALUE(std::string, code) void play(const Ts &...x) override
AlarmControlPanel * alarm_control_panel_
ArmNightAction(AlarmControlPanel *alarm_control_panel)
AlarmControlPanel * alarm_control_panel_
TEMPLATABLE_VALUE(std::string, code) void play(const Ts &...x) override
DisarmAction(AlarmControlPanel *alarm_control_panel)
PendingAction(AlarmControlPanel *alarm_control_panel)
AlarmControlPanel * alarm_control_panel_
void play(const Ts &...x) override
TriggeredAction(AlarmControlPanel *alarm_control_panel)
AlarmControlPanel * alarm_control_panel_
void play(const Ts &...x) override
Callback forwarder that triggers an Automation<> on any state change.
void operator()(AlarmControlPanelState) const
Callback forwarder that triggers an Automation<> only when the alarm enters a specific state.
void operator()(AlarmControlPanelState state) const