libepaper 2.0.0
A C++23 library for controlling Waveshare e-paper displays on Raspberry Pi, featuring transparent sleep/wake management and a fluent builder API.
Loading...
Searching...
No Matches
epaper::FramebufferLike Concept Reference

#include <framebuffer_concepts.hpp>

Concept definition

template<typename T>
requires(T fb, const T const_fb, std::size_t x, std::size_t y, Color color, Orientation orientation) {
{ fb.width() } -> std::same_as<std::size_t>;
{ fb.height() } -> std::same_as<std::size_t>;
{ fb.mode() } -> std::same_as<DisplayMode>;
{ const_fb.data() } -> std::same_as<std::span<const std::byte>>;
{ const_fb.get_planes() } -> std::same_as<std::vector<std::span<const std::byte>>>;
{ fb.set_pixel(x, y, color, orientation) } -> std::same_as<void>;
{ const_fb.get_pixel(x, y, orientation) } -> std::same_as<Color>;
{ fb.clear(color) } -> std::same_as<void>;
}
Definition framebuffer_concepts.hpp:60
Orientation
Definition types.hpp:66
Color
Definition types.hpp:32