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

Caller-owned directory cursor storage and iterative traversal stack. More...

#include <mdl_library.h>

Data Fields

char paths [(size_t) k_mdl_library_depth_limit+1U][k_fw_fs_path_cap]
 DFS path stack, one canonical path at each permitted depth.
void * directory_workspace
 Backend cursor workspace.
uint32_t directory_workspace_bytes
 Cursor workspace extent.
uint32_t entries
 Entries accepted by the traversal.
uint32_t required_entries
 Entries observed through cap+1.
uint32_t entry_limit
 Active explicit traversal limit.
uint32_t operations
 Namespace calls attempted.
uint16_t depth
 Current stack depth, root is zero.

Detailed Description

Caller-owned directory cursor storage and iterative traversal stack.

Enumeration advances one backend cursor entry at a time. Each next call returns with backend locks released, so authentication and user callbacks occur safely between calls without retaining a directory snapshot. Removal retains one canonical path per permitted depth.

Definition at line 53 of file mdl_library.h.

Field Documentation

◆ depth

uint16_t mdl_library_workspace_t::depth

◆ directory_workspace

void* mdl_library_workspace_t::directory_workspace

Backend cursor workspace.

Definition at line 56 of file mdl_library.h.

Referenced by internal_library_enumerate(), internal_library_first_child(), mdl_library_for_each(), and mdl_library_remove_tree().

◆ directory_workspace_bytes

uint32_t mdl_library_workspace_t::directory_workspace_bytes

Cursor workspace extent.

Definition at line 57 of file mdl_library.h.

Referenced by internal_library_enumerate(), internal_library_first_child(), mdl_library_for_each(), and mdl_library_remove_tree().

◆ entries

uint32_t mdl_library_workspace_t::entries

Entries accepted by the traversal.

Definition at line 58 of file mdl_library.h.

Referenced by internal_library_enumerate(), internal_library_remove_child(), and internal_library_workspace_reset().

◆ entry_limit

uint32_t mdl_library_workspace_t::entry_limit

Active explicit traversal limit.

Definition at line 60 of file mdl_library.h.

Referenced by internal_library_remove_root(), internal_library_report(), internal_library_workspace_reset(), and mdl_library_for_each().

◆ operations

uint32_t mdl_library_workspace_t::operations

Namespace calls attempted.

Definition at line 61 of file mdl_library.h.

Referenced by internal_library_first_child(), internal_library_take_operation(), and internal_library_workspace_reset().

◆ paths

char mdl_library_workspace_t::paths[(size_t) k_mdl_library_depth_limit+1U][k_fw_fs_path_cap]

◆ required_entries

uint32_t mdl_library_workspace_t::required_entries

Entries observed through cap+1.

Definition at line 59 of file mdl_library.h.

Referenced by internal_library_enumerate(), internal_library_remove_child(), internal_library_report(), and internal_library_workspace_reset().


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