Skip to main content

Diagnostics

Struct Diagnostics 

Source
pub struct Diagnostics {
Show 63 fields pub a11y_sync: Diagnostic, pub ablate: Diagnostic, pub adpf: Diagnostic, pub assert_state_chain: Diagnostic, pub async_haptics: Diagnostic, pub background_pipelines: Diagnostic, pub compose_debug_modifiers: Diagnostic, pub compose_debug_slot_table: Diagnostic, pub core_pin: Diagnostic, pub debug_scope_labels: Diagnostic, pub desktop_frame_telemetry: Diagnostic, pub desktop_frame_telemetry_ms: Diagnostic, pub disable_nav_snap: Diagnostic, pub disable_scroll_translate: Diagnostic, pub disable_structural_dirt: Diagnostic, pub encode_delay_ms: Diagnostic, pub frame_lead_tenths: Diagnostic, pub frame_stage_telemetry: Diagnostic, pub frame_stage_telemetry_ms: Diagnostic, pub glass_material_folds: Diagnostic, pub gpu_fence_profile: Diagnostic, pub gpu_pass_timing: Diagnostic, pub gpu_shadow_cache_diag: Diagnostic, pub gpu_stage_diag: Diagnostic, pub gpu_stats: Diagnostic, pub layout_invalidation_dispatch_diag: Diagnostic, pub layout_measure_telemetry: Diagnostic, pub layout_measure_telemetry_ms: Diagnostic, pub layout_repass_schedule_diag: Diagnostic, pub lazy_cache_telemetry: Diagnostic, pub lazy_item_telemetry: Diagnostic, pub lazy_measure_telemetry: Diagnostic, pub location_key_diagnostics: Diagnostic, pub native_trace: Diagnostic, pub native_window_timing: Diagnostic, pub no_backdrop_cache: Diagnostic, pub no_effect_domains: Diagnostic, pub no_fill_cache: Diagnostic, pub no_interiors_first: Diagnostic, pub no_shader_flatten: Diagnostic, pub no_shader_fold: Diagnostic, pub no_shader_specialization: Diagnostic, pub pacing_diag: Diagnostic, pub pipeline_disk_cache: Diagnostic, pub present_thread: Diagnostic, pub probe_draw_passes: Diagnostic, pub probe_passes: Diagnostic, pub recompose_scope_telemetry_ms: Diagnostic, pub recomp_diag: Diagnostic, pub render_phase_dirty_diag: Diagnostic, pub robot_button_helper_diag: Diagnostic, pub scene_update_diag: Diagnostic, pub shape_variants: Diagnostic, pub skip_shadows: Diagnostic, pub structural_diag: Diagnostic, pub subcompose_telemetry: Diagnostic, pub survive_gpu_errors: Diagnostic, pub text_atlas_fallback_diag: Diagnostic, pub text_layout_telemetry: Diagnostic, pub update_stage_telemetry_ms: Diagnostic, pub validate_slots: Diagnostic, pub wgpu_render_stage_telemetry: Diagnostic, pub wgpu_render_stage_telemetry_ms: Diagnostic,
}
Expand description

Every diagnostic and ablation switch, by the environment variable that names it. An unset switch leaves the framework as it ships.

Fields§

§a11y_sync: Diagnostic

CRANPOSE_A11Y_SYNC: Android publishes the accessibility tree on the UI thread (1) or off it (0).

§ablate: Diagnostic

CRANPOSE_ABLATE: the comma-separated renderer stages to leave out.

§adpf: Diagnostic

CRANPOSE_ADPF: 0 turns off Android’s performance hint session.

§assert_state_chain: Diagnostic

CRANPOSE_ASSERT_STATE_CHAIN: checks every state record chain.

§async_haptics: Diagnostic

CRANPOSE_ASYNC_HAPTICS: 0, false, off or no plays Android haptics on the calling thread.

§background_pipelines: Diagnostic

CRANPOSE_BACKGROUND_PIPELINES: 0 or 1 turns compiling pipelines on background threads off or on.

§compose_debug_modifiers: Diagnostic

