Skip to main content

RendererTextPerfSnapshot

Struct RendererTextPerfSnapshot 

Source
pub struct RendererTextPerfSnapshot {
Show 31 fields pub frame_id: FrameId, pub font_stack_key: u64, pub font_db_revision: u64, pub fallback_policy_key: u64, pub frame_missing_glyphs: u64, pub frame_texts_with_missing_glyphs: u64, pub blobs_live: u64, pub blob_cache_entries: u64, pub shape_cache_entries: u64, pub measure_cache_buckets: u64, pub shape_cache_bytes_estimate_total: u64, pub blob_paint_palette_bytes_estimate_total: u64, pub blob_decorations_bytes_estimate_total: u64, pub unwrapped_layout_cache_entries: u64, pub frame_unwrapped_layout_cache_hits: u64, pub frame_unwrapped_layout_cache_misses: u64, pub frame_unwrapped_layouts_created: u64, pub frame_cache_resets: u64, pub frame_blob_cache_hits: u64, pub frame_blob_cache_misses: u64, pub frame_blobs_created: u64, pub frame_shape_cache_hits: u64, pub frame_shape_cache_misses: u64, pub frame_shapes_created: u64, pub mask_atlas: RendererGlyphAtlasPerfSnapshot, pub color_atlas: RendererGlyphAtlasPerfSnapshot, pub subpixel_atlas: RendererGlyphAtlasPerfSnapshot, pub registered_font_blobs_count: u64, pub registered_font_blobs_total_bytes: u64, pub family_id_cache_entries: u64, pub baseline_metrics_cache_entries: u64,
}
Expand description

Per-frame renderer-owned text cache counters.

This is intended for diagnostics bundles and on-screen debug panels. The runner can update it once per rendered frame to make renderer-level churn (text blobs, glyph atlas pressure) visible in a single artifact.

Fields§

§frame_id: FrameId§font_stack_key: u64§font_db_revision: u64§fallback_policy_key: u64

Fingerprint of the effective font fallback policy (locale + family config + injection).

This is intended for diagnostics only.

§frame_missing_glyphs: u64

Total count of missing/tofu glyphs observed across text prepared this frame.

Implementation note: this is currently approximated as the number of shaped glyphs whose glyph id is 0 (the .notdef glyph) across prepared text runs.

§frame_texts_with_missing_glyphs: u64

Count of prepared text blobs that contained at least one missing/tofu glyph.

§blobs_live: u64§blob_cache_entries: u64§shape_cache_entries: u64§measure_cache_buckets: u64§shape_cache_bytes_estimate_total: u64

Best-effort heap byte estimates for text caches (CPU-side).

These values are intended for diagnostics only. They are approximate and may under-count allocator overhead and shared allocations.

§blob_paint_palette_bytes_estimate_total: u64§blob_decorations_bytes_estimate_total: u64§unwrapped_layout_cache_entries: u64§frame_unwrapped_layout_cache_hits: u64§frame_unwrapped_layout_cache_misses: u64§frame_unwrapped_layouts_created: u64§frame_cache_resets: u64§frame_blob_cache_hits: u64§frame_blob_cache_misses: u64§frame_blobs_created: u64§frame_shape_cache_hits: u64§frame_shape_cache_misses: u64§frame_shapes_created: u64§mask_atlas: RendererGlyphAtlasPerfSnapshot§color_atlas: RendererGlyphAtlasPerfSnapshot§subpixel_atlas: RendererGlyphAtlasPerfSnapshot§registered_font_blobs_count: u64

Best-effort process-local font database/cache counters.

These are intended to help attribute CPU-side footprint concerns (e.g. “too many injected font blobs”) without requiring heap profilers.

§registered_font_blobs_total_bytes: u64§family_id_cache_entries: u64§baseline_metrics_cache_entries: u64

Trait Implementations§

Source§

impl Clone for RendererTextPerfSnapshot

Source§

fn clone(&self) -> RendererTextPerfSnapshot

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RendererTextPerfSnapshot

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for RendererTextPerfSnapshot

Source§

fn default() -> RendererTextPerfSnapshot

Returns the “default value” for a type. Read more
Source§

impl Copy for RendererTextPerfSnapshot

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.