ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
esphome::demo::DemoValve Class Referencefinal

#include <demo_valve.h>

Inheritance diagram for esphome::demo::DemoValve:
esphome::valve::Valve esphome::EntityBase

Public Member Functions

valve::ValveTraits get_traits () override
 
void set_type (DemoValveType type)
 
- Public Member Functions inherited from esphome::valve::Valve
 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.
 
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.
 
- Public Member Functions inherited from esphome::EntityBase
 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.
 

Protected Member Functions

void control (const valve::ValveCall &call) override
 
- Protected Member Functions inherited from esphome::valve::Valve
optional< ValveRestoreState > restore_state_ ()
 
- Protected Member Functions inherited from esphome::EntityBase
friend void::setup ()
 
friend void::original_setup ()
 
void configure_entity_ (const char *name, uint32_t object_id_hash, uint32_t entity_fields)
 Combined entity setup from codegen: set name, object_id hash, entity string indices, and flags.
 
void set_device_ (Device *device)
 
ESPPreferenceObject make_entity_preference_ (size_t size, uint32_t version)
 Non-template helpers for make_entity_preference() to avoid code bloat.
 
ESPPreferenceObject make_entity_preference_ (size_t size, uint32_t version, bool in_flash)
 
uint32_t entity_preference_key_ (uint32_t version)
 Key for both helpers; preference hash migration goes here.
 

Protected Attributes

DemoValveType type_ {}
 
- Protected Attributes inherited from esphome::valve::Valve
friend ValveCall
 
LazyCallbackManager< void()> state_callback_ {}
 
ESPPreferenceObject rtc_
 
- Protected Attributes inherited from esphome::EntityBase
ProgmemStringRef name_
 
uint32_t object_id_hash_ {}
 
Device * device_ {}
 
struct esphome::EntityBase::EntityFlags flags_
 
uint8_t device_class_idx_ {}
 
uint8_t uom_idx_ {}
 
uint8_t icon_idx_ {}
 

Additional Inherited Members

- Data Fields inherited from esphome::valve::Valve
ValveOperation current_operation {VALVE_OPERATION_IDLE}
 The current operation of the valve (idle, opening, closing).
 
float position
 The position of the valve from 0.0 (fully closed) to 1.0 (fully open).
 

Detailed Description

Definition at line 12 of file demo_valve.h.

Member Function Documentation

◆ control()

void esphome::demo::DemoValve::control ( const valve::ValveCall & call)
inlineoverrideprotectedvirtual

Implements esphome::valve::Valve.

Definition at line 27 of file demo_valve.h.

◆ get_traits()

valve::ValveTraits esphome::demo::DemoValve::get_traits ( )
inlineoverridevirtual

Implements esphome::valve::Valve.

Definition at line 14 of file demo_valve.h.

◆ set_type()

void esphome::demo::DemoValve::set_type ( DemoValveType type)
inline

Definition at line 24 of file demo_valve.h.

Field Documentation

◆ type_

DemoValveType esphome::demo::DemoValve::type_ {}
protected

Definition at line 52 of file demo_valve.h.


The documentation for this class was generated from the following file: