Struct ClockRate

Source
pub struct ClockRate { /* private fields */ }
Expand description

Time measuring device. Uses system monotonic clock counter and yields ClockSteps for each step.

Rate can be set to control the speed of the clock.

Implementations§

Source§

impl ClockRate

Source

pub fn new() -> Self

Returns new ClockRate instance.

Source

pub fn reset(&mut self)

Resets the clock. Sets start to the given instant. And set clocks to start.

Source

pub fn set_now(&mut self, now: TimeStamp)

Sets current clock time to given time stamp.

Source

pub fn with_now(self, now: TimeStamp) -> Self

Sets current clock time to given time stamp.

Source

pub fn now(&self) -> TimeStamp

Returns time stamp corresponding to “now” of the last step.

Source

pub fn set_rate(&mut self, rate: f32)

Set rate to specified float value.

Source

pub fn with_rate(self, rate: f32) -> Self

Set rate to specified float value.

Source

pub fn rate(&self) -> f64

Returns current rate.

Source

pub fn set_rate_ratio(&mut self, nom: u64, denom: NonZeroU64)

Set rate to specified ratio.

Source

pub fn with_rate_ratio(self, nom: u64, denom: NonZeroU64) -> Self

Set rate to specified ratio.

Source

pub fn rate_ratio(&mut self) -> (u64, NonZeroU64)

Returns current rate ratio.

Source

pub fn pause(&mut self)

Set rate to 0.

Source

pub fn step(&mut self, span: TimeSpan) -> ClockStep

Advances the clock by given time span and returns ClockStep result. with new time stamp and time span since previous step.

Source

pub fn ticker(&self, freq: Frequency) -> FrequencyTicker

Trait Implementations§

Source§

impl Clone for ClockRate

Source§

fn clone(&self) -> ClockRate

Returns a copy 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 Default for ClockRate

Source§

fn default() -> Self

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

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.