timer

Name

timer -- 

Synopsis



typedef     prelude_timer_t;
#define     timer_expire                    (timer)
#define     timer_data                      (timer)
#define     timer_func                      (timer)
#define     timer_set_expire                (timer, x)
#define     timer_set_data                  (timer, x)
#define     timer_set_callback              (timer, x)
void        timer_init                      (prelude_timer_t *timer);
void        timer_reset                     (prelude_timer_t *timer);
void        timer_destroy                   (prelude_timer_t *timer);
void        timer_elapsed                   (prelude_timer_t *timer,
                                             struct timeval *tv);
void        prelude_wake_up_timer           (void);
void        timer_flush                     (void);
void        timer_lock_critical_region      (void);
void        timer_unlock_critical_region    (void);

Description

Details

prelude_timer_t

typedef struct {
        struct list_head list;

        short int expire;
        time_t start_time;

        void *data;
        void (*function)(void *data);
} prelude_timer_t;


timer_expire()

#define timer_expire(timer) (timer)->expire

timer :


timer_data()

#define timer_data(timer) (timer)->data

timer :


timer_func()

#define timer_func(timer) (timer)->function

timer :


timer_set_expire()

#define timer_set_expire(timer, x) timer_expire((timer)) = (x)

timer :

x :


timer_set_data()

#define timer_set_data(timer, x) timer_data((timer)) = (x)

timer :

x :


timer_set_callback()

#define timer_set_callback(timer, x) timer_func((timer)) = (x)

timer :

x :


timer_init ()

void        timer_init                      (prelude_timer_t *timer);

Initialize a timer (add it to the timer list).

timer :

timer to initialize.


timer_reset ()

void        timer_reset                     (prelude_timer_t *timer);

Reset timer 'timer', as if it was just started.

timer :

the timer to reset.


timer_destroy ()

void        timer_destroy                   (prelude_timer_t *timer);

Destroy the timer 'timer', this remove it from the active timer list.

timer :

the timer to destroy.


timer_elapsed ()

void        timer_elapsed                   (prelude_timer_t *timer,
                                             struct timeval *tv);

timer :

tv :


prelude_wake_up_timer ()

void        prelude_wake_up_timer           (void);

Wake up timer that need it. This function should be called every second to work properly.


timer_flush ()

void        timer_flush                     (void);

Expire every timer.


timer_lock_critical_region ()

void        timer_lock_critical_region      (void);

Deactivate timer wake-up until timer_unlock_critical_region() is called.


timer_unlock_critical_region ()

void        timer_unlock_critical_region    (void);

Reactivate timer wake-up after timer_lock_critical_regions() has been called.