ncstats

Struct ncstats 

Source
#[repr(C)]
pub struct ncstats {
Show 36 fields pub renders: u64, pub writeouts: u64, pub failed_renders: u64, pub failed_writeouts: u64, pub raster_bytes: u64, pub raster_max_bytes: i64, pub raster_min_bytes: i64, pub render_ns: u64, pub render_max_ns: i64, pub render_min_ns: i64, pub raster_ns: u64, pub raster_max_ns: i64, pub raster_min_ns: i64, pub writeout_ns: u64, pub writeout_max_ns: i64, pub writeout_min_ns: i64, pub cellelisions: u64, pub cellemissions: u64, pub fgelisions: u64, pub fgemissions: u64, pub bgelisions: u64, pub bgemissions: u64, pub defaultelisions: u64, pub defaultemissions: u64, pub refreshes: u64, pub sprixelemissions: u64, pub sprixelelisions: u64, pub sprixelbytes: u64, pub appsync_updates: u64, pub input_errors: u64, pub input_events: u64, pub hpa_gratuitous: u64, pub cell_geo_changes: u64, pub pixel_geo_changes: u64, pub fbbytes: u64, pub planes: c_uint,
}
Expand description

whenever a new field is added here, ensure we add the proper rule to notcurses_stats_reset(), so that values are preserved in the stash stats.

Fields§

§renders: u64

successful ncpile_render() runs

§writeouts: u64

successful ncpile_rasterize() runs

§failed_renders: u64

aborted renders, should be 0

§failed_writeouts: u64

aborted writes

§raster_bytes: u64

bytes emitted to ttyfp

§raster_max_bytes: i64

max bytes emitted for a frame

§raster_min_bytes: i64

min bytes emitted for a frame

§render_ns: u64

nanoseconds spent rendering

§render_max_ns: i64

max ns spent in render for a frame

§render_min_ns: i64

min ns spent in render for a frame

§raster_ns: u64

nanoseconds spent rasterizing

§raster_max_ns: i64

max ns spent in raster for a frame

§raster_min_ns: i64

min ns spent in raster for a frame

§writeout_ns: u64

nanoseconds spent writing frames to terminal

§writeout_max_ns: i64

max ns spent writing out a frame

§writeout_min_ns: i64

min ns spent writing out a frame

§cellelisions: u64

cells we elided entirely thanks to damage maps

§cellemissions: u64

total number of cells emitted to terminal

§fgelisions: u64

RGB fg elision count

§fgemissions: u64

RGB fg emissions

§bgelisions: u64

RGB bg elision count

§bgemissions: u64

RGB bg emissions

§defaultelisions: u64

default color was emitted

§defaultemissions: u64

default color was elided

§refreshes: u64

refresh requests (non-optimized redraw)

§sprixelemissions: u64

sprixel draw count

§sprixelelisions: u64

sprixel elision count

§sprixelbytes: u64

sprixel bytes emitted

§appsync_updates: u64

how many application-synchronized updates?

§input_errors: u64

errors processing control sequences/utf8

§input_events: u64

characters returned to userspace

§hpa_gratuitous: u64

unnecessary hpas issued

§cell_geo_changes: u64

cell geometry changes (resizes)

§pixel_geo_changes: u64

pixel geometry changes (font resize)

§fbbytes: u64

total bytes devoted to all active framebuffers

§planes: c_uint

number of planes currently in existence

Implementations§

Source§

impl ncstats

§NcStats Methods.

Source

pub fn new(nc: &mut Nc) -> &mut Self

Allocates an NcStats object.

Source

pub fn stats(&mut self, nc: &mut Nc)

Acquires an atomic snapshot of the notcurses object’s stats.

Source

pub fn reset(&mut self, nc: &mut Nc)

Resets all cumulative stats (immediate ones are not reset).

Trait Implementations§

Source§

impl Clone for ncstats

Source§

fn clone(&self) -> ncstats

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 ncstats

Source§

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

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

impl Default for ncstats

Source§

fn default() -> ncstats

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

impl Hash for ncstats

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for ncstats

Source§

fn cmp(&self, other: &ncstats) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl PartialEq for ncstats

Source§

fn eq(&self, other: &ncstats) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl PartialOrd for ncstats

Source§

fn partial_cmp(&self, other: &ncstats) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl Copy for ncstats

Source§

impl Eq for ncstats

Source§

impl StructuralPartialEq for ncstats

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.