-
Notifications
You must be signed in to change notification settings - Fork 0
/
rego600_display.h
35 lines (28 loc) · 1.06 KB
/
rego600_display.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#ifndef _REGO600_DISPLAY_H_
#define _REGO600_DISPLAY_H_
#include "esphome.h"
#include "rego600.h"
#include "rego600_config.h"
#include "rego600_definitions.h"
#include <tuple>
#include <vector>
class rego600_display : public esphome::PollingComponent {
private:
rego600* m_rego600;
static constexpr const char* TAG = "Rego600Display";
void update_display();
public:
esphome::text_sensor::TextSensor* display_line1 = new esphome::text_sensor::TextSensor();
esphome::text_sensor::TextSensor* display_line2 = new esphome::text_sensor::TextSensor();
esphome::text_sensor::TextSensor* display_line3 = new esphome::text_sensor::TextSensor();
esphome::text_sensor::TextSensor* display_line4 = new esphome::text_sensor::TextSensor();
rego600_display(rego600* rego)
: PollingComponent(DISPLAY_READ_INTERVAL)
, m_rego600(rego)
{
}
void delay_update(uint32_t delay);
void update() override final;
};
#define get_display(identifier) static_cast<rego600_display*>(id(identifier).get_component(0))
#endif