]>
Commit | Line | Data |
---|---|---|
c906108c SS |
1 | /* Hardware event manager. |
2 | Copyright (C) 1998 Free Software Foundation, Inc. | |
3 | Contributed by Cygnus Support. | |
4 | ||
5 | This file is part of GDB, the GNU debugger. | |
6 | ||
7 | This program is free software; you can redistribute it and/or modify | |
8 | it under the terms of the GNU General Public License as published by | |
9 | the Free Software Foundation; either version 2, or (at your option) | |
10 | any later version. | |
11 | ||
12 | This program is distributed in the hope that it will be useful, | |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | GNU General Public License for more details. | |
16 | ||
17 | You should have received a copy of the GNU General Public License along | |
18 | with this program; if not, write to the Free Software Foundation, Inc., | |
19 | 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ | |
20 | ||
21 | #ifndef HW_EVENTS_H | |
22 | #define HW_EVENTS_H | |
23 | ||
24 | /* Event manager customized for hardware models. | |
25 | ||
26 | This interface is discussed further in sim-events.h. */ | |
27 | ||
28 | struct hw_event; | |
29 | typedef void (hw_event_callback) (struct hw *me, void *data); | |
30 | ||
31 | struct hw_event *hw_event_queue_schedule | |
32 | (struct hw *me, | |
33 | signed64 delta_time, | |
34 | hw_event_callback *handler, | |
35 | void *data); | |
36 | ||
37 | struct hw_event *hw_event_queue_schedule_tracef | |
38 | (struct hw *me, | |
39 | signed64 delta_time, | |
40 | hw_event_callback *handler, | |
41 | void *data, | |
42 | const char *fmt, | |
43 | ...) __attribute__ ((format (printf, 5, 6))); | |
44 | ||
45 | struct hw_event *hw_event_queue_schedule_vtracef | |
46 | (struct hw *me, | |
47 | signed64 delta_time, | |
48 | hw_event_callback *handler, | |
49 | void *data, | |
50 | const char *fmt, | |
51 | va_list ap); | |
52 | ||
53 | ||
54 | void hw_event_queue_deschedule | |
55 | (struct hw *me, | |
56 | struct hw_event *event_to_remove); | |
57 | ||
58 | signed64 hw_event_queue_time | |
59 | (struct hw *me); | |
60 | ||
38e64f35 AC |
61 | /* Returns the time that remains before the event is raised. */ |
62 | signed64 hw_event_remain_time | |
63 | (struct hw *me, struct hw_event *event); | |
64 | ||
c906108c | 65 | #endif |