File oled_color_display.h¶
File List > disp > oled_color_display.h
Go to the documentation of this file
Source Code¶
#pragma once
#include "color_display.h"
namespace daisy
{
template <typename DisplayDriver>
class OledColorDisplay
: public ColorGraphicsDisplayImpl<OledColorDisplay<DisplayDriver>>
{
public:
OledColorDisplay() {}
virtual ~OledColorDisplay() {}
struct Config
{
typename DisplayDriver::Config driver_config;
};
void Init(Config config) { driver_.Init(config.driver_config); }
uint16_t Height() const override { return driver_.Height(); }
uint16_t Width() const override { return driver_.Width(); }
void Fill(bool on) override { driver_.Fill(on); }
void DrawPixel(uint_fast8_t x, uint_fast8_t y, bool on) override
{
driver_.DrawPixel(x, y, on);
}
void SetColorFG(uint8_t red, uint8_t green, uint8_t blue)
{
driver_.SetColorFG(red, green, blue);
}
void SetColorBG(uint8_t red, uint8_t green, uint8_t blue)
{
driver_.SetColorBG(red, green, blue);
}
void Update() override { driver_.Update(); }
private:
DisplayDriver driver_;
void Reset() { driver_.Reset(); };
void SendCommand(uint8_t cmd) { driver_.SendCommand(cmd); };
void SendData(uint8_t* buff, size_t size) { driver_.SendData(buff, size); };
};
} // namespace daisy