13#ifdef USE_API_USER_DEFINED_ACTIONS
15class UserServiceDescriptor;
27 void begin(
bool include_internal =
false);
30#ifdef USE_BINARY_SENSOR
54#ifdef USE_API_USER_DEFINED_ACTIONS
66#ifdef USE_DATETIME_DATE
69#ifdef USE_DATETIME_TIME
72#ifdef USE_DATETIME_DATETIME
87#ifdef USE_MEDIA_PLAYER
90#ifdef USE_ALARM_CONTROL_PANEL
93#ifdef USE_WATER_HEATER
113#ifdef USE_BINARY_SENSOR
134#ifdef USE_TEXT_SENSOR
137#ifdef USE_API_USER_DEFINED_ACTIONS
149#ifdef USE_DATETIME_DATE
152#ifdef USE_DATETIME_TIME
155#ifdef USE_DATETIME_DATETIME
170#ifdef USE_MEDIA_PLAYER
173#ifdef USE_ALARM_CONTROL_PANEL
176#ifdef USE_WATER_HEATER
194 template<
typename Container>
197 if (this->
at_ >= items.size()) {
200 typename Container::value_type item = items[this->
at_];
201 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_water_heater(water_heater::WaterHeater *water_heater)=0
virtual bool on_sensor(sensor::Sensor *sensor)=0
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_infrared(infrared::Infrared *infrared)=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.
Infrared - Base class for infrared remote control implementations.
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.