13#ifdef USE_API_SERVICES
15class UserServiceDescriptor;
21 void begin(
bool include_internal =
false);
24#ifdef USE_BINARY_SENSOR
48#ifdef USE_API_SERVICES
60#ifdef USE_DATETIME_DATE
63#ifdef USE_DATETIME_TIME
66#ifdef USE_DATETIME_DATETIME
81#ifdef USE_MEDIA_PLAYER
84#ifdef USE_ALARM_CONTROL_PANEL
101#ifdef USE_BINARY_SENSOR
122#ifdef USE_TEXT_SENSOR
125#ifdef USE_API_SERVICES
137#ifdef USE_DATETIME_DATE
140#ifdef USE_DATETIME_TIME
143#ifdef USE_DATETIME_DATETIME
158#ifdef USE_MEDIA_PLAYER
161#ifdef USE_ALARM_CONTROL_PANEL
175 template<
typename Container>
178 if (this->
at_ >= items.size()) {
181 typename Container::value_type item = items[this->
at_];
182 if ((item->is_internal() && !this->include_internal_) || (this->*on_item)(item)) {
virtual bool on_text(text::Text *text)=0
virtual bool on_media_player(media_player::MediaPlayer *media_player)
void process_platform_item_(const Container &items, bool(ComponentIterator::*on_item)(typename Container::value_type))
virtual bool on_alarm_control_panel(alarm_control_panel::AlarmControlPanel *a_alarm_control_panel)=0
virtual bool on_date(datetime::DateEntity *date)=0
virtual bool on_cover(cover::Cover *cover)=0
virtual bool on_datetime(datetime::DateTimeEntity *datetime)=0
virtual bool on_select(select::Select *select)=0
void begin(bool include_internal=false)
virtual bool on_button(button::Button *button)=0
virtual bool on_sensor(sensor::Sensor *sensor)=0
enum esphome::ComponentIterator::IteratorState NONE
virtual bool on_text_sensor(text_sensor::TextSensor *text_sensor)=0
virtual bool on_valve(valve::Valve *valve)=0
virtual bool on_service(api::UserServiceDescriptor *service)
virtual bool on_fan(fan::Fan *fan)=0
virtual bool on_number(number::Number *number)=0
virtual bool on_switch(switch_::Switch *a_switch)=0
virtual bool on_camera(camera::Camera *camera)
virtual bool on_climate(climate::Climate *climate)=0
virtual bool on_time(datetime::TimeEntity *time)=0
virtual bool on_light(light::LightState *light)=0
virtual bool on_event(event::Event *event)=0
virtual bool on_lock(lock::Lock *a_lock)=0
virtual bool on_update(update::UpdateEntity *update)=0
virtual bool on_binary_sensor(binary_sensor::BinarySensor *binary_sensor)=0
Base class for all binary_sensor-type classes.
Abstract camera base class.
ClimateDevice - This is the base class for all climate integrations.
Base class for all cover devices.
This class represents the communication layer between the front-end MQTT layer and the hardware outpu...
Base class for all locks.
Base-class for all numbers.
Base-class for all selects.
Base-class for all sensors.
Base class for all switches.
Base-class for all text inputs.
Base class for all valve devices.
Providing packet encoding functions for exchanging data with a remote host.