17typedef enum : uint16_t {
97 int32_t decimal_scale,
124 uint16_t max_schema_version,
Persistent per-series library state for the media downloader.
@ k_mdl_chapter_id_max
Chapter identifier bytes (sanitised).
@ k_mdl_title_max
Series title bytes.
void priv_mdl_state_set_opt(char *dst, size_t cap, const char *val)
Copy one optional value into a bounded state field.
bool priv_mdl_state_valid(const mdl_state_t *st)
Validate all persisted state bounds and cross-field invariants.
ra8_err_t priv_mdl_state_parse_file(mdl_storage_t *storage, fw_fs_file_t *file, uint64_t offset, uint64_t length, uint16_t max_schema_version, mdl_state_t *st)
Parse one exact state payload from an open portable file.
bool priv_mdl_state_relative_path_valid(const char *path, size_t cap)
Validate a bounded relative path stored in state.
mdl_state_internal_limit_t
Largest complete serialized record including its terminator.
@ k_mdl_state_line_max
Serialized line cap.
bool priv_mdl_state_field_valid(const char *text, size_t cap)
Validate one delimiter-free bounded state field.
bool priv_mdl_state_decimal_to_binary64(uint64_t mantissa, int32_t decimal_scale, bool negative, double *out)
Convert one exact bounded decimal rational to binary64.
Annotation-attribute framework macros for ra8-firmware.
#define RA8_PRIV
Module-private helper: shared across TUs but only inside one library.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Caller-owned open file; fields are private to the facade.
One series' complete persistent state (declare at file scope).
One non-reentrant downloader filesystem dependency bundle.