The friendly Operating System for the Internet of Things
Trickle Timer

Detailed Description

Files

file  trickle.h
 Implementation of a generic Trickle Algorithm (RFC 6206)
 

Data Structures

struct  trickle_callback_t
 a generic callback function with arguments that is called by trickle periodically More...
 
struct  trickle_t
 all state variables for a trickle timer More...
 

Functions

void trickle_reset_timer (trickle_t *trickle)
 resets the trickle timer More...
 
void trickle_start (kernel_pid_t pid, trickle_t *trickle, uint16_t interval_msg_type, uint16_t callback_msg_type, uint32_t Imin, uint8_t Imax, uint8_t k)
 start the trickle timer More...
 
void trickle_stop (trickle_t *trickle)
 stops the trickle timer More...
 
void trickle_increment_counter (trickle_t *trickle)
 increments the counter by one More...
 
void trickle_interval (trickle_t *trickle)
 is called after the interval is over and calculates the next interval More...
 
void trickle_callback (trickle_t *trickle)
 is called after the callback interval is over and calls the callback function More...
 

Function Documentation

void trickle_callback ( trickle_t trickle)
Parameters
[in]trickletrickle timer
void trickle_increment_counter ( trickle_t trickle)
Parameters
[in]trickletrickle timer
void trickle_interval ( trickle_t trickle)
Parameters
[in]trickletrickle timer
void trickle_reset_timer ( trickle_t trickle)
Parameters
[in]tricklethe trickle timer
void trickle_start ( kernel_pid_t  pid,
trickle_t trickle,
uint16_t  interval_msg_type,
uint16_t  callback_msg_type,
uint32_t  Imin,
uint8_t  Imax,
uint8_t  k 
)
Parameters
[in]pidtarget thread
[in]trickletrickle timer
[in]interval_msg_typemsg_t.type for interval messages
[in]callback_msg_typemsg_t.type for callback messages
[in]Iminminimum interval
[in]Imaxmaximum interval
[in]kredundancy constant
void trickle_stop ( trickle_t trickle)
Parameters
[in]trickletrickle timer