|
| | Valve () |
| |
| ValveCall | make_call () |
| | Construct a new valve call used to control the valve.
|
| |
| template<typename F > |
| void | add_on_state_callback (F &&f) |
| |
| void | publish_state (bool save=true) |
| | Publish the current state of the valve.
|
| |
| virtual ValveTraits | get_traits ()=0 |
| |
| bool | is_fully_open () const |
| | Helper method to check if the valve is fully open. Equivalent to comparing .position against 1.0.
|
| |
| bool | is_fully_closed () const |
| | Helper method to check if the valve is fully closed. Equivalent to comparing .position against 0.0.
|
| |
| | ESPDEPRECATED ("Use get_name_to() or get_log_name() instead. Will be removed in ESPHome 2027.5.0", "2026.11.0") const StringRef &get_name() const |
| | The name is in flash here; the first call makes a RAM copy that is kept for the life of the device.
|
| |
| StringRef | get_name_to (std::span< char, ENTITY_NAME_BUF_SIZE > buffer) const |
| | Get the name of this Entity, copied out of flash into buffer.
|
| |
| | ESPDEPRECATED ("Use get_name_to() or get_log_name() instead. Will be removed in ESPHome 2027.5.0", "2026.11.0") const StringRef &get_name() const |
| |
| const StringRef & | get_name_to (std::span< char, ENTITY_NAME_BUF_SIZE >) const |
| |
| bool | name_equals (const StringRef &other) const |
| |
| const ProgmemStringRef & | get_name_progmem () const |
| | The name as stored, for consumers that read flash themselves (e.g. API progmem fields).
|
| |
| size_t | write_name_to (char *buf, size_t buf_size) const |
| | Copy the name into buf (null terminated), returns its length.
|
| |
| const LogString * | get_log_name () const |
| | Get the name for a "%s" log argument (LOG_STR_ARG).
|
| |
| bool | has_own_name () const |
| |
| uint32_t | get_object_id_hash () const |
| |
| 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 |
| |
| EntityCategory | get_entity_category () const |
| |
| const char * | get_device_class_to (std::span< char, MAX_DEVICE_CLASS_LENGTH > buffer) const |
| |
| ProgmemStringRef | get_device_class_progmem () const |
| | The device class as stored (in flash on ESP8266), for consumers that read flash themselves.
|
| |
| StringRef | get_unit_of_measurement_ref () const |
| |
| const char * | get_icon_to (std::span< char, MAX_ICON_LENGTH > buffer) const |
| |
| ProgmemStringRef | get_icon_progmem () const |
| | The icon as stored (in flash on ESP8266), for consumers that read flash themselves.
|
| |
| uint32_t | get_device_id () const |
| |
| 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.
|
| |
| template<typename T > |
| ESPPreferenceObject | make_entity_preference (uint32_t version, bool in_flash) |
| | As make_entity_preference(), stored in flash or RTC memory where the backend supports the choice.
|
| |
Base class for all valve devices.
Valves currently have three properties:
- position - The current position of the valve from 0.0 (fully closed) to 1.0 (fully open). For valves with only binary OPEN/CLOSED position this will always be either 0.0 or 1.0
- current_operation - The operation the valve is currently performing, this can be one of IDLE, OPENING and CLOSING.
For users: All valve operations must be performed over the .make_call() interface. To command a valve, use .make_call() to create a call object, set all properties you wish to set, and activate the command with .perform(). For reading out the current values of the valve, use the public .position, etc. properties (these are read-only for users)
For integrations: Integrations must implement two methods: control() and get_traits(). Control will be called with the arguments supplied by the user and should be used to control all values of the valve. Also implement get_traits() to return what operations the valve supports.
Definition at line 102 of file valve.h.