ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
comic_page_t Struct Reference

One entry in the resident, sorted page index. More...

#include <comic.h>

Data Fields

uint32_t name_off
 Offset of the page name in the name arena.
uint16_t name_len
 Page name length in bytes.
uint8_t extractable
 1 if this reader can decode the page's bytes.
uint8_t rar_method
 CBR: ra8_rar_method_t (0 = store); 0 for CBZ.
uint32_t zip_index
 CBZ: miniz central-directory index.
uint64_t data_off
 CBR: absolute offset of the member data area.
uint64_t pack_size
 CBR: packed member size in bytes.
uint64_t raw_size
 Encoded image length in bytes (decoder input).

Detailed Description

One entry in the resident, sorted page index.

Caller-owned array element populated by comic_open. name_off / name_len address the page's entry name inside the caller name arena. raw_size is the encoded image's byte length. The remaining fields are backend bookkeeping used by comic_page_read: zip_index for CBZ (the miniz central-directory index) and data_off / pack_size for CBR (the RAR member's data area). extractable is 0 only for a CBR member packed with a compressor this reader does not decode (RAR4 legacy); RAR5-compressed members decode and stay extractable. rar_method is the normalised CBR compression method (ra8_rar_method_t) used to route the page between the STORE copy and the RAR5 decompressor.

Invariant
name_off + name_len <= names_len of the owning comic.
See also
comic_open()
Since
Version 0.1.0

Definition at line 140 of file comic.h.

Field Documentation

◆ data_off

uint64_t comic_page_t::data_off

CBR: absolute offset of the member data area.

Definition at line 146 of file comic.h.

Referenced by priv_comic_cbr_extract(), priv_comic_cbt_extract(), and priv_comic_page_add().

◆ extractable

uint8_t comic_page_t::extractable

1 if this reader can decode the page's bytes.

Definition at line 143 of file comic.h.

Referenced by comic_page_info(), priv_comic_cbr_extract(), and priv_comic_page_add().

◆ name_len

uint16_t comic_page_t::name_len

Page name length in bytes.

Definition at line 142 of file comic.h.

Referenced by comic_page_info(), internal_sort(), and priv_comic_page_add().

◆ name_off

uint32_t comic_page_t::name_off

Offset of the page name in the name arena.

Definition at line 141 of file comic.h.

Referenced by comic_page_info(), internal_sort(), and priv_comic_page_add().

◆ pack_size

uint64_t comic_page_t::pack_size

CBR: packed member size in bytes.

Definition at line 147 of file comic.h.

Referenced by priv_comic_cbr_extract(), and priv_comic_page_add().

◆ rar_method

uint8_t comic_page_t::rar_method

CBR: ra8_rar_method_t (0 = store); 0 for CBZ.

Definition at line 144 of file comic.h.

Referenced by priv_comic_cbr_extract(), and priv_comic_page_add().

◆ raw_size

uint64_t comic_page_t::raw_size

Encoded image length in bytes (decoder input).

Definition at line 148 of file comic.h.

Referenced by comic_page_info(), priv_comic_cbr_extract(), priv_comic_cbt_extract(), priv_comic_cbz_extract(), and priv_comic_page_add().

◆ zip_index

uint32_t comic_page_t::zip_index

CBZ: miniz central-directory index.

Definition at line 145 of file comic.h.

Referenced by priv_comic_cbz_extract(), and priv_comic_page_add().


The documentation for this struct was generated from the following file:
  • apps/shared_libs/comic/inc/comic.h