COMPOSE_DEBUG_MODIFIERS: logs modifier chains.

§compose_debug_slot_table: Diagnostic

COMPOSE_DEBUG_SLOT_TABLE: logs the slot table.

§core_pin: Diagnostic

CRANPOSE_CORE_PIN: 0 keeps the render threads off the fast cores.

§debug_scope_labels: Diagnostic

CRANPOSE_DEBUG_SCOPE_LABELS: labels recompose scopes in traces.

§desktop_frame_telemetry: Diagnostic

CRANPOSE_DESKTOP_FRAME_TELEMETRY: logs desktop frames over the default threshold.

§desktop_frame_telemetry_ms: Diagnostic

CRANPOSE_DESKTOP_FRAME_TELEMETRY_MS: logs desktop frames over this many milliseconds.

§disable_nav_snap: Diagnostic

CRANPOSE_DISABLE_NAV_SNAP: the navigation bar does not snap.

§disable_scroll_translate: Diagnostic

CRANPOSE_DISABLE_SCROLL_TRANSLATE: a scroll rebuilds its layers in place of moving them.

§disable_structural_dirt: Diagnostic

CRANPOSE_DISABLE_STRUCTURAL_DIRT: the shell does not mark the parents of structural changes.

§encode_delay_ms: Diagnostic

CRANPOSE_ENCODE_DELAY_MS: waits this many milliseconds before each frame’s encode on the present thread.

§frame_lead_tenths: Diagnostic

CRANPOSE_FRAME_LEAD_TENTHS: pins the frame lead, in tenths of a frame period.

§frame_stage_telemetry: Diagnostic

CRANPOSE_FRAME_STAGE_TELEMETRY: logs the shell’s frame stages over the default threshold.

§frame_stage_telemetry_ms: Diagnostic

CRANPOSE_FRAME_STAGE_TELEMETRY_MS: logs the shell’s frame stages over this many milliseconds.

§glass_material_folds: Diagnostic

CRANPOSE_GLASS_MATERIAL_FOLDS: 1 or 0 forces the glass material folds on or off.

§gpu_fence_profile: Diagnostic

CRANPOSE_GPU_FENCE_PROFILE: profiles GPU fences.

§gpu_pass_timing: Diagnostic

CRANPOSE_GPU_PASS_TIMING: times GPU passes with timestamp queries.

§gpu_shadow_cache_diag: Diagnostic

CRANPOSE_GPU_SHADOW_CACHE_DIAG: logs the shadow cache.

§gpu_stage_diag: Diagnostic

CRANPOSE_GPU_STAGE_DIAG: logs the renderer’s frame stages.

§gpu_stats: Diagnostic

CRANPOSE_GPU_STATS: collects and prints the renderer’s frame stats.

§layout_invalidation_dispatch_diag: Diagnostic

CRANPOSE_LAYOUT_INVALIDATION_DISPATCH_DIAG: logs layout invalidations (all for every one).

§layout_measure_telemetry: Diagnostic

CRANPOSE_LAYOUT_MEASURE_TELEMETRY: logs measure passes over the default threshold.

§layout_measure_telemetry_ms: Diagnostic

CRANPOSE_LAYOUT_MEASURE_TELEMETRY_MS: logs measure passes over this many milliseconds.

§layout_repass_schedule_diag: Diagnostic

CRANPOSE_LAYOUT_REPASS_SCHEDULE_DIAG: logs layout repass scheduling (all for every one).

§lazy_cache_telemetry: Diagnostic

CRANPOSE_LAZY_CACHE_TELEMETRY: logs the lazy list item cache.

§lazy_item_telemetry: Diagnostic

CRANPOSE_LAZY_ITEM_TELEMETRY: logs lazy list item work.

§lazy_measure_telemetry: Diagnostic

CRANPOSE_LAZY_MEASURE_TELEMETRY: logs lazy list measures.

§location_key_diagnostics: Diagnostic

CRANPOSE_LOCATION_KEY_DIAGNOSTICS: logs location key collisions.

§native_trace: Diagnostic

CRANPOSE_NATIVE_TRACE: prints native window events.

