ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/include/event.h
Revision: 9857
Committed: Fri Jan 1 04:43:22 2021 UTC (3 years, 2 months ago) by michael
Content type: text/x-chdr
File size: 1628 byte(s)
Log Message:
- Bump copyright years

File Contents

# User Rev Content
1 adx 30 /*
2 michael 2865 * ircd-hybrid: an advanced, lightweight Internet Relay Chat Daemon (ircd)
3 adx 30 *
4 michael 9857 * Copyright (c) 2000-2021 ircd-hybrid development team
5 adx 30 *
6     * This program is free software; you can redistribute it and/or modify
7     * it under the terms of the GNU General Public License as published by
8     * the Free Software Foundation; either version 2 of the License, or
9     * (at your option) any later version.
10     *
11     * This program is distributed in the hope that it will be useful,
12     * but WITHOUT ANY WARRANTY; without even the implied warranty of
13     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14     * GNU General Public License for more details.
15     *
16     * You should have received a copy of the GNU General Public License
17     * along with this program; if not, write to the Free Software
18 michael 4565 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
19 adx 30 * USA
20     */
21    
22 michael 2865 /*! \file event.h
23 michael 4130 * \brief Timer based event execution
24 michael 2865 * \version $Id$
25     */
26    
27 adx 30 #ifndef INCLUDED_event_h
28     #define INCLUDED_event_h
29    
30 michael 4094 #include "list.h"
31 adx 30
32 michael 8900 struct event_base
33     {
34     struct
35     {
36     uintmax_t sec_real, sec_monotonic;
37     } time;
38     };
39    
40 michael 9342 extern struct event_base *event_base;
41 michael 8900
42 michael 4094 struct event
43 adx 30 {
44 michael 4094 /* public */
45 adx 30 const char *name;
46 michael 4481 void (*handler)(void *);
47 michael 7330 uintmax_t when;
48 michael 8652 bool oneshot;
49 michael 4094
50     /* private */
51 michael 7330 uintmax_t next;
52 michael 4094 void *data;
53 michael 8652 bool active;
54 michael 4094 dlink_node node;
55 adx 30 };
56    
57 michael 6306 extern const dlink_list *event_get_list(void);
58 michael 4339 extern void event_add(struct event *, void *);
59     extern void event_addish(struct event *, void *);
60     extern void event_delete(struct event *);
61 michael 4094 extern void event_run(void);
62 michael 8900 extern void event_time_set(void);
63 adx 30 #endif /* INCLUDED_event_h */

Properties

Name Value
svn:eol-style native
svn:keywords Id