ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
book_stream.h
Go to the documentation of this file.
1
16#pragma once
17
18#include <stdint.h>
19
20#include "book.h"
21#include "ra8_err.h"
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
38typedef ra8_err_t (*book_stream_read_fn)(void* ctx, uint64_t offset, uint8_t* dst, uint32_t len);
39
76 void* read_ctx,
77 uint64_t source_size,
78 uint8_t* scratch,
79 uint32_t scratch_cap,
80 book_header_t* out_header);
81
82#ifdef __cplusplus
83}
84#endif
Flat, execute-in-place container for a build-time "compiled" e-book.
ra8_err_t(* book_stream_read_fn)(void *ctx, uint64_t offset, uint8_t *dst, uint32_t len)
Exact random-read callback over an inflated RABOOK1 flat blob.
Definition book_stream.h:38
ra8_err_t book_validate_stream_strict(book_stream_read_fn read, void *read_ctx, uint64_t source_size, uint8_t *scratch, uint32_t scratch_cap, book_header_t *out_header)
Strictly validate one callback-backed RABOOK1 flat blob.
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Definition ra8_err.h:546
Fixed 100-byte prologue describing every table and pool in the blob.
Definition book.h:246