Rename from Display Interface to abstract

This commit is contained in:
Matthew Colvin 2023-08-13 22:16:37 -05:00 committed by MatthewColvin
parent 5731148bf6
commit 305541bc52
6 changed files with 16 additions and 16 deletions

View file

@ -1,8 +1,8 @@
#include "DisplayInterface.h" #include "DisplayInterface.h"
std::shared_ptr<DisplayInterface> DisplayInterface::mInstance = nullptr; std::shared_ptr<DisplayAbstract> DisplayAbstract::mInstance = nullptr;
DisplayInterface::DisplayInterface(){ DisplayAbstract::DisplayAbstract(){
lv_init(); lv_init();
lv_disp_draw_buf_init(&mdraw_buf, mbufA, mbufB, lv_disp_draw_buf_init(&mdraw_buf, mbufA, mbufB,
@ -13,7 +13,7 @@ DisplayInterface::DisplayInterface(){
lv_disp_drv_init(&disp_drv); lv_disp_drv_init(&disp_drv);
disp_drv.hor_res = SCREEN_WIDTH; disp_drv.hor_res = SCREEN_WIDTH;
disp_drv.ver_res = SCREEN_HEIGHT; disp_drv.ver_res = SCREEN_HEIGHT;
disp_drv.flush_cb = &DisplayInterface::flushDisplayImpl; disp_drv.flush_cb = &DisplayAbstract::flushDisplayImpl;
disp_drv.draw_buf = &mdraw_buf; disp_drv.draw_buf = &mdraw_buf;
lv_disp_drv_register(&disp_drv); lv_disp_drv_register(&disp_drv);
@ -21,15 +21,15 @@ DisplayInterface::DisplayInterface(){
static lv_indev_drv_t indev_drv; static lv_indev_drv_t indev_drv;
lv_indev_drv_init(&indev_drv); lv_indev_drv_init(&indev_drv);
indev_drv.type = LV_INDEV_TYPE_POINTER; indev_drv.type = LV_INDEV_TYPE_POINTER;
indev_drv.read_cb = &DisplayInterface::screenInputImpl; indev_drv.read_cb = &DisplayAbstract::screenInputImpl;
lv_indev_drv_register(&indev_drv); lv_indev_drv_register(&indev_drv);
} }
void DisplayInterface::flushDisplayImpl(lv_disp_drv_t *disp, const lv_area_t *area, lv_color_t *color_p) { void DisplayAbstract::flushDisplayImpl(lv_disp_drv_t *disp, const lv_area_t *area, lv_color_t *color_p) {
mInstance->flushDisplay(disp, area, color_p); mInstance->flushDisplay(disp, area, color_p);
} }
void DisplayInterface::screenInputImpl(lv_indev_drv_t *indev_driver, lv_indev_data_t *data) { void DisplayAbstract::screenInputImpl(lv_indev_drv_t *indev_driver, lv_indev_data_t *data) {
mInstance->screenInput(indev_driver, data); mInstance->screenInput(indev_driver, data);
} }

View file

@ -3,7 +3,7 @@
HardwareAbstract::HardwareAbstract( HardwareAbstract::HardwareAbstract(
std::shared_ptr<BatteryInterface> aBattery, std::shared_ptr<BatteryInterface> aBattery,
std::shared_ptr<wifiHandlerInterface> aWifiHandler, std::shared_ptr<wifiHandlerInterface> aWifiHandler,
std::shared_ptr<DisplayInterface> aDisplay std::shared_ptr<DisplayAbstract> aDisplay
) )
: mBattery(std::move(aBattery)), : mBattery(std::move(aBattery)),
mWifiHandler(std::move(aWifiHandler)), mWifiHandler(std::move(aWifiHandler)),

View file

@ -17,7 +17,7 @@ class HardwareAbstract {
public: public:
HardwareAbstract(std::shared_ptr<BatteryInterface> aBattery = nullptr, HardwareAbstract(std::shared_ptr<BatteryInterface> aBattery = nullptr,
std::shared_ptr<wifiHandlerInterface> aWifiHandler = nullptr, std::shared_ptr<wifiHandlerInterface> aWifiHandler = nullptr,
std::shared_ptr<DisplayInterface> aDisplay = nullptr std::shared_ptr<DisplayAbstract> aDisplay = nullptr
); );
struct batteryStatus { struct batteryStatus {
@ -47,7 +47,7 @@ public:
private: private:
std::shared_ptr<BatteryInterface> mBattery; std::shared_ptr<BatteryInterface> mBattery;
std::shared_ptr<wifiHandlerInterface> mWifiHandler; std::shared_ptr<wifiHandlerInterface> mWifiHandler;
std::shared_ptr<DisplayInterface> mDisplay; std::shared_ptr<DisplayAbstract> mDisplay;
}; };

View file

@ -1,16 +1,16 @@
#pragma once #pragma once
#include <memory> #include <memory>
#include "lvgl.h" #include "lvgl.h"
class DisplayInterface class DisplayAbstract
{ {
public: public:
DisplayInterface(); DisplayAbstract();
virtual void setBrightness(uint8_t brightness) = 0; virtual void setBrightness(uint8_t brightness) = 0;
virtual void turnOff() = 0; virtual void turnOff() = 0;
protected: protected:
// Set this with a getInstance method in the Child Class // Set this with a getInstance method in the Child Class
static std::shared_ptr<DisplayInterface> mInstance; static std::shared_ptr<DisplayAbstract> mInstance;
virtual void flushDisplay(lv_disp_drv_t *disp, const lv_area_t *area, lv_color_t *color_p) = 0; virtual void flushDisplay(lv_disp_drv_t *disp, const lv_area_t *area, lv_color_t *color_p) = 0;
virtual void screenInput(lv_indev_drv_t *indev_driver, lv_indev_data_t *data) = 0; virtual void screenInput(lv_indev_drv_t *indev_driver, lv_indev_data_t *data) = 0;

View file

@ -5,14 +5,14 @@
std::shared_ptr<Display> Display::getInstance(int& standby_timer) std::shared_ptr<Display> Display::getInstance(int& standby_timer)
{ {
if (DisplayInterface::mInstance == nullptr) if (DisplayAbstract::mInstance == nullptr)
{ {
DisplayInterface::mInstance = std::shared_ptr<Display>(new Display(LCD_EN, LCD_BL, standby_timer)); DisplayAbstract::mInstance = std::shared_ptr<Display>(new Display(LCD_EN, LCD_BL, standby_timer));
} }
return std::static_pointer_cast<Display>(mInstance); return std::static_pointer_cast<Display>(mInstance);
} }
Display::Display(int backlight_pin, int enable_pin, int& standby_timer): DisplayInterface(), Display::Display(int backlight_pin, int enable_pin, int& standby_timer): DisplayAbstract(),
mBacklightPin(backlight_pin), mBacklightPin(backlight_pin),
mEnablePin(enable_pin), mEnablePin(enable_pin),
tft(TFT_eSPI()), tft(TFT_eSPI()),

View file

@ -15,7 +15,7 @@
#define DEFAULT_BACKLIGHT_BRIGHTNESS 128 #define DEFAULT_BACKLIGHT_BRIGHTNESS 128
class Display: public DisplayInterface class Display: public DisplayAbstract
{ {
public: public:
static std::shared_ptr<Display> getInstance(int& standby_timer); static std::shared_ptr<Display> getInstance(int& standby_timer);