pub struct FrameTiming {
pub layout_time_ns: u64,
pub paint_time_ns: u64,
pub gpu_wait_time_ns: u64,
pub total_time_ns: u64,
}Expand description
Frame timing data for a single frame.
All times are in nanoseconds for consistent units.
§Example
use martensite_devtools::hud::FrameTiming;
let timing = FrameTiming {
layout_time_ns: 500_000,
paint_time_ns: 300_000,
gpu_wait_time_ns: 100_000,
total_time_ns: 900_000,
};
assert_eq!(timing.total_time_ns, 900_000);Fields§
§layout_time_ns: u64Time spent in layout passes (nanoseconds).
paint_time_ns: u64Time spent encoding the paint list (nanoseconds).
gpu_wait_time_ns: u64Time spent waiting for the GPU (nanoseconds).
total_time_ns: u64Total frame time (nanoseconds).
Implementations§
Trait Implementations§
Source§impl Clone for FrameTiming
impl Clone for FrameTiming
Source§fn clone(&self) -> FrameTiming
fn clone(&self) -> FrameTiming
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for FrameTiming
Source§impl Debug for FrameTiming
impl Debug for FrameTiming
Source§impl Default for FrameTiming
impl Default for FrameTiming
Source§fn default() -> FrameTiming
fn default() -> FrameTiming
Returns the “default value” for a type. Read more
impl Eq for FrameTiming
Source§impl PartialEq for FrameTiming
impl PartialEq for FrameTiming
impl StructuralPartialEq for FrameTiming
Auto Trait Implementations§
impl Freeze for FrameTiming
impl RefUnwindSafe for FrameTiming
impl Send for FrameTiming
impl Sync for FrameTiming
impl Unpin for FrameTiming
impl UnsafeUnpin for FrameTiming
impl UnwindSafe for FrameTiming
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more