ESPHome 2025.5.0
Loading...
Searching...
No Matches
gt911_touchscreen.h
Go to the documentation of this file.
1#pragma once
2
6#include "esphome/core/hal.h"
7
8namespace esphome {
9namespace gt911 {
10
12 public:
13 virtual void update_button(uint8_t index, bool state) = 0;
14};
15
17 public:
18 void setup() override;
19 void dump_config() override;
20
22 void set_reset_pin(GPIOPin *pin) { this->reset_pin_ = pin; }
23 void register_button_listener(GT911ButtonListener *listener) { this->button_listeners_.push_back(listener); }
24
25 protected:
26 void update_touches() override;
27
30 std::vector<GT911ButtonListener *> button_listeners_;
31 uint8_t button_state_{0xFF}; // last button state. Initial FF guarantees first update.
32};
33
34} // namespace gt911
35} // namespace esphome
virtual void update_button(uint8_t index, bool state)=0
void register_button_listener(GT911ButtonListener *listener)
std::vector< GT911ButtonListener * > button_listeners_
void set_interrupt_pin(InternalGPIOPin *pin)
This Class provides the methods to read/write bytes from/to an i2c device.
Definition i2c.h:133
bool state
Definition fan.h:0
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7