FD.io VPP  v21.01.1
Vector Packet Processing
igmp_timer.h File Reference
+ Include dependency graph for igmp_timer.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define IGMP_TIMER_ID_INVALID   (~0)
 
#define foreach_igmp_timer_type
 IGMP timer types and their values QUERY - the general query timer SRC - source expiration LEAVE - leave latency. More...
 

Typedefs

typedef u32 igmp_timer_id_t
 The id of a running timer. More...
 
typedef void(* igmp_timer_function_t) (u32 obj, void *data)
 A call-back function invoked when a timer expires;. More...
 
typedef enum igmp_timer_type_t_ igmp_timer_type_t
 

Enumerations

enum  igmp_timer_type_t_ { foreach_igmp_timer_type }
 

Functions

igmp_timer_id_t igmp_timer_schedule (f64 when, u32 obj, igmp_timer_function_t fn, void *data)
 Schedule a timer to expire in 'when' seconds. More...
 
void igmp_timer_retire (igmp_timer_id_t *tid)
 
int igmp_timer_is_running (igmp_timer_id_t tid)
 
f64 igmp_timer_get_expiry_time (igmp_timer_id_t t)
 
void * igmp_timer_get_data (igmp_timer_id_t t)
 
void igmp_timer_set_data (igmp_timer_id_t t, void *data)
 
u8format_igmp_timer_id (u8 *s, va_list *args)
 
u32 igmp_timer_type_get (igmp_timer_type_t t)
 
void igmp_timer_type_set (igmp_timer_type_t t, u32 v)
 

Macro Definition Documentation

◆ foreach_igmp_timer_type

#define foreach_igmp_timer_type
Value:
_ (0x1, QUERY) \
_ (0x2, SRC) \
_ (0x3, LEAVE) \
_ (0x4, REPORT_INTERVAL)

IGMP timer types and their values QUERY - the general query timer SRC - source expiration LEAVE - leave latency.

Definition at line 62 of file igmp_timer.h.

◆ IGMP_TIMER_ID_INVALID

#define IGMP_TIMER_ID_INVALID   (~0)

Definition at line 28 of file igmp_timer.h.

Typedef Documentation

◆ igmp_timer_function_t

typedef void(* igmp_timer_function_t) (u32 obj, void *data)

A call-back function invoked when a timer expires;.

Parameters
obj- the [pool] index of the object that scheduled the timer
data- Data registered by the client at schedule time.

Definition at line 35 of file igmp_timer.h.

◆ igmp_timer_id_t

The id of a running timer.

Definition at line 26 of file igmp_timer.h.

◆ igmp_timer_type_t

Enumeration Type Documentation

◆ igmp_timer_type_t_

Enumerator
foreach_igmp_timer_type 

Definition at line 68 of file igmp_timer.h.

Function Documentation

◆ format_igmp_timer_id()

u8* format_igmp_timer_id ( u8 s,
va_list *  args 
)

Definition at line 235 of file igmp_timer.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ igmp_timer_get_data()

void* igmp_timer_get_data ( igmp_timer_id_t  t)

Definition at line 111 of file igmp_timer.c.

+ Here is the caller graph for this function:

◆ igmp_timer_get_expiry_time()

f64 igmp_timer_get_expiry_time ( igmp_timer_id_t  t)

◆ igmp_timer_is_running()

int igmp_timer_is_running ( igmp_timer_id_t  tid)

Definition at line 131 of file igmp_timer.c.

◆ igmp_timer_retire()

void igmp_timer_retire ( igmp_timer_id_t tid)

Definition at line 221 of file igmp_timer.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ igmp_timer_schedule()

igmp_timer_id_t igmp_timer_schedule ( f64  when,
u32  obj,
igmp_timer_function_t  fn,
void *  data 
)

Schedule a timer to expire in 'when' seconds.

Definition at line 195 of file igmp_timer.c.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ igmp_timer_set_data()

void igmp_timer_set_data ( igmp_timer_id_t  t,
void *  data 
)

Definition at line 121 of file igmp_timer.c.

+ Here is the caller graph for this function:

◆ igmp_timer_type_get()

u32 igmp_timer_type_get ( igmp_timer_type_t  t)

Definition at line 68 of file igmp_timer.c.

+ Here is the caller graph for this function:

◆ igmp_timer_type_set()

void igmp_timer_type_set ( igmp_timer_type_t  t,
u32  v 
)

Definition at line 75 of file igmp_timer.c.

+ Here is the caller graph for this function: