2015-10-16 00:12:11 +02:00
|
|
|
/*
|
|
|
|
* ircd-ratbox: an advanced Internet Relay Chat Daemon(ircd).
|
|
|
|
* monitor.h: Code for server-side notify lists.
|
|
|
|
*
|
|
|
|
* Copyright (C) 2005 Lee Hardy <lee -at- leeh.co.uk>
|
|
|
|
* Copyright (C) 2005 ircd-ratbox development team
|
|
|
|
*/
|
2016-08-13 05:05:54 +02:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
#define HAVE_IRCD_MONITOR_H
|
2015-10-16 00:12:11 +02:00
|
|
|
|
|
|
|
struct rb_bh;
|
|
|
|
|
2016-08-13 05:05:54 +02:00
|
|
|
#ifdef __cplusplus
|
|
|
|
namespace ircd {
|
|
|
|
|
2015-10-16 00:12:11 +02:00
|
|
|
struct monitor
|
|
|
|
{
|
|
|
|
char name[NICKLEN];
|
|
|
|
rb_dlink_list users;
|
|
|
|
rb_dlink_node node;
|
|
|
|
unsigned int hashv;
|
|
|
|
};
|
|
|
|
|
|
|
|
#define MONITOR_HASH_BITS 16
|
|
|
|
#define MONITOR_HASH_SIZE (1<<MONITOR_HASH_BITS)
|
|
|
|
|
|
|
|
void free_monitor(struct monitor *);
|
|
|
|
|
|
|
|
void init_monitor(void);
|
|
|
|
struct monitor *find_monitor(const char *name, int add);
|
2016-08-22 03:57:43 +02:00
|
|
|
void clear_monitor(client::client *);
|
2015-10-16 00:12:11 +02:00
|
|
|
|
2016-08-22 03:57:43 +02:00
|
|
|
void monitor_signon(client::client *);
|
|
|
|
void monitor_signoff(client::client *);
|
2015-10-16 00:12:11 +02:00
|
|
|
|
2016-08-13 05:05:54 +02:00
|
|
|
} // namespace ircd
|
|
|
|
#endif // __cplusplus
|