publish to select
This commit is contained in:
parent
6454dc6d58
commit
2c29ef0e71
@ -19,6 +19,17 @@ template<typename C, typename M> static void publish(C *c, M m) {
|
|||||||
c->publish_state(m);
|
c->publish_state(m);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void OptomaRS232Component::publish_input_(const std::string &state) const {
|
||||||
|
#ifdef USE_SELECT
|
||||||
|
if (beamer_input_select_)
|
||||||
|
beamer_input_select_->publish_state(state);
|
||||||
|
#endif
|
||||||
|
#ifdef USE_TEXT_SENSOR
|
||||||
|
if (beamer_input_text_sensor_)
|
||||||
|
beamer_input_text_sensor_->publish_state(state);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
void OptomaRS232Component::dump_config() {
|
void OptomaRS232Component::dump_config() {
|
||||||
ESP_LOGCONFIG(TAG, "Optoma RS232:");
|
ESP_LOGCONFIG(TAG, "Optoma RS232:");
|
||||||
check_uart_settings(9600);
|
check_uart_settings(9600);
|
||||||
@ -137,20 +148,20 @@ void OptomaRS232Component::process_query_response_(const std::string &str) {
|
|||||||
switch (input) {
|
switch (input) {
|
||||||
case Inputs::HDMI_1:
|
case Inputs::HDMI_1:
|
||||||
current_input_ = Inputs::HDMI_1;
|
current_input_ = Inputs::HDMI_1;
|
||||||
publish(beamer_input_text_sensor_, "HDMI 1");
|
publish_input_("HDMI 1");
|
||||||
break;
|
break;
|
||||||
case Inputs::HDMI_2:
|
case Inputs::HDMI_2:
|
||||||
current_input_ = Inputs::HDMI_2;
|
current_input_ = Inputs::HDMI_2;
|
||||||
publish(beamer_input_text_sensor_, "HDMI 2");
|
publish_input_("HDMI 2");
|
||||||
break;
|
break;
|
||||||
case Inputs::VGA:
|
case Inputs::VGA:
|
||||||
current_input_ = Inputs::VGA;
|
current_input_ = Inputs::VGA;
|
||||||
publish(beamer_input_text_sensor_, "VGA");
|
publish_input_("VGA");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
case Inputs::UNKNOWN:
|
case Inputs::UNKNOWN:
|
||||||
current_input_ = Inputs::UNKNOWN;
|
current_input_ = Inputs::UNKNOWN;
|
||||||
publish(beamer_input_text_sensor_, "Unknown");
|
publish_input_("Unknown");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
buf[8] = 0;
|
buf[8] = 0;
|
||||||
|
@ -72,6 +72,8 @@ class OptomaRS232Component : public uart::UARTDevice, public PollingComponent {
|
|||||||
private:
|
private:
|
||||||
char buffer_[128]{};
|
char buffer_[128]{};
|
||||||
size_t cursor_ = 0;
|
size_t cursor_ = 0;
|
||||||
|
|
||||||
|
void publish_input_(const std::string &state) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef USE_SELECT
|
#ifdef USE_SELECT
|
||||||
|
Loading…
x
Reference in New Issue
Block a user