This is an old version of the documentation. View the latest version here.
Control Surface  1.0.0
MIDI Control Surface library for Arduino
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Private Attributes | List of all members
SSD1306_DisplayInterface Class Referenceabstract

This class creates a mapping between the Adafruit_SSD1306 display driver and the general display interface used by the Control Surface library. More...

#include <DisplayInterfaceSSD1306.hpp>

Inheritance diagram for SSD1306_DisplayInterface:
Collaboration diagram for SSD1306_DisplayInterface:

Public Member Functions

void clear () override
 Clear the frame buffer or display. More...
 
void drawBackground () override=0
 Draw a custom background. More...
 
void display () override
 Write the frame buffer to the display. More...
 
void drawPixel (int16_t x, int16_t y, uint16_t color) override
 Paint a single pixel with the given color. More...
 
void setTextColor (uint16_t color) override
 Set the text color. More...
 
void setTextSize (uint8_t size) override
 Set the text size. More...
 
void setCursor (int16_t x, int16_t y) override
 Set the cursor position. More...
 
size_t write (uint8_t c) override
 Write a character to the display. More...
 
void drawLine (int16_t x0, int16_t y0, int16_t x1, int16_t y1, uint16_t color) override
 Draw a line between two points. More...
 
void drawFastVLine (int16_t x, int16_t y, int16_t h, uint16_t color) override
 Draw a vertical line. More...
 
void drawFastHLine (int16_t x, int16_t y, int16_t w, uint16_t color) override
 Draw a horizontal line. More...
 
void drawXBitmap (int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, int16_t h, uint16_t color) override
 Draw a bitmap to the display. More...
 
virtual void begin ()
 Initialize the display. More...
 
virtual void fillRect (int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color)
 Draw a filled rectangle. More...
 
virtual void drawCircle (int16_t x0, int16_t y0, int16_t r, uint16_t color)
 Draw a circle. More...
 
virtual void fillCircle (int16_t x0, int16_t y0, int16_t r, uint16_t color)
 Draw a disk (filled circle). More...
 
void clearAndDrawBackground ()
 Clear the frame buffer, and draw the custom background. More...
 

Static Public Member Functions

static void beginAll ()
 Initialize all displays. More...
 

Protected Member Functions

 SSD1306_DisplayInterface (Adafruit_SSD1306 &display)
 

Protected Attributes

Adafruit_SSD1306 & disp
 
DisplayInterfacenext
 
DisplayInterfaceprevious
 

Static Private Attributes

static DoublyLinkedList< DisplayInterfaceelements
 

Detailed Description

This class creates a mapping between the Adafruit_SSD1306 display driver and the general display interface used by the Control Surface library.

Examples
2.VU-Meter-OLED-USB-DAC.ino, MCU-OLED-SSD1306-x2.ino, MCU-OLED-SSD1306.ino, and VU-Meter-Bridge.ino.

Definition at line 13 of file DisplayInterfaceSSD1306.hpp.

Constructor & Destructor Documentation

◆ SSD1306_DisplayInterface()

SSD1306_DisplayInterface::SSD1306_DisplayInterface ( Adafruit_SSD1306 &  display)
inlineprotected

Definition at line 15 of file DisplayInterfaceSSD1306.hpp.

Member Function Documentation

◆ clear()

void SSD1306_DisplayInterface::clear ( )
inlineoverridevirtual

Clear the frame buffer or display.

Implements DisplayInterface.

Definition at line 18 of file DisplayInterfaceSSD1306.hpp.

◆ drawBackground()

void SSD1306_DisplayInterface::drawBackground ( )
overridepure virtual

◆ display()

void SSD1306_DisplayInterface::display ( )
inlineoverridevirtual

Write the frame buffer to the display.

Implements DisplayInterface.

Definition at line 20 of file DisplayInterfaceSSD1306.hpp.

◆ drawPixel()

void SSD1306_DisplayInterface::drawPixel ( int16_t  x,
int16_t  y,
uint16_t  color 
)
inlineoverridevirtual

Paint a single pixel with the given color.

Implements DisplayInterface.

Definition at line 22 of file DisplayInterfaceSSD1306.hpp.

◆ setTextColor()

void SSD1306_DisplayInterface::setTextColor ( uint16_t  color)
inlineoverridevirtual

Set the text color.

Implements DisplayInterface.

Definition at line 26 of file DisplayInterfaceSSD1306.hpp.

◆ setTextSize()

