ESPHome
2026.11.0-dev
Loading...
Searching...
No Matches
esphome
components
media_player
automation.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
esphome/core/automation.h
"
4
#include "
media_player.h
"
5
6
namespace
esphome::media_player
{
7
10
struct
StateAnyForwarder
{
11
Automation<>
*
automation
;
12
void
operator()
(
MediaPlayerState
/*state*/
)
const
{ this->automation->
trigger
(); }
13
};
14
17
template
<MediaPlayerState State>
struct
StateEnterForwarder
{
18
Automation<>
*
automation
;
19
void
operator()
(
MediaPlayerState
state
)
const
{
20
if
(
state
== State)
21
this->automation->
trigger
();
22
}
23
};
24
25
static_assert
(
sizeof
(StateAnyForwarder) <=
sizeof
(
void
*));
26
static_assert
(std::is_trivially_copyable_v<StateAnyForwarder>);
27
static_assert
(
sizeof
(StateEnterForwarder<MediaPlayerState::MEDIA_PLAYER_STATE_IDLE>) <=
sizeof
(
void
*));
28
static_assert
(std::is_trivially_copyable_v<StateEnterForwarder<MediaPlayerState::MEDIA_PLAYER_STATE_IDLE>>);
29
30
}
// namespace esphome::media_player
esphome::Automation<>
esphome::Automation::trigger
void trigger(const Ts &...x) ESPHOME_ALWAYS_INLINE
Definition
automation.h:745
automation.h
state
bool state
Definition
fan.h:2
media_player.h
esphome::media_player
Definition
automation.h:6
esphome::media_player::MediaPlayerState
MediaPlayerState
Definition
media_player.h:34
esphome::media_player::StateAnyForwarder
Callback forwarder that triggers an Automation<> on any state change.
Definition
automation.h:10
esphome::media_player::StateAnyForwarder::automation
Automation * automation
Definition
automation.h:11
esphome::media_player::StateAnyForwarder::operator()
void operator()(MediaPlayerState) const
Definition
automation.h:12
esphome::media_player::StateEnterForwarder
Callback forwarder that triggers an Automation<> only when a specific media player state is entered.
Definition
automation.h:17
esphome::media_player::StateEnterForwarder::operator()
void operator()(MediaPlayerState state) const
Definition
automation.h:19
esphome::media_player::StateEnterForwarder::automation
Automation * automation
Definition
automation.h:18
Generated by
1.12.0