Rudiments
|
Public Member Functions | |
intervaltimer (int32_t which) | |
~intervaltimer () | |
void | initialize () |
void | setInitialInterval (long seconds, long microseconds) |
void | setPeriodicInterval (long seconds, long microseconds) |
void | setIntervals (long seconds, long microseconds) |
void | getInitialInterval (long *seconds, long *microseconds) const |
void | getPeriodicInterval (long *seconds, long *microseconds) const |
bool | start () const |
bool | start (long *seconds, long *microseconds) const |
bool | getTimeRemaining (long *seconds, long *microseconds) const |
bool | stop () |
The intervaltimer class provides methods for interfacing with timers.
A timer has an initial interval and periodic intervals. The timer will raise a signal after the initial interval and then again after each periodic interval.
intervaltimer::intervaltimer | ( | int32_t | which | ) |
Creates an instance of the intervaltimer class.
"which" must be one of: ITIMER_REAL - decrements in real time, raises SIGALRM ITIMER_VIRTUAL - decrements when the process is executing but not during system calls, raises SIGVTALRM ITIMER_PROF - decrements when the process is executing or and during system calls, raises SIGPROF
intervaltimer::~intervaltimer | ( | ) |
Deletes this instance of the intervaltimer class.
void intervaltimer::getInitialInterval | ( | long * | seconds, |
long * | microseconds | ||
) | const |
Sets "seconds" and "microseconds" to the timer's initial interval values.
void intervaltimer::getPeriodicInterval | ( | long * | seconds, |
long * | microseconds | ||
) | const |
Sets "seconds" and "microseconds" to the timer's periodic interval values.
bool intervaltimer::getTimeRemaining | ( | long * | seconds, |
long * | microseconds | ||
) | const |
Sets "seconds" and "microseconds" to the time remaining before the timer will raise the signal.
void intervaltimer::initialize | ( | ) |
Sets (or resets) the initial and periodic intervals to 0 seconds and 0 microseconds.
void intervaltimer::setInitialInterval | ( | long | seconds, |
long | microseconds | ||
) |
Sets the timer's initial interval to "seconds" seconds and "microseconds" microseconds.
void intervaltimer::setIntervals | ( | long | seconds, |
long | microseconds | ||
) |
Sets the timer's initial and periodic intervals both to "seconds" seconds and "microseconds" microseconds.
void intervaltimer::setPeriodicInterval | ( | long | seconds, |
long | microseconds | ||
) |
Sets the timer's periodic interval to "seconds" seconds and "microseconds" microseconds.
bool intervaltimer::start | ( | ) | const |
Starts (or restarts) the timer. It will first run for the initial interval, then raise a signal, then run over and over for the periodic interval, raising the signal at the end of each interval.
bool intervaltimer::start | ( | long * | seconds, |
long * | microseconds | ||
) | const |
Starts (or restarts) the timer. It will first run for the initial interval, then raise a signal, then run over and over for the periodic interval, raising the signal at the end of each interval. "seconds" and "microseconds" will be set to the interval that the timer was using prior to calling start().
bool intervaltimer::stop | ( | ) |
Stops the currently running timer, but preserves it's initial and perodic intervals.