20#pragma GCC diagnostic ignored "-Wunused-parameter"
34 GxEPD2_EPD(int16_t cs, int16_t dc, int16_t rst, int16_t busy, int16_t busy_level, uint32_t busy_timeout,
35 uint16_t w, uint16_t h,
GxEPD2::Panel p,
bool c,
bool pu,
bool fpu);
36 virtual void init(uint32_t serial_diag_bitrate = 0);
37 virtual void init(uint32_t serial_diag_bitrate,
bool initial, uint16_t reset_duration = 10,
bool pulldown_rst_mode =
false);
42 virtual void writeImage(
const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h,
bool invert =
false,
bool mirror_y =
false,
bool pgm =
false) = 0;
43 virtual void writeImageForFullRefresh(
const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h,
bool invert =
false,
bool mirror_y =
false,
bool pgm =
false)
46 writeImage(bitmap, x, y, w, h, invert, mirror_y, pgm);
49 virtual void writeImagePart(
const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
50 int16_t x, int16_t y, int16_t w, int16_t h,
bool invert =
false,
bool mirror_y =
false,
bool pgm =
false) = 0;
62 virtual void writeImageAgain(
const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h,
bool invert =
false,
bool mirror_y =
false,
bool pgm =
false)
65 writeImage(bitmap, x, y, w, h, invert, mirror_y, pgm);
67 virtual void writeImagePartAgain(
const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap,
68 int16_t x, int16_t y, int16_t w, int16_t h,
bool invert =
false,
bool mirror_y =
false,
bool pgm =
false)
71 writeImagePart(bitmap, x_part, y_part, w_bitmap, h_bitmap, x, y, w, h, invert, mirror_y, pgm);
82 virtual void refresh(
bool partial_update_mode =
false) = 0;
83 virtual void refresh(int16_t x, int16_t y, int16_t w, int16_t h) = 0;
88 void setBusyCallback(
void (*busyCallback)(
const void*),
const void* busy_callback_parameter = 0);
91 return (a < b ? a : b);
95 return (a > b ? a : b);
97 void selectSPI(SPIClass& spi, SPISettings spi_settings);
100 void _waitWhileBusy(
const char* comment = 0, uint16_t busy_time = 5000);
103 void _writeData(
const uint8_t* data, uint16_t n);
104 void _writeDataPGM(
const uint8_t* data, uint16_t n, int16_t fill_with_zeroes = 0);
105 void _writeDataPGM_sCS(
const uint8_t* data, uint16_t n, int16_t fill_with_zeroes = 0);
void _writeCommand(uint8_t c)
void _writeData(uint8_t d)
static uint16_t gx_uint16_max(uint16_t a, uint16_t b)
virtual void refresh(int16_t x, int16_t y, int16_t w, int16_t h)=0
virtual void writeScreenBuffer(uint8_t value)=0
virtual void init(uint32_t serial_diag_bitrate=0)
virtual void writeImageAgain(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
void _waitWhileBusy(const char *comment=0, uint16_t busy_time=5000)
void(* _busy_callback)(const void *)
virtual void powerOff()=0
virtual void writeImagePartAgain(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
void _writeCommandDataPGM(const uint8_t *pCommandData, uint8_t datalen)
virtual void writeImageForFullRefresh(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)
virtual void clearScreen(uint8_t value)=0
void selectSPI(SPIClass &spi, SPISettings spi_settings)
void _transfer(uint8_t value)
GxEPD2_EPD(int16_t cs, int16_t dc, int16_t rst, int16_t busy, int16_t busy_level, uint32_t busy_timeout, uint16_t w, uint16_t h, GxEPD2::Panel p, bool c, bool pu, bool fpu)
void _writeDataPGM_sCS(const uint8_t *data, uint16_t n, int16_t fill_with_zeroes=0)
virtual void hibernate()=0
const void * _busy_callback_parameter
virtual void writeScreenBufferAgain(uint8_t value=0xFF)
const bool hasFastPartialUpdate
virtual void refresh(bool partial_update_mode=false)=0
virtual void writeImage(const uint8_t bitmap[], int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)=0
void _writeCommandData(const uint8_t *pCommandData, uint8_t datalen)
const GxEPD2::Panel panel
virtual void writeImagePart(const uint8_t bitmap[], int16_t x_part, int16_t y_part, int16_t w_bitmap, int16_t h_bitmap, int16_t x, int16_t y, int16_t w, int16_t h, bool invert=false, bool mirror_y=false, bool pgm=false)=0
SPISettings _spi_settings
static uint16_t gx_uint16_min(uint16_t a, uint16_t b)
void _writeDataPGM(const uint8_t *data, uint16_t n, int16_t fill_with_zeroes=0)
void setBusyCallback(void(*busyCallback)(const void *), const void *busy_callback_parameter=0)
const bool hasPartialUpdate