Renderer health checks, DRM startup retries and custom renderer selection.
Set this record as Emerge.Config.runtime. Most applications should keep the
defaults.
%Emerge.Config{
runtime: %Emerge.Config.Runtime{health_check_interval_ms: 1_000}
}Fields
health_check_interval_ms— milliseconds between renderer checks; defaults to500. For the standard renderer,niluses 500 ms and0schedules immediate checks; prefer a positive interval. For custom adapters,nilor0disables viewport polling ofrunning?/1.startup_retries— retries allowed when initially setting up a DRM display; defaults to40.0allows only the initial attempt. This is separate from the viewport's automatic recovery after a renderer stops.retry_interval_ms— milliseconds between those DRM startup attempts; defaults to250.0adds no retry delay. This does not extend the renderer's startup timeout.adapter— renderer adapter module. Defaults to the standard Skia adapter. Only change this when providing your own implementation.adapter_opts— opaque keyword options passed to that adapter; defaults to[]. These are not renderer configuration fields.
Changing settings
Only health_check_interval_ms can change through config. Changing retry
policy, adapter or adapter options requires a new viewport.
Summary
Types
Canonical form after nested keyword records have been expanded.
Typed keyword shorthand accepted in this record's parent field.
Types
@type normalized_t() :: t()
Canonical form after nested keyword records have been expanded.
@type options() :: [ health_check_interval_ms: non_neg_integer() | nil, startup_retries: non_neg_integer(), retry_interval_ms: non_neg_integer(), adapter: module(), adapter_opts: keyword() ]
Typed keyword shorthand accepted in this record's parent field.
@type t() :: %Emerge.Config.Runtime{ adapter: module(), adapter_opts: keyword(), health_check_interval_ms: non_neg_integer() | nil, retry_interval_ms: non_neg_integer(), startup_retries: non_neg_integer() }