syslog-ng source
timerwheel.c File Reference
#include "timerwheel.h"
#include <iv_list.h>
Include dependency graph for timerwheel.c:

Classes

struct  TWEntry
 
struct  TWLevel
 
struct  TimerWheel
 

Functions

void tw_entry_add (struct iv_list_head *head, TWEntry *new)
 
void tw_entry_unlink (TWEntry *entry)
 
TWLeveltw_level_new (gint bits, gint shift)
 
void tw_level_free (TWLevel *self)
 
void timer_wheel_add_timer_entry (TimerWheel *self, TWEntry *entry)
 
TWEntry * timer_wheel_add_timer (TimerWheel *self, gint timeout, TWCallbackFunc cb, gpointer user_data, GDestroyNotify user_data_free)
 
void timer_wheel_del_timer (TimerWheel *self, TWEntry *entry)
 
void timer_wheel_mod_timer (TimerWheel *self, TWEntry *entry, gint new_timeout)
 
guint64 timer_wheel_get_timer_expiration (TimerWheel *self, TWEntry *entry)
 
void timer_wheel_set_time (TimerWheel *self, guint64 new_now, gpointer caller_context)
 
guint64 timer_wheel_get_time (TimerWheel *self)
 
void timer_wheel_expire_all (TimerWheel *self, gpointer caller_context)
 
void timer_wheel_set_associated_data (TimerWheel *self, gpointer assoc_data, GDestroyNotify assoc_data_free)
 
gpointer timer_wheel_get_associated_data (TimerWheel *self)
 
TimerWheel * timer_wheel_new (void)
 
void timer_wheel_free (TimerWheel *self)
 

Function Documentation

◆ timer_wheel_add_timer()

TWEntry* timer_wheel_add_timer ( TimerWheel *  self,
gint  timeout,
TWCallbackFunc  cb,
gpointer  user_data,
GDestroyNotify  user_data_free 
)

◆ timer_wheel_add_timer_entry()

void timer_wheel_add_timer_entry ( TimerWheel *  self,
TWEntry *  entry 
)

◆ timer_wheel_del_timer()

void timer_wheel_del_timer ( TimerWheel *  self,
TWEntry *  entry 
)

◆ timer_wheel_expire_all()

void timer_wheel_expire_all ( TimerWheel *  self,
gpointer  caller_context 
)

◆ timer_wheel_free()

void timer_wheel_free ( TimerWheel *  self)

◆ timer_wheel_get_associated_data()

gpointer timer_wheel_get_associated_data ( TimerWheel *  self)

◆ timer_wheel_get_time()

guint64 timer_wheel_get_time ( TimerWheel *  self)

◆ timer_wheel_get_timer_expiration()

guint64 timer_wheel_get_timer_expiration ( TimerWheel *  self,
TWEntry *  entry 
)

◆ timer_wheel_mod_timer()

void timer_wheel_mod_timer ( TimerWheel *  self,
TWEntry *  entry,
gint  new_timeout 
)

◆ timer_wheel_new()

TimerWheel* timer_wheel_new ( void  )

◆ timer_wheel_set_associated_data()

void timer_wheel_set_associated_data ( TimerWheel *  self,
gpointer  assoc_data,
GDestroyNotify  assoc_data_free 
)

◆ timer_wheel_set_time()

void timer_wheel_set_time ( TimerWheel *  self,
guint64  new_now,
gpointer  caller_context 
)

◆ tw_entry_add()

void tw_entry_add ( struct iv_list_head *  head,
TWEntry *  new 
)

◆ tw_entry_unlink()

void tw_entry_unlink ( TWEntry *  entry)

◆ tw_level_free()

void tw_level_free ( TWLevel self)

◆ tw_level_new()

TWLevel* tw_level_new ( gint  bits,
gint  shift 
)