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

The one bounded working set every application mode shares. More...

#include <mdl_app.h>

Collaboration diagram for mdl_app_context_t:

Data Fields

mdl_session_t session
 Network policy session.
mdl_export_workspace_t export_ws
 Bounded exporter arena view.
mdl_storage_t storage
 Injected filesystem facade.
ra8_io_stream_toutput
 Borrowed command output sink.
ra8_io_stream_tdiagnostic
 Borrowed diagnostic sink.
ra8_err_t io_error
 First presenter sink failure.
char page [k_page_buf_bytes]
 Whole-page HTML buffer.
mdl_url_list_t chapters
 Prepared chapter URLs.
mdl_url_list_t images
 Prepared page image URLs.
mdl_state_t state
 Persistent tracked state.
mdl_cache_index_t cache_index
 One loaded per-host index.
mdl_library_workspace_t library_workspace
 Bounded tree-removal stack.
union { 
   max_align_t   align 
 Force backend alignment. More...
   uint8_t   bytes [k_mdl_storage_io_bytes
 Second directory cursor. More...
admin_directory_workspace
 Nested verification cursor.
mdl_series_metadata_t series_metadata
 Current scraped metadata.

Detailed Description

The one bounded working set every application mode shares.

Caller-owned so the form – not the downloader – decides where the multi-megabyte page buffer and the state, cache and library workspaces live. Bind it once with mdl_app_bind before any mode runs; the modes reach it through one module-private accessor and never through a link-time global of their own.

Invariant
Exactly one context is bound while any mode is running.
output and diagnostic outlive every bound mode call.
See also
mdl_app_bind()
Since
0.1.0

Definition at line 162 of file mdl_app.h.

Field Documentation

◆ [union]

union { ... } mdl_app_context_t::admin_directory_workspace

Nested verification cursor.

◆ align

max_align_t mdl_app_context_t::align

Force backend alignment.

Definition at line 176 of file mdl_app.h.

◆ bytes

uint8_t mdl_app_context_t::bytes[k_mdl_storage_io_bytes]

Second directory cursor.

Definition at line 177 of file mdl_app.h.

◆ cache_index

mdl_cache_index_t mdl_app_context_t::cache_index

One loaded per-host index.

Definition at line 173 of file mdl_app.h.

Referenced by internal_run_series_network().

◆ chapters

mdl_url_list_t mdl_app_context_t::chapters

Prepared chapter URLs.

Definition at line 170 of file mdl_app.h.

Referenced by internal_select_run_window(), and internal_select_window().

◆ diagnostic

ra8_io_stream_t* mdl_app_context_t::diagnostic

◆ export_ws

mdl_export_workspace_t mdl_app_context_t::export_ws

Bounded exporter arena view.

Definition at line 164 of file mdl_app.h.

◆ images

mdl_url_list_t mdl_app_context_t::images

Prepared page image URLs.

Definition at line 171 of file mdl_app.h.

Referenced by internal_download_page_images(), and internal_make_ctx().

◆ io_error

ra8_err_t mdl_app_context_t::io_error

First presenter sink failure.

Definition at line 168 of file mdl_app.h.

Referenced by internal_admin_latch(), internal_direct_latch(), and mdl_app_run_discover().

◆ library_workspace

mdl_library_workspace_t mdl_app_context_t::library_workspace

Bounded tree-removal stack.

Definition at line 174 of file mdl_app.h.

Referenced by internal_library_report().

◆ output

ra8_io_stream_t* mdl_app_context_t::output

◆ page

char mdl_app_context_t::page[k_page_buf_bytes]

Whole-page HTML buffer.

Definition at line 169 of file mdl_app.h.

Referenced by internal_make_ctx(), and mdl_app_run_discover().

◆ series_metadata

mdl_series_metadata_t mdl_app_context_t::series_metadata

◆ session

◆ state

◆ storage

mdl_storage_t mdl_app_context_t::storage

Injected filesystem facade.

Definition at line 165 of file mdl_app.h.

Referenced by internal_fetch_artifact(), internal_make_ctx(), internal_run_series_network(), and priv_mdl_app_prepare_series_dir().


The documentation for this struct was generated from the following file: