microfmt
Zero-allocation C++ formatting for constrained environments
Loading...
Searching...
No Matches
Classes | Public Member Functions | Public Attributes | List of all members
microfmt::task_info Struct Reference

Comprehensive system task (Team) descriptor. More...

#include <task.hpp>

Collaboration diagram for microfmt::task_info:
Collaboration graph
[legend]

Classes

struct  metadata_state
 Stack iteration state supporting phase transition from classic fields to extended task metadata. More...
 

Public Member Functions

constexpr metadata_map make_metadata_view (metadata_state &the_state) const &noexcept RELOCO_LIFETIMEBOUND
 Exposes a unified metadata_map view for classic task data and extended metadata.
 
metadata_map make_metadata_view (metadata_state &) const &&=delete
 
constexpr bool get_next_thread (thread_info &out_thread) const noexcept
 Fetches the next thread belonging to this task using the abstract thread generator.
 

Public Attributes

uint64_t team_id {0}
 
string_view name {}
 
task_state state {task_state::ready}
 
uint8_t priority {0}
 
uint32_t cpu_ticks {0}
 
uint32_t memory_usage {0}
 
address_space_ref space {}
 
elf_image_enumerator_ref elf_enumerator {}
 
metadata_next_fn_t extended_metadata_fn {nullptr}
 
void * extended_metadata_ctx {nullptr}
 
thread_next_fn_t thread_next_fn {nullptr}
 
void * thread_next_ctx {nullptr}
 

Detailed Description

Comprehensive system task (Team) descriptor.

Member Function Documentation

◆ get_next_thread()

constexpr bool microfmt::task_info::get_next_thread ( thread_info &  out_thread) const
inlineconstexprnoexcept

Fetches the next thread belonging to this task using the abstract thread generator.

◆ make_metadata_view() [1/2]

metadata_map microfmt::task_info::make_metadata_view ( metadata_state &  ) const &&
delete

◆ make_metadata_view() [2/2]

constexpr metadata_map microfmt::task_info::make_metadata_view ( metadata_state &  the_state) const &
inlineconstexprnoexcept

Exposes a unified metadata_map view for classic task data and extended metadata.

Member Data Documentation

◆ cpu_ticks

uint32_t microfmt::task_info::cpu_ticks {0}

◆ elf_enumerator

elf_image_enumerator_ref microfmt::task_info::elf_enumerator {}

◆ extended_metadata_ctx

void* microfmt::task_info::extended_metadata_ctx {nullptr}

◆ extended_metadata_fn

metadata_next_fn_t microfmt::task_info::extended_metadata_fn {nullptr}

◆ memory_usage

uint32_t microfmt::task_info::memory_usage {0}

◆ name

string_view microfmt::task_info::name {}

◆ priority

uint8_t microfmt::task_info::priority {0}

◆ space

address_space_ref microfmt::task_info::space {}

◆ state

task_state microfmt::task_info::state {task_state::ready}

◆ team_id

uint64_t microfmt::task_info::team_id {0}

◆ thread_next_ctx

void* microfmt::task_info::thread_next_ctx {nullptr}

◆ thread_next_fn

thread_next_fn_t microfmt::task_info::thread_next_fn {nullptr}

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