Class managing application context variables. More...
#include <eagine/application/state.hpp>
Public Member Functions | |
auto | advance_time () noexcept -> auto & |
Advances the simulation time. | |
auto | update_activity () noexcept -> context_state & |
Updates the user activity tracking. | |
auto | notice_user_active () noexcept -> auto & |
Notice that the user generated some input. | |
void | random_uniform (span< byte > dest) |
Generates random uniformly-distributed bytes. | |
void | random_uniform_01 (span< float > dest) |
Generates random uniformly-distributed floats in range <0, 1>. | |
void | random_normal (span< float > dest) |
Generates random normally-distributed floats. | |
![]() | |
main_ctx_object (identifier obj_id, main_ctx_parent parent) noexcept | |
Initialization from object id and parent. | |
auto | process_instance_id () const noexcept -> process_instance_id_t |
Returns the process id. | |
auto | main_context () const noexcept -> main_ctx & |
Returns a reference to the main context singleton. | |
auto | app_config () const noexcept -> application_config & |
Returns a reference to the application config object. | |
auto | as_parent () noexcept -> main_ctx_object_parent_info |
Returns this as main_ctx_object_parent_info. | |
template<typename T > | |
auto | cfg_init (string_view key, T initial, string_view tag={}) -> T |
Reads and returns the configuration value identified by key . | |
template<typename Extractable , typename T > | |
auto | cfg_extr (string_view key, T initial, string_view tag={}, type_identity< Extractable >={}) -> T |
Reads and returns the configuration value identified by key . | |
![]() | |
named_logging_object (identifier id, main_ctx_log_backend_getter backend_getter) noexcept | |
Constructor from identifier and backend_getter object. More... | |
named_logging_object (identifier id, const named_logging_object &parent) noexcept | |
Constructor from logger id and parent logging object. | |
named_logging_object () noexcept=default | |
Construct logging object without backend. | |
named_logging_object (named_logging_object &&temp) noexcept | |
Move constructor. | |
named_logging_object (const named_logging_object &that) noexcept | |
Copy constructor. | |
auto | operator= (named_logging_object &&) noexcept -> named_logging_object &=default |
Move assignment operator. | |
auto | operator= (const named_logging_object &) -> named_logging_object &=default |
Copy assignment operator. | |
constexpr auto | object_id () const noexcept |
Returns the identifier of this logging object. | |
void | object_description (string_view display_name, string_view description) noexcept |
Sets the human-readable name and description of this object. | |
auto | log_fatal (string_view format) noexcept |
Create a log message entry for fatal error, with specified format. More... | |
auto | log_error (string_view format) noexcept |
Create a log message entry for error, with specified format. More... | |
auto | log_warning (string_view format) noexcept |
Create a log message entry for warning, with specified format. More... | |
auto | log_info (string_view format) noexcept |
Create a log message entry for information, with specified format. More... | |
auto | log_stat (string_view format) noexcept |
Create a log message entry for statistic, with specified format. More... | |
auto | log_debug (string_view format) noexcept |
Create a log message entry for debugging, with specified format. More... | |
auto | log_trace (string_view format) noexcept |
Create a log message entry for tracing, with specified format. More... | |
auto | log_backtrace (string_view format) noexcept |
Create a log message entry for backtracing, with specified format. More... | |
auto | log_debug_stream () noexcept |
Returns a log entry stream for debug messages. More... | |
auto | log_error_stream () noexcept |
Returns a log entry stream for error messages. More... | |
auto | log_chart_sample (identifier series, float value) noexcept -> named_logging_object & |
Stores a new value in the specified chart data series . | |
auto | log_chart_sample (identifier series, const tagged_quantity< T, U > &qty) noexcept -> std::enable_if_t< std::is_convertible_v< T, float >, named_logging_object & > |
Stores a new value in the specified chart data series . | |
auto | log_chart_sample (identifier series, const valid_if< T, P > &opt_value) noexcept -> named_logging_object & |
Stores a new value in the specified chart data series . | |
![]() | |
auto | backend () noexcept |
Returns a pointer to the backend of this logger object. | |
auto | instance_id () const noexcept -> logger_instance_id |
Returns the unique id of this logger instance. | |
![]() | |
auto | run_time () const noexcept -> clock_type::duration |
Returns the application run time duration. | |
auto | user_idle_time () const noexcept -> clock_type::duration |
Returns for how long was the user idle. More... | |
auto | frame_time () const noexcept -> seconds_t< float > |
Returns the simulation time of the current frame. More... | |
auto | frame_duration () const noexcept -> seconds_t< float > |
Returns the duration of the previos frame. More... | |
auto | is_active () const noexcept -> bool |
Indicates if the example or the user is active in some way. More... | |
auto | user_is_idle () const noexcept -> value_with_history< bool, 2 > |
Indicates if the user is idle (does not generate input events). More... | |
auto | user_became_idle () const noexcept -> bool |
Indicates that the used became idle. More... | |
auto | user_became_active () const noexcept -> bool |
Indicates that the used became active (generated input events). More... | |
auto | user_idle_too_long () const noexcept -> bool |
Indicates that the user became idle for too long (may depend on config). | |
Additional Inherited Members | |
![]() | |
using | entry_type = std::conditional_t< is_log_level_enabled_v< severity >, log_entry, no_log_entry > |
The entry type for the specified log_event_severity. More... | |
![]() | |
using | entry_type = std::conditional_t< is_log_level_enabled_v< severity >, log_entry, no_log_entry > |
The entry type for the specified log_event_severity. More... | |
![]() | |
using | clock_type = std::chrono::steady_clock |
The clock type for run-time duration measurements. | |
Class managing application context variables.