Skip to content

Timer

Spice
import "std/time/timer";

Timer struct

High resolution timer

Constructors

ctor

Spice
public p Timer.ctor(TimerMode mode = TimerMode::MILLIS, unsigned long* timerOutput = nil<unsigned long*>)

Construct a timer

Parameters

Name Type Description
mode TimerMode Unit the timer reports durations in (default: TimerMode::MILLIS)
timerOutput unsigned long* Optional pointer accumulating the measured duration across pause cycles (default: nil<unsigned long*>)

Methods

start

Spice
public p Timer.start()

Start the timer, resetting any accumulated output

stop

Spice
public p Timer.stop()

Stop the timer

pause

Spice
public p Timer.pause()

Pause the timer, adding the elapsed duration to the optional output pointer

resume

Spice
public p Timer.resume()

Resume the timer, restarting the measurement from the current time

getDurationInMicros

Spice
public f<unsigned long> Timer.getDurationInMicros()

Retrieve the measured duration in microseconds

Returns: unsigned long — Duration in microseconds

getDurationInMillis

Spice
public f<unsigned long> Timer.getDurationInMillis()

Retrieve the measured duration in milliseconds

Returns: unsigned long — Duration in milliseconds

getDurationInSeconds

Spice
public f<double> Timer.getDurationInSeconds()

Retrieve the measured duration in seconds

Returns: double — Duration in seconds

getDurationInMinutes

Spice
public f<double> Timer.getDurationInMinutes()

Retrieve the measured duration in minutes

Returns: double — Duration in minutes

getDuration

Spice
public f<unsigned long> Timer.getDuration()

Retrieve the measured duration in the timer's configured mode

Returns: unsigned long — Duration in the configured unit

TimerMode enum

Unit in which a Timer reports its measured durations

Item Value Description
MICROS
MILLIS
SECONDS
MINUTES