void SSD1306_DisplayInterface::setTextSize ( uint8_t  size)
inlineoverridevirtual

Set the text size.

Implements DisplayInterface.

Definition at line 27 of file DisplayInterfaceSSD1306.hpp.

◆ setCursor()

void SSD1306_DisplayInterface::setCursor ( int16_t  x,
int16_t  y 
)
inlineoverridevirtual

Set the cursor position.

Implements DisplayInterface.

Definition at line 28 of file DisplayInterfaceSSD1306.hpp.

◆ write()

size_t SSD1306_DisplayInterface::write ( uint8_t  c)
inlineoverridevirtual

Write a character to the display.

See also
setCursor
setTextSize
setTextColor

Implements DisplayInterface.

Definition at line 30 of file DisplayInterfaceSSD1306.hpp.

◆ drawLine()

void SSD1306_DisplayInterface::drawLine ( int16_t  x0,
int16_t  y0,
int16_t  x1,
int16_t  y1,
uint16_t  color 
)
inlineoverridevirtual

Draw a line between two points.

Implements DisplayInterface.

Definition at line 32 of file DisplayInterfaceSSD1306.hpp.

◆ drawFastVLine()

void SSD1306_DisplayInterface::drawFastVLine ( int16_t  x,
int16_t  y,
int16_t  h,
uint16_t  color 
)
inlineoverridevirtual

Draw a vertical line.

Implements DisplayInterface.

Definition at line 36 of file DisplayInterfaceSSD1306.hpp.

◆ drawFastHLine()

void SSD1306_DisplayInterface::drawFastHLine ( int16_t  x,
int16_t  y,
int16_t  w,
uint16_t  color 
)
inlineoverridevirtual

Draw a horizontal line.

Implements DisplayInterface.

Definition at line 40 of file DisplayInterfaceSSD1306.hpp.

◆ drawXBitmap()

void SSD1306_DisplayInterface::drawXBitmap ( int16_t  x,
int16_t  y,
const uint8_t  bitmap[],
int16_t  w,
int16_t  h,
uint16_t  color 
)
inlineoverridevirtual

Draw a bitmap to the display.

Implements DisplayInterface.

Definition at line 45 of file DisplayInterfaceSSD1306.hpp.

◆ begin()

void DisplayInterface::begin ( )
virtualinherited

Initialize the display.

Examples
2.VU-Meter-OLED-USB-DAC.ino, MCU-OLED-SSD1306-x2.ino, MCU-OLED-SSD1306.ino, and VU-Meter-Bridge.ino.

Definition at line 7 of file DisplayInterface.cpp.

◆ fillRect()

void DisplayInterface::fillRect ( int16_t  x,
int16_t  y,
int16_t  w,
int16_t  h,
uint16_t  color 
)
virtualinherited

Draw a filled rectangle.

Definition at line 13 of file DisplayInterface.cpp.

◆ drawCircle()

void DisplayInterface::drawCircle ( int16_t  x0,
int16_t  y0,
int16_t  r,
uint16_t  color 
)
virtualinherited

Draw a circle.

Definition at line 19 of file DisplayInterface.cpp.

◆ fillCircle()

void DisplayInterface::fillCircle ( int16_t  x0,
int16_t  y0,
int16_t  r,
uint16_t  color 
)
virtualinherited

Draw a disk (filled circle).

Definition at line 42 of file DisplayInterface.cpp.

◆ beginAll()

void DisplayInterface::beginAll ( )
staticinherited

Initialize all displays.

See also
begin

Definition at line 61 of file DisplayInterface.cpp.

◆ clearAndDrawBackground()

void DisplayInterface::clearAndDrawBackground ( )
inlineinherited

Clear the frame buffer, and draw the custom background.

See also
clear
drawBackground

Definition at line 89 of file DisplayInterface.hpp.

Member Data Documentation

◆ disp

Adafruit_SSD1306& SSD1306_DisplayInterface::disp
protected

Definition at line 51 of file DisplayInterfaceSSD1306.hpp.

◆ elements

DoublyLinkedList< DisplayInterface > DisplayInterface::elements
staticprivateinherited

Definition at line 95 of file DisplayInterface.hpp.

◆ next

DisplayInterface * DoublyLinkable< DisplayInterface >::next
protectedinherited

Definition at line 301 of file LinkedList.hpp.

◆ previous

DisplayInterface * DoublyLinkable< DisplayInterface >::previous
protectedinherited

Definition at line 302 of file LinkedList.hpp.


The documentation for this class was generated from the following file: