25typedef enum :
size_t {
34typedef enum : uint8_t {
106 size_t supplied_scratch_bytes,
Composite board-view renderer: panel framebuffer + a status sidebar.
emu_presentation_result_t emu_presentation_requirements(const emu_presentation_spec_t *spec)
Compute exact raw-fd and scratch requirements without mutation.
bool emu_presentation_read(const emu_presentation_workspace_t *workspace, size_t offset, void *bytes, size_t count)
Read exact RGB565 bytes at a checked surface offset.
emu_presentation_status_t
Presentation planning, creation, and transfer status.
@ k_emu_presentation_capacity
Caller scratch is smaller than required.
@ k_emu_presentation_overflow
A checked size/offset operation overflowed.
@ k_emu_presentation_invalid
Geometry, rotation, pointer, or fd invalid.
@ k_emu_presentation_ok
Operation completed exactly.
@ k_emu_presentation_io
Raw descriptor create/size/I/O failed.
bool emu_presentation_write(emu_presentation_workspace_t *workspace, size_t offset, const void *bytes, size_t count)
Write exact RGB565 bytes at a checked surface offset.
bool emu_presentation_close(emu_presentation_workspace_t *workspace)
Close one owned presentation descriptor and invalidate the workspace.
emu_presentation_limit_t
Geometry and bounded tile limits for streamed presentation.
@ k_emu_presentation_max_panel_px
Largest panel dimension.
@ k_emu_presentation_tile_px
Square rotation tile side.
@ k_emu_presentation_max_scratch_bytes
Exact maximum caller scratch: source plus rotated 64x64 RGB565 tiles.
bool emu_presentation_snapshot(emu_presentation_workspace_t *workspace, int *snapshot_fd)
Create an immutable unlinked descriptor snapshot of one surface.
emu_presentation_result_t emu_presentation_open(const emu_presentation_spec_t *spec, void *scratch, size_t supplied_scratch_bytes, emu_presentation_workspace_t *workspace)
Create and bind one unlinked raw-fd presentation workspace.
bool emu_presentation_fill(void *context, uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t color)
Fill a checked RGB565 rectangle in a raw-fd surface.
Annotation-attribute framework macros for ra8-firmware.
Exact result of a requirements or workspace operation.
size_t required_scratch_bytes
Exact caller scratch.
emu_presentation_status_t status
Semantic result.
size_t required_surface_bytes
Exact raw-fd length.
int os_error
Captured errno for I/O.
size_t supplied_scratch_bytes
Caller capacity.
Inputs controlling exact presentation requirements.
size_t panel_height
Native firmware panel height.
size_t panel_width
Native firmware panel width.
uint32_t rotate_deg
Display rotation: 0, 90, 180, or 270 degrees.
bool active
A view, snapshot, record, or click needs pixels.
One independent owned surface plus non-owning bounded scratch.
uint16_t panel_height
Native panel height.
uint16_t composite_width
Display plus sidebar width.
int fd
Owned unlinked descriptor, or -1.
uint16_t display_height
Rotation-adjusted panel height.
uint16_t composite_height
Display/sidebar maximum height.
uint16_t * scratch
Borrowed RGB565 scratch, or nullptr.
uint16_t display_width
Rotation-adjusted panel width.
size_t surface_bytes
Exact raw-fd RGB565 length.
uint32_t rotate_deg
Bound display rotation.
size_t scratch_bytes
Exact bound scratch prefix.
uint16_t panel_width
Native panel width.