ElVit-esphome_components/components/panasonic_heatpump/select/panasonic_heatpump_select.h

41 lines
974 B
C++

#pragma once
#include "esphome/core/component.h"
#include "esphome/components/select/select.h"
#include "../panasonic_heatpump.h"
#include "../decode.h"
#include "../commands.h"
namespace esphome {
namespace panasonic_heatpump {
enum SelectIds : uint8_t {
CONF_SET2,
CONF_SET3,
CONF_SET4,
CONF_SET9,
CONF_SET17,
CONF_SET26,
CONF_SET35,
CONF_SET39,
CONF_SET40,
CONF_SET41,
CONF_SET42,
CONF_SET43,
CONF_SET44,
CONF_SET45,
};
class PanasonicHeatpumpSelect : public select::Select,
public Component,
public Parented<PanasonicHeatpumpComponent>,
public PanasonicHeatpumpEntity {
public:
PanasonicHeatpumpSelect() = default;
void dump_config() override;
void publish_new_state(const std::vector<uint8_t>& data) override;
protected:
void control(const std::string& value) override;
};
} // namespace panasonic_heatpump
} // namespace esphome