Skip to main content

TimerBlock

Struct TimerBlock 

Source
pub struct TimerBlock<T> {
    pub data: BlockData,
    /* private fields */
}
Expand description

The Timer block allows timekeeping around discrete events - either by Stopwatch mode or Countdown mode.

The input signal serves as the trigger to start the timer. Any input which is “True” will commence the timer. If the Interruptible option is enabled, the timer will reset every iteration where the input is True. Otherwise, the timer will commence on the first True value. It will then either count down and reset at zero, or count up without ever restarting.

This block is useful for tracking how much time has passed since an event for logical conditions.

Fields§

§data: BlockData

Trait Implementations§

Source§

impl<T> Default for TimerBlock<T>
where T: Scalar + Zero,

Source§

fn default() -> Self

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

impl ProcessBlock for TimerBlock<f64>

Source§

type Inputs = f64

Source§

type Output = f64

Source§

type Parameters = Parameters

Source§

fn process( &mut self, parameters: &Self::Parameters, context: &dyn Context, input: PassBy<'_, Self::Inputs>, ) -> PassBy<'_, Self::Output>

Auto Trait Implementations§

§

impl<T> Freeze for TimerBlock<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for TimerBlock<T>
where T: RefUnwindSafe,

§

impl<T> Send for TimerBlock<T>
where T: Send,

§

impl<T> Sync for TimerBlock<T>
where T: Sync,

§

impl<T> Unpin for TimerBlock<T>
where T: Unpin,

§

impl<T> UnsafeUnpin for TimerBlock<T>
where T: UnsafeUnpin,

§

impl<T> UnwindSafe for TimerBlock<T>
where T: UnwindSafe,

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

Source§

type Output = T

Should always be Self
Source§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

Source§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
Source§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
Source§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
Source§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
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.