NetBurner 3.3.8a
PDF Version
TickTimeout Class Reference

TickTimeouts are used to facilitate sequential function calls with timeout parameters that need to index from an initial start time and be proof against TimeTick rollover. More...

#include <nbrtos.h>

Public Member Functions

 TickTimeout (uint32_t timeout)
 Create and initialize the Timeout. More...
 
uint32_t val () const
 Get the timeout duration to be passed to a function utilizing timeout ticks. More...
 
bool expired () const
 Determine whether the timeout duration has elapsed. More...
 
 operator bool () const
 Use the Timeout as a boolean (such as in a branch condition). Since the intention is to be used for 'while' or in a precondition check, the boolean value represents whether the duration is still valid and has not expired. As a result this is the express opposite behavior of the 'expired' method. More...
 

Friends

void OSTimeWaitUntil (uint32_t systemTickValue)
 Delay the task until the specified value of the system timer tick. The number of system ticks per second is defined by the constant: TICKS_PER_SECOND in <nburn_install>/nbrtos/include/constants.h. The default value is 20 ticks per second. More...
 

Detailed Description

TickTimeouts are used to facilitate sequential function calls with timeout parameters that need to index from an initial start time and be proof against TimeTick rollover.

Constructor & Destructor Documentation

◆ TickTimeout()

TickTimeout::TickTimeout ( uint32_t  timeout)
inlineexplicit

Create and initialize the Timeout.

Parameters
timeoutThe maximum allowed time duration in ticks. Note: The maximum delay that can be used is INT32_MAX

Member Function Documentation

◆ expired()

bool TickTimeout::expired ( ) const
inline

Determine whether the timeout duration has elapsed.

Return values
trueThe timeout has expired
falseThe timeout has not expired

◆ operator bool()

TickTimeout::operator bool ( ) const
inline

Use the Timeout as a boolean (such as in a branch condition). Since the intention is to be used for 'while' or in a precondition check, the boolean value represents whether the duration is still valid and has not expired. As a result this is the express opposite behavior of the 'expired' method.

Return values
trueThe Timeout duration is still valid
falseThe Timeout duration is expired

◆ val()

uint32_t TickTimeout::val ( ) const
inline

Get the timeout duration to be passed to a function utilizing timeout ticks.

Return values
uint32_tThe timeout duration

Friends And Related Function Documentation

◆ OSTimeWaitUntil

void OSTimeWaitUntil ( uint32_t  systemTickValue)
friend

Delay the task until the specified value of the system timer tick. The number of system ticks per second is defined by the constant: TICKS_PER_SECOND in <nburn_install>/nbrtos/include/constants.h. The default value is 20 ticks per second.

Parameters
systemTickValueThe system time tick to wait for
uint32_t Now = TimeTick;
while(1)
{
Now += 60 * TICKS_PER_SECOND;
// Do whatever every 60 seconds, no mater how long this takes to run the interval will have a consistant spacing
}
friend void OSTimeWaitUntil(uint32_t systemTickValue)
Delay the task until the specified value of the system timer tick. The number of system ticks per sec...
Definition: nbrtos.cpp:440
See also
OSChangeTaskDly(), OSTimeDly()

The documentation for this class was generated from the following file: