doc/ChangeLog:
[deliverable/binutils-gdb.git] / gdb / gdb-events.h
CommitLineData
104c1213 1/* User Interface Events.
349c5d5f 2
9b254dd1
DJ
3 Copyright (C) 1999, 2001, 2002, 2004, 2007, 2008
4 Free Software Foundation, Inc.
104c1213
JM
5
6 Contributed by Cygnus Solutions.
7
afbfc876 8 This file is part of GDB.
104c1213 9
afbfc876
AC
10 This program is free software; you can redistribute it and/or modify
11 it under the terms of the GNU General Public License as published by
a9762ec7 12 the Free Software Foundation; either version 3 of the License, or
afbfc876 13 (at your option) any later version.
104c1213 14
afbfc876
AC
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License for more details.
104c1213 19
afbfc876 20 You should have received a copy of the GNU General Public License
a9762ec7 21 along with this program. If not, see <http://www.gnu.org/licenses/>. */
104c1213
JM
22
23/* Work in progress */
24
25/* This file was created with the aid of ``gdb-events.sh''.
26
27 The bourn shell script ``gdb-events.sh'' creates the files
28 ``new-gdb-events.c'' and ``new-gdb-events.h and then compares
29 them against the existing ``gdb-events.[hc]''. Any differences
30 found being reported.
31
32 If editing this file, please also run gdb-events.sh and merge any
33 changes into that script. Conversely, when making sweeping changes
34 to this file, modifying gdb-events.sh and using its output may
35 prove easier. */
36
37
38#ifndef GDB_EVENTS_H
39#define GDB_EVENTS_H
40
104c1213
JM
41
42/* COMPAT: pointer variables for old, unconverted events.
43 A call to set_gdb_events() will automatically update these. */
44
45
46
30867156
MS
47/* Type definition of all hook functions. Recommended pratice is to
48 first declare each hook function using the below ftype and then
49 define it. */
104c1213
JM
50
51typedef void (gdb_events_breakpoint_create_ftype) (int b);
52typedef void (gdb_events_breakpoint_delete_ftype) (int b);
53typedef void (gdb_events_breakpoint_modify_ftype) (int b);
ba9fe036
KS
54typedef void (gdb_events_tracepoint_create_ftype) (int number);
55typedef void (gdb_events_tracepoint_delete_ftype) (int number);
56typedef void (gdb_events_tracepoint_modify_ftype) (int number);
67c2c32c 57typedef void (gdb_events_architecture_changed_ftype) (void);
104c1213
JM
58
59
60/* gdb-events: object. */
61
62struct gdb_events
63 {
64 gdb_events_breakpoint_create_ftype *breakpoint_create;
65 gdb_events_breakpoint_delete_ftype *breakpoint_delete;
66 gdb_events_breakpoint_modify_ftype *breakpoint_modify;
ba9fe036
KS
67 gdb_events_tracepoint_create_ftype *tracepoint_create;
68 gdb_events_tracepoint_delete_ftype *tracepoint_delete;
69 gdb_events_tracepoint_modify_ftype *tracepoint_modify;
67c2c32c 70 gdb_events_architecture_changed_ftype *architecture_changed;
104c1213
JM
71 };
72
73
74/* Interface into events functions.
c4093a6a 75 Where a *_p() predicate is present, it must be called before
30867156 76 calling the hook proper. */
104c1213
JM
77extern void breakpoint_create_event (int b);
78extern void breakpoint_delete_event (int b);
79extern void breakpoint_modify_event (int b);
ba9fe036
KS
80extern void tracepoint_create_event (int number);
81extern void tracepoint_delete_event (int number);
82extern void tracepoint_modify_event (int number);
67c2c32c 83extern void architecture_changed_event (void);
104c1213 84
30867156 85/* Install custom gdb-events hooks. */
2726dafc 86extern struct gdb_events *deprecated_set_gdb_event_hooks (struct gdb_events *vector);
104c1213 87
30867156 88/* Deliver any pending events. */
104c1213
JM
89extern void gdb_events_deliver (struct gdb_events *vector);
90
30867156 91/* Clear event handlers. */
63d022e0
KS
92extern void clear_gdb_event_hooks (void);
93
104c1213 94#endif
This page took 0.589187 seconds and 4 git commands to generate.