NetSurf
|
#include <time.h>
#include <stdlib.h>
#include "utils/sys_time.h"
#include "utils/log.h"
#include "framebuffer/schedule.h"
Go to the source code of this file.
Data Structures | |
struct | nscallback |
scheduled callback. More... | |
Functions | |
static nserror | schedule_remove (void(*callback)(void *p), void *p) |
Unschedule a callback. More... | |
nserror | framebuffer_schedule (int tival, void(*callback)(void *p), void *p) |
Schedule a callback. More... | |
int | schedule_run (void) |
Process events up to current time. More... | |
void | list_schedule (void) |
LOG all current scheduled events. More... | |
Variables | |
static struct nscallback * | schedule_list = NULL |
nserror framebuffer_schedule | ( | int | tival, |
void(*)(void *p) | callback, | ||
void * | p | ||
) |
Schedule a callback.
tival | interval before the callback should be made in ms |
callback | callback function |
p | user parameter, passed to callback function |
The callback function will be called as soon as possible after t ms have passed.
Definition at line 95 of file schedule.c.
References nscallback::callback, nscallback::next, NSERROR_OK, NSLOG, nscallback::p, schedule_list, schedule_remove(), timeradd, and nscallback::tv.
Referenced by gui_window_start_throbber(), and throbber_advance().
void list_schedule | ( | void | ) |
LOG all current scheduled events.
Definition at line 196 of file schedule.c.
References nscallback::next, NSLOG, schedule_list, and nscallback::tv.
|
static |
Unschedule a callback.
callback | callback function |
p | user parameter, passed to callback function |
All scheduled callbacks matching both callback and p are removed.
Definition at line 49 of file schedule.c.
References nscallback::callback, nscallback::next, NSERROR_OK, NSLOG, nscallback::p, and schedule_list.
Referenced by framebuffer_schedule().
int schedule_run | ( | void | ) |
Process events up to current time.
Process scheduled callbacks up to current time.
Definition at line 128 of file schedule.c.
References nscallback::callback, nscallback::next, NSLOG, nscallback::p, schedule_list, timercmp, timersub, and nscallback::tv.
|
static |
Definition at line 28 of file schedule.c.
Referenced by framebuffer_schedule(), list_schedule(), schedule_remove(), and schedule_run().