ESPHome 2025.12.0-dev
Loading...
Searching...
No Matches
copy_select.cpp
Go to the documentation of this file.
1#include "copy_select.h"
2#include "esphome/core/log.h"
3
4namespace esphome {
5namespace copy {
6
7static const char *const TAG = "copy.select";
8
10 source_->add_on_state_callback([this](const std::string &value, size_t index) { this->publish_state(index); });
11
13
14 if (source_->has_state())
16}
17
18void CopySelect::dump_config() { LOG_SELECT("", "Copy Select", this); }
19
20void CopySelect::control(size_t index) {
21 auto call = source_->make_call();
22 call.set_index(index);
23 call.perform();
24}
25
26} // namespace copy
27} // namespace esphome
bool has_state() const
Definition entity_base.h:90
void control(size_t index) override
select::Select * source_
Definition copy_select.h:18
void dump_config() override
value_type const & value() const
Definition optional.h:94
SelectCall & set_index(size_t index)
void add_on_state_callback(std::function< void(std::string, size_t)> &&callback)
Definition select.cpp:45
SelectCall make_call()
Instantiate a SelectCall object to modify this select component's state.
Definition select.h:53
optional< size_t > active_index() const
Return the (optional) index offset of the currently active option.
Definition select.cpp:72
SelectTraits traits
Definition select.h:33
void publish_state(const std::string &state)
Definition select.cpp:12
const FixedVector< const char * > & get_options() const
void set_options(const std::initializer_list< const char * > &options)
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7