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
Namespaces | Enumerations | Functions | Variables
internal.hpp File Reference

Internal utilities for libepaper implementation details. More...

#include "epaper/core/types.hpp"
#include <cstddef>
#include <cstdint>
#include <utility>
Include dependency graph for internal.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  epaper
 
namespace  epaper::internal
 

Enumerations

enum class  epaper::internal::PlaneCount : std::uint8_t { epaper::internal::One , epaper::internal::Two , epaper::internal::Three }
 Type-safe enumeration for framebuffer plane counts. More...
 

Functions

constexpr auto epaper::internal::plane_count_value (PlaneCount count) noexcept -> std::size_t
 
auto epaper::internal::transform_coordinates (std::size_t x, std::size_t y, std::size_t width, std::size_t height, Orientation orientation) -> std::pair< std::size_t, std::size_t >
 

Variables

constexpr std::size_t epaper::internal::PLANE_COUNT_ONE = 1
 Number of planes for single-plane displays (BW, Gray4, Spectra6)
 
constexpr std::size_t epaper::internal::PLANE_COUNT_TWO = 2
 Number of planes for dual-plane displays (BWR, BWY)
 
constexpr std::size_t epaper::internal::PLANE_COUNT_THREE = 3
 Number of planes for triple-plane displays (reserved for future modes)
 

Detailed Description

Internal utilities for libepaper implementation details.

This header contains internal implementation utilities that are not part of the public API. These functions and types are used within the library implementation and may change without notice.

Usage Constraint: Do not include this header directly in user code. These utilities are for library internals only.