Yate
Public Member Functions | Static Public Member Functions
SignallingTimer Class Reference

A signalling timer. More...

#include <yatesig.h>

Inheritance diagram for SignallingTimer:
SignallingMessageTimer

List of all members.

Public Member Functions

 SignallingTimer (u_int64_t interval, u_int64_t time=0)
void interval (u_int64_t value)
void interval (const NamedList &params, const char *param, unsigned int minVal, unsigned int defVal, bool allowDisable, bool sec=false)
u_int64_t interval () const
u_int64_t fireTime () const
void start (u_int64_t time=Time::msecNow())
void fire (u_int64_t time=Time::msecNow())
void stop ()
bool started () const
bool timeout (u_int64_t time=Time::msecNow()) const

Static Public Member Functions

static unsigned int getInterval (const NamedList &params, const char *param, unsigned int minVal, unsigned int defVal, unsigned int maxVal=0, bool allowDisable=false)

Detailed Description

A signalling timer.

Timer management class. Used to manage timeouts. The time is kept in miliseconds


Constructor & Destructor Documentation

SignallingTimer ( u_int64_t  interval,
u_int64_t  time = 0 
) [inline]

Constructor

Parameters:
intervalThe timeout interval. Set to 0 to disable
timeOptional timeout value. If non 0, the timer is started

Member Function Documentation

void fire ( u_int64_t  time = Time::msecNow()) [inline]

Fire the timer at a specific absolute time

Parameters:
timeAbsolute time (in msec) when the timer will fire
u_int64_t fireTime ( ) const [inline]

Get the time this timer will fire (timeout)

Returns:
The timeout (fire) time

Reimplemented in SignallingMessageTimer.

Referenced by SignallingMessageTimer::fireTime().

static unsigned int getInterval ( const NamedList params,
const char *  param,
unsigned int  minVal,
unsigned int  defVal,
unsigned int  maxVal = 0,
bool  allowDisable = false 
) [static]

Retrieve a timer interval from a list of parameters.

Parameters:
paramsThe list of parameters
paramThe name of the parameter containing the timer interval value
minValMinimum value allowed for the timer interval
defValDefault value if it fails to get one from the given parameter
maxValOptional interval maximum value
allowDisableTrue to allow 0 for the timer interval
Returns:
The interval value
void interval ( u_int64_t  value) [inline]

Set the timeout interval

Parameters:
valueThe new timeout value
void interval ( const NamedList params,
const char *  param,
unsigned int  minVal,
unsigned int  defVal,
bool  allowDisable,
bool  sec = false 
) [inline]

Set the timeout interval from a list of parameters. The interval value is checked to be at least minVal or 0 if allowDisable is true

Parameters:
paramsThe list of parameters
paramThe name of the parameter containing the timer interval value
minValMinimum value allowed for the timer interval
defValDefault value if it fails to get one from the given parameter
allowDisableTrue to allow 0 for the timer interval
secTrue if the interval value if given in seconds
u_int64_t interval ( ) const [inline]

Get the timeout interval

Returns:
The timeout interval
void start ( u_int64_t  time = Time::msecNow()) [inline]

Start the timer if enabled (interval is positive)

Parameters:
timeTime to be added to the interval to set the timeout point
bool started ( ) const [inline]

Check if the timer is started

Returns:
True if the timer is started
void stop ( ) [inline]

Stop the timer

bool timeout ( u_int64_t  time = Time::msecNow()) const [inline]

Check if the timer is started and timed out

Parameters:
timeThe time to compare with
Returns:
True if the timer timed out

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