riot_wrappers::ztimer

Struct LockedClock

Source
pub struct LockedClock<const HZ: u32>(Clock<HZ>);
Available on riot_module_ztimer only.
Expand description

A Clock that has been acquired using Clock::acquire() (which is backed by ztimer_acquire). Times from a single acquired clock can be compared.

While time stamps from that clock are protected against cross-frequency comparison, it is up to the user to not mix time stamps from different clocks that happen to have the same frequency, from different times of the timer being locked, and to ensure that wraparounds are considered. While the former two could be addressed by giving this type and its ticks a brand lifetime, the wraparound issue would not be addressed by that anyway.

Tuple Fields§

§0: Clock<HZ>

Implementations§

Source§

impl<const HZ: u32> LockedClock<HZ>

Source

pub fn now(&self) -> Timestamp<HZ>

Get the current time value of the clock.

Trait Implementations§

Source§

impl<const HZ: u32> Drop for LockedClock<HZ>

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

§

impl<const HZ: u32> Freeze for LockedClock<HZ>

§

impl<const HZ: u32> RefUnwindSafe for LockedClock<HZ>

§

impl<const HZ: u32> !Send for LockedClock<HZ>

§

impl<const HZ: u32> !Sync for LockedClock<HZ>

§

impl<const HZ: u32> Unpin for LockedClock<HZ>

§

impl<const HZ: u32> UnwindSafe for LockedClock<HZ>

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> IntoSwitch for T

Source§

fn into_switch<ActiveLevel>(self) -> Switch<T, ActiveLevel>

Consumes the IoPin returning a Switch of the appropriate ActiveLevel. Read more
Source§

fn into_active_low_switch(self) -> Switch<Self, ActiveLow>
where Self: Sized,

Consumes the IoPin returning a Switch<IoPin, ActiveLow>. Read more
Source§

fn into_active_high_switch(self) -> Switch<Self, ActiveHigh>
where Self: Sized,

Consumes the IoPin returning a Switch<IoPin, ActiveHigh>. 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.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 4 bytes