#pragma once #include "Arduino.h" #include #include "logos.h" #include "utils.h" class OLED { private: U8G2 u8g2; String revision; void drawCurvedLineV(int xStart, int yStart, int vert, int horiz); void drawCurvedLine(int xStart, int yStart, int horiz, int vert); void drawLogoAfraPay(); void drawLogoBitmap(int width, int height, unsigned char bits[], int yOffset = 0); void drawFullScreenText(const String& textTop, const String& textBottom); public: explicit OLED(U8G2 u8g2); void begin(); void drawLogo(e_logo logo); void drawStatusText(const String& status, const String& statusRightAligned = "", bool japan = false); void updateOLED(e_state state, const String& statusText, const String& statusTextRightAligned = "", bool japan = false); void updateOLED(e_state state); };