Zigbee Protocol Controller 1.6.0

Files

file  etimer.c
 
file  etimer.h
 

Classes

struct  etimer
 

Macros

#define data   _data
 

Functions

 PROCESS (etimer_process, "Event timer")
 
static void update_time (void)
 
 PROCESS_THREAD (etimer_process, ev, data)
 
static void add_timer (struct etimer *timer)
 
 PROCESS_NAME (etimer_process)
 

Variables

static struct etimertimerlist
 
static clock_time_t next_expiration
 

Functions called from timer interrupts, by the system

void etimer_request_poll (void)
 Make the event timer aware that the clock has changed. More...
 
int etimer_pending (void)
 Check if there are any non-expired event timers. More...
 
clock_time_t etimer_next_expiration_time (void)
 Get next event timer expiration time. More...
 

Functions called from application programs

void etimer_set (struct etimer *et, clock_time_t interval)
 Set an event timer. More...
 
void etimer_reset (struct etimer *et)
 Reset an event timer with the same interval as was previously set. More...
 
void etimer_restart (struct etimer *et)
 Restart an event timer from the current point in time. More...
 
void etimer_adjust (struct etimer *et, int td)
 Adjust the expiration time for an event timer. More...
 
int etimer_expired (struct etimer *et)
 Check if an event timer has expired. More...
 
clock_time_t etimer_expiration_time (struct etimer *et)
 Get the expiration time for the event timer. More...
 
clock_time_t etimer_start_time (struct etimer *et)
 Get the start time for the event timer. More...
 
void etimer_stop (struct etimer *et)
 Stop a pending event timer. More...
 

Detailed Description

Event timers provides a way to generate timed events. An event timer will post an event to the process that set the timer when the event timer expires.

An event timer is declared as a struct etimer and all access to the event timer is made by a pointer to the declared event timer.

See also
Simple timer library
Clock library (used by the timer library)

Macro Definition Documentation

◆ data

#define data   _data

Function Documentation

◆ add_timer()

static void add_timer ( struct etimer timer)
static

◆ etimer_adjust()

void etimer_adjust ( struct etimer et,
int  td 
)

Adjust the expiration time for an event timer.

Parameters
etA pointer to the event timer.
tdThe time difference to adjust the expiration time with.
        This function is used to adjust the time the event
        timer will expire. It can be used to synchronize
        periodic timers without the need to restart the timer
        or change the timer interval.

        \note This function should only be used for small
        adjustments. For large adjustments use etimer_set()
        instead.

        \note A periodic timer will drift unless the
        etimer_reset() function is used.
See also
etimer_set()
etimer_reset()

◆ etimer_expiration_time()

clock_time_t etimer_expiration_time ( struct etimer et)

Get the expiration time for the event timer.

Parameters
etA pointer to the event timer
Returns
The expiration time for the event timer.
        This function returns the expiration time for an event timer.

◆ etimer_expired()

CCIF int etimer_expired ( struct etimer et)

Check if an event timer has expired.

Parameters
etA pointer to the event timer
Returns
Non-zero if the timer has expired, zero otherwise.
        This function tests if an event timer has expired and
        returns true or false depending on its status.

◆ etimer_next_expiration_time()

clock_time_t etimer_next_expiration_time ( void  )

Get next event timer expiration time.

Returns
Next expiration time of all pending event timers. If there are no pending event timers this function returns 0.
This functions returns next expiration time of all
pending event timers.

◆ etimer_pending()

int etimer_pending ( void  )

Check if there are any non-expired event timers.

Returns
True if there are active event timers, false if there are no active timers.

This function checks if there are any active event timers that have not expired.

◆ etimer_request_poll()

void etimer_request_poll ( void  )

Make the event timer aware that the clock has changed.

        This function is used to inform the event timer module
        that the system clock has been updated. Typically, this
        function would be called from the timer interrupt
        handler when the clock has ticked.

◆ etimer_reset()

CCIF void etimer_reset ( struct etimer et)

Reset an event timer with the same interval as was previously set.

Parameters
etA pointer to the event timer.
        This function resets the event timer with the same
        interval that was given to the event timer with the
        etimer_set() function. The start point of the interval
        is the exact time that the event timer last
        expired. Therefore, this function will cause the timer
        to be stable over time, unlike the etimer_restart()
        function.
See also
etimer_restart()

◆ etimer_restart()

void etimer_restart ( struct etimer et)

Restart an event timer from the current point in time.

Parameters
etA pointer to the event timer.
        This function restarts the event timer with the same
        interval that was given to the etimer_set()
        function. The event timer will start at the current
        time.

        \note A periodic timer will drift if this function is
        used to reset it. For periodic timers, use the
        etimer_reset() function instead.
See also
etimer_reset()

◆ etimer_set()

CCIF void etimer_set ( struct etimer et,
clock_time_t  interval 
)

Set an event timer.

Parameters
etA pointer to the event timer
intervalThe interval before the timer expires.
        This function is used to set an event timer for a time
        sometime in the future. When the event timer expires,
        the event PROCESS_EVENT_TIMER will be posted to the
        process that called the etimer_set() function.

◆ etimer_start_time()

clock_time_t etimer_start_time ( struct etimer et)

Get the start time for the event timer.

Parameters
etA pointer to the event timer
Returns
The start time for the event timer.
        This function returns the start time (when the timer
        was last set) for an event timer.

◆ etimer_stop()

void etimer_stop ( struct etimer et)

Stop a pending event timer.

Parameters
etA pointer to the pending event timer.
        This function stops an event timer that has previously
        been set with etimer_set() or etimer_reset(). After
        this function has been called, the event timer will not
        emit any event when it expires.

◆ PROCESS()

PROCESS ( etimer_process  ,
"Event timer  
)

◆ PROCESS_NAME()

PROCESS_NAME ( etimer_process  )

◆ PROCESS_THREAD()

PROCESS_THREAD ( etimer_process  ,
ev  ,
data   
)

◆ update_time()

static void update_time ( void  )
static

Variable Documentation

◆ next_expiration

clock_time_t next_expiration
static

◆ timerlist

struct etimer* timerlist
static