|
ESPHome 2026.2.1
|
#include <text_sensor.h>
Public Member Functions | |
| ESPDEPRECATED("Use get_raw_state() instead of .raw_state. Will be removed in 2026.6.0", "2025.12.0") std | TextSensor ()=default |
| ~TextSensor ()=default | |
| const std::string & | get_state () const |
| Getter-syntax for .state. | |
| const std::string & | get_raw_state () const |
| Getter-syntax for .raw_state. | |
| void | publish_state (const std::string &state) |
| void | publish_state (const char *state) |
| void | publish_state (const char *state, size_t len) |
| void | add_filter (Filter *filter) |
| Add a filter to the filter chain. Will be appended to the back. | |
| void | add_filters (std::initializer_list< Filter * > filters) |
| Add a list of vectors to the back of the filter chain. | |
| void | set_filters (std::initializer_list< Filter * > filters) |
| Clear the filters and replace them by filters. | |
| void | clear_filters () |
| Clear the entire filter chain. | |
| void | add_on_state_callback (std::function< void(const std::string &)> callback) |
| void | add_on_raw_state_callback (std::function< void(const std::string &)> callback) |
| Add a callback that will be called every time the sensor sends a raw value. | |
| void | internal_send_state_to_frontend (const std::string &state) |
| void | internal_send_state_to_frontend (const char *state, size_t len) |
Public Member Functions inherited from esphome::EntityBase | |
| const StringRef & | get_name () const |
| void | set_name (const char *name) |
| void | set_name (const char *name, uint32_t object_id_hash) |
| Set name with pre-computed object_id hash (avoids runtime hash calculation) Use hash=0 for dynamic names that need runtime calculation. | |
| bool | has_own_name () const |
| ESPDEPRECATED("object_id mangles names and all object_id methods are planned for removal " "(see https://github.com/esphome/backlog/issues/76). " "Now is the time to stop using object_id. If still needed, use get_object_id_to() " "which will remain available longer. get_object_id() will be removed in 2026.7.0", "2025.12.0") std uint32_t | get_object_id_hash () |
| StringRef | get_object_id_to (std::span< char, OBJECT_ID_MAX_LEN > buf) const |
| Get object_id with zero heap allocation For static case: returns StringRef to internal storage (buffer unused) For dynamic case: formats into buffer and returns StringRef to buffer. | |
| size_t | write_object_id_to (char *buf, size_t buf_size) const |
| Write object_id directly to buffer, returns length written (excluding null) Useful for building compound strings without intermediate buffer. | |
| bool | is_internal () const |
| void | set_internal (bool internal) |
| bool | is_disabled_by_default () const |
| void | set_disabled_by_default (bool disabled_by_default) |
| EntityCategory | get_entity_category () const |
| void | set_entity_category (EntityCategory entity_category) |
| ESPDEPRECATED("Use get_icon_ref() instead for better performance (avoids string copy). Will be removed in ESPHome 2026.5.0", "2025.11.0") std void | set_icon (const char *icon) |
| StringRef | get_icon_ref () const |
| uint32_t | get_device_id () const |
| void | set_device (Device *device) |
| Device * | get_device () const |
| bool | has_state () const |
| void | set_has_state (bool state) |
| ESPDEPRECATED ("Use make_entity_preference<T>() instead, or preferences won't be migrated. " "See https://github.com/esphome/backlog/issues/85. Will be removed in 2027.1.0.", "2026.7.0") uint32_t get_preference_hash() | |
| Get a unique hash for storing preferences/settings for this entity. | |
| template<typename T > | |
| ESPPreferenceObject | make_entity_preference (uint32_t version=0) |
| Create a preference object for storing this entity's state/settings. | |
Public Member Functions inherited from esphome::EntityBase_DeviceClass | |
| ESPDEPRECATED("Use get_device_class_ref() instead for better performance (avoids string copy). Will be removed in " "ESPHome 2026.5.0", "2025.11.0") std void | set_device_class (const char *device_class) |
| Get the device class, using the manual override if set. | |
| StringRef | get_device_class_ref () const |
| Get the device class as StringRef. | |
Data Fields | |
| std::string | state |
Protected Member Functions | |
| void | notify_frontend_ () |
| Notify frontend that state has changed (assumes this->state is already set) | |
Protected Member Functions inherited from esphome::EntityBase | |
| ESPPreferenceObject | make_entity_preference_ (size_t size, uint32_t version) |
| Non-template helper for make_entity_preference() to avoid code bloat. | |
| void | calc_object_id_ () |
Protected Attributes | |
| LazyCallbackManager< void(const std::string &)> | raw_callback_ |
| Storage for raw state callbacks. | |
| LazyCallbackManager< void(const std::string &)> | callback_ |
| Storage for filtered state callbacks. | |
| Filter * | filter_list_ {nullptr} |
| Store all active filters. | |
Protected Attributes inherited from esphome::EntityBase | |
| StringRef | name_ |
| const char * | icon_c_str_ {nullptr} |
| uint32_t | object_id_hash_ {} |
| Device * | device_ {} |
| struct esphome::EntityBase::EntityFlags | flags_ |
Protected Attributes inherited from esphome::EntityBase_DeviceClass | |
| const char * | device_class_ {nullptr} |
| Device class override. | |
Definition at line 25 of file text_sensor.h.
|
default |
|
default |
| void esphome::text_sensor::TextSensor::add_filter | ( | Filter * | filter | ) |
Add a filter to the filter chain. Will be appended to the back.
Definition at line 51 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::add_filters | ( | std::initializer_list< Filter * > | filters | ) |
Add a list of vectors to the back of the filter chain.
Definition at line 65 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::add_on_raw_state_callback | ( | std::function< void(const std::string &)> | callback | ) |
Add a callback that will be called every time the sensor sends a raw value.
Definition at line 84 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::add_on_state_callback | ( | std::function< void(const std::string &)> | callback | ) |
Definition at line 81 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::clear_filters | ( | ) |
Clear the entire filter chain.
Definition at line 74 of file text_sensor.cpp.
| const std::string & esphome::text_sensor::TextSensor::get_raw_state | ( | ) | const |
Getter-syntax for .raw_state.
Definition at line 89 of file text_sensor.cpp.
| const std::string & esphome::text_sensor::TextSensor::get_state | ( | ) | const |
Getter-syntax for .state.
Definition at line 88 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::internal_send_state_to_frontend | ( | const char * | state, |
| size_t | len ) |
Definition at line 103 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::internal_send_state_to_frontend | ( | const std::string & | state | ) |
Definition at line 99 of file text_sensor.cpp.
|
protected |
Notify frontend that state has changed (assumes this->state is already set)
Definition at line 111 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::publish_state | ( | const char * | state | ) |
Definition at line 24 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::publish_state | ( | const char * | state, |
| size_t | len ) |
Definition at line 26 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::publish_state | ( | const std::string & | state | ) |
Definition at line 22 of file text_sensor.cpp.
| void esphome::text_sensor::TextSensor::set_filters | ( | std::initializer_list< Filter * > | filters | ) |
Clear the filters and replace them by filters.
Definition at line 70 of file text_sensor.cpp.
|
protected |
Storage for filtered state callbacks.
Definition at line 74 of file text_sensor.h.
|
protected |
Store all active filters.
Definition at line 76 of file text_sensor.h.
|
protected |
Storage for raw state callbacks.
Definition at line 73 of file text_sensor.h.
| std::string esphome::text_sensor::TextSensor::state |
Definition at line 27 of file text_sensor.h.