66 void BlitRgb565(uint8_t x, uint8_t y, uint8_t src_width, uint8_t src_height,
82#define ISF15ACP4_CANVAS_HEADER_INCLUDED
83#include "../src/isf15acp4_canvas.ipp"
84#undef ISF15ACP4_CANVAS_HEADER_INCLUDED
CPU-side RGB565 framebuffer with basic drawing operations.
Definition isf15acp4_canvas.hpp:22
void SetPixel(uint8_t x, uint8_t y, Color565 color) noexcept
Set one pixel if in bounds.
Definition isf15acp4_canvas.ipp:19
DisplayGeometry geometry_
Definition isf15acp4_canvas.hpp:76
Color565 GetPixel(uint8_t x, uint8_t y) const noexcept
Get one pixel; returns black when out of bounds.
Definition isf15acp4_canvas.ipp:26
std::size_t ByteSize() const noexcept
Definition isf15acp4_canvas.hpp:71
void FillRect(const Rect &rect, Color565 color) noexcept
Fill a solid rectangle.
Definition isf15acp4_canvas.ipp:62
void Clear(Color565 color) noexcept
Clear the framebuffer to a solid color.
Definition isf15acp4_canvas.ipp:13
void BlitRgb565(uint8_t x, uint8_t y, uint8_t src_width, uint8_t src_height, const Color565 *src) noexcept
Blit a contiguous RGB565 buffer into the canvas.
Definition isf15acp4_canvas.ipp:96
void DrawVLine(uint8_t x, uint8_t y0, uint8_t y1, Color565 color) noexcept
Draw a vertical line inclusive of both endpoints.
Definition isf15acp4_canvas.ipp:44
void DrawString(uint8_t x, uint8_t y, const char *text, Color565 color, Color565 bg=colors::Black) noexcept
Draw a null-terminated string.
Definition isf15acp4_canvas.ipp:82
Color565 * Data() noexcept
Definition isf15acp4_canvas.hpp:73
uint8_t Width() const noexcept
Definition isf15acp4_canvas.hpp:69
void DrawRect(const Rect &rect, Color565 color) noexcept
Draw rectangle outline.
Definition isf15acp4_canvas.ipp:55
const Color565 * Data() const noexcept
Definition isf15acp4_canvas.hpp:72
uint8_t Height() const noexcept
Definition isf15acp4_canvas.hpp:70
void DrawChar(uint8_t x, uint8_t y, char ch, Color565 color, Color565 bg=colors::Black) noexcept
Draw a single character using the built-in 5x7 font.
Definition isf15acp4_canvas.ipp:68
Color565 buffer_[96 *64]
Definition isf15acp4_canvas.hpp:77
void DrawHLine(uint8_t x0, uint8_t x1, uint8_t y, Color565 color) noexcept
Draw a horizontal line inclusive of both endpoints.
Definition isf15acp4_canvas.ipp:33
Shared types, constants, and color utilities for NKK SmartDisplay OLED drivers.
constexpr Color565 Black
Definition isf15acp4_types.hpp:116
Definition isf15acp4.hpp:19
ProductVariant
Supported NKK SmartDisplay OLED product variants.
Definition isf15acp4_types.hpp:19
@ Isf15acp4
Frameless OLED pushbutton, 96x64 (ISF15ACP4)
uint16_t Color565
16-bit RGB565 color value (R5G6B5).
Definition isf15acp4_types.hpp:50
Compile-time display geometry for a product variant.
Definition isf15acp4_types.hpp:53
uint8_t height
Definition isf15acp4_types.hpp:55
std::size_t framebuffer_bytes
Definition isf15acp4_types.hpp:60
uint8_t width
Definition isf15acp4_types.hpp:54
Axis-aligned rectangle in display coordinates (inclusive bounds).
Definition isf15acp4_types.hpp:96