|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
Running consumption tracker charged by a decoder against its policy. More...
#include <ra8_decomp_limits.h>
Data Fields | |
| ra8_decomp_limits_t | limits |
| Policy in force for this budget. | |
| uint64_t | out_bytes |
| Decompressed bytes produced so far. | |
| uint64_t | in_bytes |
| Compressed bytes consumed so far. | |
| uint32_t | entries |
| Archive entries enumerated so far. | |
| uint32_t | iters |
| Decode-loop turns charged so far. | |
| uint8_t | depth |
| Current stacked decode-layer depth. | |
Running consumption tracker charged by a decoder against its policy.
One budget tracks one decode unit (streaming decoders) or one archive enumeration (walkers). Decoders charge it as they go: ra8_decomp_budget_charge_output after emitting bytes, ra8_decomp_budget_charge_entry per enumerated member, ra8_decomp_budget_charge_iter per decode-loop turn, and ra8_decomp_budget_enter / ra8_decomp_budget_leave around a stacked layer. Each charge fails closed with the axis-specific error the moment its bound is crossed.
Definition at line 169 of file ra8_decomp_limits.h.
| uint8_t ra8_decomp_budget_t::depth |
Current stacked decode-layer depth.
Definition at line 175 of file ra8_decomp_limits.h.
| uint32_t ra8_decomp_budget_t::entries |
Archive entries enumerated so far.
Definition at line 173 of file ra8_decomp_limits.h.
| uint64_t ra8_decomp_budget_t::in_bytes |
Compressed bytes consumed so far.
Definition at line 172 of file ra8_decomp_limits.h.
| uint32_t ra8_decomp_budget_t::iters |
Decode-loop turns charged so far.
Definition at line 174 of file ra8_decomp_limits.h.
| ra8_decomp_limits_t ra8_decomp_budget_t::limits |
Policy in force for this budget.
Definition at line 170 of file ra8_decomp_limits.h.
Referenced by internal_finish_member(), and priv_comic_cbr_open().
| uint64_t ra8_decomp_budget_t::out_bytes |
Decompressed bytes produced so far.
Definition at line 171 of file ra8_decomp_limits.h.