29 lines
719 B
C
Raw Normal View History

2023-06-09 17:36:56 -05:00
#pragma once
#include "../ratgdo.h"
#include "../ratgdo_child.h"
#include "../ratgdo_state.h"
#include "esphome/components/sensor/sensor.h"
#include "esphome/core/component.h"
namespace esphome {
namespace ratgdo {
2023-06-09 17:38:30 -05:00
enum RATGDOSensorType {
2023-06-09 17:36:56 -05:00
RATGDO_OPENINGS
};
class RATGDOSensor : public sensor::Sensor, public RATGDOClient, public Component {
public:
void dump_config() override;
2023-06-09 17:44:16 -05:00
void set_ratgdo_sensor_type(RATGDOSensorType ratgdo_sensor_type_) { this->ratgdo_sensor_type_ = ratgdo_sensor_type_; }
2023-06-09 17:36:56 -05:00
void on_openings_change(uint32_t openings) override;
protected:
2023-06-09 17:40:08 -05:00
RATGDOSensorType ratgdo_sensor_type_;
2023-06-09 17:36:56 -05:00
};
} // namespace ratgdo
} // namespace esphome