ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
epub_internal.h
Go to the documentation of this file.
1
15
16#pragma once
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
22#include <stddef.h>
23#include <stdint.h>
24
25#include "epub.h"
26#include "miniz.h"
27#include "ra8_attributes.h"
28#include "ra8_err.h"
29
53RA8_PRIV size_t priv_epub_mem_read(void* ctx, uint64_t offset, void* buf, size_t len);
54
72RA8_PRIV void priv_epub_dirname(const char* path, char* dst, size_t cap);
73
96RA8_PRIV size_t priv_epub_stream_read(void* opaque, mz_uint64 file_ofs, void* buf, size_t n);
97
124RA8_PRIV ra8_err_t priv_epub_finish_open(mz_zip_archive* zip, epub_book_t* out_book);
125
146RA8_PRIV ra8_err_t priv_epub_set_miniz_alloc(mz_zip_archive* zip, epub_book_t* book);
147
174RA8_PRIV void priv_epub_join_path(const char* dir, const char* name, char* dst, size_t cap);
175
205RA8_PRIV bool priv_epub_glyph_dim_invalid(int w, int h);
206
237RA8_PRIV bool priv_epub_book_not_ready(uint8_t in_use, uint8_t zip_archive_active);
238
266RA8_PRIV [[nodiscard]] ra8_err_t priv_epub_zip_guard_archive(mz_zip_archive* zip);
267
296RA8_PRIV [[nodiscard]] ra8_err_t priv_epub_zip_guard_entry(const mz_zip_archive_file_stat* st);
297
298#ifdef __cplusplus
299}
300#endif
EPUB (.epub) reader and chapter iterator for ra8-firmware.
void priv_epub_dirname(const char *path, char *dst, size_t cap)
Copy the directory prefix of an EPUB package path.
Definition epub_open.c:115
ra8_err_t priv_epub_finish_open(mz_zip_archive *zip, epub_book_t *out_book)
Finish parsing one initialized ZIP reader into an EPUB book.
Definition epub_open.c:374
ra8_err_t priv_epub_zip_guard_entry(const mz_zip_archive_file_stat *st)
Guard one ZIP entry's declared sizes against the policy.
size_t priv_epub_mem_read(void *ctx, uint64_t offset, void *buf, size_t len)
Read one bounded span from resident EPUB media.
Definition epub_open.c:83
bool priv_epub_glyph_dim_invalid(int w, int h)
Pure predicate: width OR height is negative.
ra8_err_t priv_epub_zip_guard_archive(mz_zip_archive *zip)
Guard a just-opened ZIP archive against the decompression policy.
bool priv_epub_book_not_ready(uint8_t in_use, uint8_t zip_archive_active)
Pure predicate: book unused OR zip archive inactive.
size_t priv_epub_stream_read(void *opaque, mz_uint64 file_ofs, void *buf, size_t n)
Forward one bounded miniz read to streamed EPUB media.
Definition epub_open.c:360
void priv_epub_join_path(const char *dir, const char *name, char *dst, size_t cap)
Concatenate dir and name into dst, NUL-terminated.
ra8_err_t priv_epub_set_miniz_alloc(mz_zip_archive *zip, epub_book_t *book)
Bind one ZIP reader to a book's caller-owned miniz arena.
Definition epub_open.c:342
Annotation-attribute framework macros for ra8-firmware.
#define RA8_PRIV
Module-private helper: shared across TUs but only inside one library.
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
Opened EPUB book.
Definition epub.h:286