§native_window_timing: Diagnostic

CRANPOSE_NATIVE_WINDOW_TIMING: prints native window timings.

§no_backdrop_cache: Diagnostic

CRANPOSE_NO_BACKDROP_CACHE: draws backdrops without their cache.

§no_effect_domains: Diagnostic

CRANPOSE_NO_EFFECT_DOMAINS: effects sample their whole sources.

§no_fill_cache: Diagnostic

CRANPOSE_NO_FILL_CACHE: draws fills without the opaque prefix cache.

§no_interiors_first: Diagnostic

CRANPOSE_NO_INTERIORS_FIRST: draws shape interiors in paint order.

§no_shader_flatten: Diagnostic

CRANPOSE_NO_SHADER_FLATTEN: compiles shaders without flattening.

§no_shader_fold: Diagnostic

CRANPOSE_NO_SHADER_FOLD: compiles shaders without folding constants.

§no_shader_specialization: Diagnostic

CRANPOSE_NO_SHADER_SPECIALIZATION: draws with the general shaders.

§pacing_diag: Diagnostic

CRANPOSE_PACING_DIAG: logs the desktop frame pacing.

§pipeline_disk_cache: Diagnostic

CRANPOSE_PIPELINE_DISK_CACHE: 0 or 1 turns the pipeline disk cache off or on.

§present_thread: Diagnostic

CRANPOSE_PRESENT_THREAD: chooses whether Android presents on a thread of its own.

§probe_draw_passes: Diagnostic

CRANPOSE_PROBE_DRAW_PASSES: draws the first this many draw passes.

§probe_passes: Diagnostic

CRANPOSE_PROBE_PASSES: encodes the first this many passes.

§recompose_scope_telemetry_ms: Diagnostic

CRANPOSE_RECOMPOSE_SCOPE_TELEMETRY_MS: logs recompose scopes over this many milliseconds.

§recomp_diag: Diagnostic

CRANPOSE_RECOMP_DIAG: prints the recomposition rate.

§render_phase_dirty_diag: Diagnostic

CRANPOSE_RENDER_PHASE_DIRTY_DIAG: logs what the render phase finds dirty.

§robot_button_helper_diag: Diagnostic

CRANPOSE_ROBOT_BUTTON_HELPER_DIAG: prints the robot’s button lookups.

§scene_update_diag: Diagnostic

CRANPOSE_SCENE_UPDATE_DIAG: logs scene updates.

§shape_variants: Diagnostic

CRANPOSE_SHAPE_VARIANTS: 0 draws shapes with the general pipeline.

§skip_shadows: Diagnostic

CRANPOSE_SKIP_SHADOWS: leaves shadows out.

§structural_diag: Diagnostic

CRANPOSE_STRUCTURAL_DIAG: logs structural child syncs.

§subcompose_telemetry: Diagnostic

CRANPOSE_SUBCOMPOSE_TELEMETRY: logs subcompositions.

§survive_gpu_errors: Diagnostic

CRANPOSE_SURVIVE_GPU_ERRORS: 0 stops on a GPU validation error.

§text_atlas_fallback_diag: Diagnostic

CRANPOSE_TEXT_ATLAS_FALLBACK_DIAG: logs text that misses the glyph atlas.

§text_layout_telemetry: Diagnostic

CRANPOSE_TEXT_LAYOUT_TELEMETRY: logs text layouts.

§update_stage_telemetry_ms: Diagnostic

CRANPOSE_UPDATE_STAGE_TELEMETRY_MS: logs the shell’s update stages over this many milliseconds.

§validate_slots: Diagnostic

CRANPOSE_VALIDATE_SLOTS: validates the slot table after each composition.

§wgpu_render_stage_telemetry: Diagnostic

CRANPOSE_WGPU_RENDER_STAGE_TELEMETRY: logs the renderer’s stages over the default threshold.

§wgpu_render_stage_telemetry_ms: Diagnostic

CRANPOSE_WGPU_RENDER_STAGE_TELEMETRY_MS: logs the renderer’s stages over this many milliseconds.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.