File: dbhook.h

package info (click to toggle)
ratbox-services 1.2.4%2Brepack-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 11,760 kB
  • ctags: 6,989
  • sloc: ansic: 76,435; sh: 17,527; cpp: 3,029; perl: 1,048; makefile: 740; pascal: 607; yacc: 256; lex: 232
file content (34 lines) | stat: -rw-r--r-- 711 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#ifndef INCLUDED_dbhook_h
#define INCLUDED_dbhook_h

/* chicken and egg, these depend on each other.. */
struct rsdb_hook;

typedef int (*dbh_callback)(struct rsdb_hook *dbh, const char *value);
typedef void (*dbh_schedule_callback)(void *data);

struct rsdb_hook
{
	char *table;
	char *hook_value;
	dbh_callback callback;
	dlink_node ptr;
};

struct dbh_schedule
{
	dbh_schedule_callback callback;
	void *arg;
	char *sql;
	dlink_node ptr;
};

void init_rsdb_hook(void);

struct rsdb_hook *rsdb_hook_add(const char *table, const char *hook_value,
				int frequency, dbh_callback);
void rsdb_hook_delete(dbh_callback);

void rsdb_hook_schedule(dbh_schedule_callback, void *arg, const char *format, ...);

#endif