X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fgdb-events.h;h=02314287bd3700b8477d36ea8e14056b1ea423d1;hb=6e29ef6d2828415f5ee2d6e1690d13bc40a8d5d4;hp=c98af7a4f63c45b3f559f190c846796fd9509f7a;hpb=ed9a39ebf9f55562c7c582155f6721c3e685ce91;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/gdb-events.h b/gdb/gdb-events.h index c98af7a4f6..02314287bd 100644 --- a/gdb/gdb-events.h +++ b/gdb/gdb-events.h @@ -1,23 +1,25 @@ /* User Interface Events. - Copyright 1999 Free Software Foundation, Inc. + + Copyright (C) 1999, 2001, 2002, 2004, 2007 Free Software Foundation, Inc. Contributed by Cygnus Solutions. -This file is part of GDB. + This file is part of GDB. -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ /* Work in progress */ @@ -37,23 +39,23 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #ifndef GDB_EVENTS_H #define GDB_EVENTS_H -#ifndef WITH_GDB_EVENTS -#define WITH_GDB_EVENTS 1 -#endif - /* COMPAT: pointer variables for old, unconverted events. A call to set_gdb_events() will automatically update these. */ -/* Type definition of all hook functions. - Recommended pratice is to first declare each hook function using - the below ftype and then define it. */ +/* Type definition of all hook functions. Recommended pratice is to + first declare each hook function using the below ftype and then + define it. */ typedef void (gdb_events_breakpoint_create_ftype) (int b); typedef void (gdb_events_breakpoint_delete_ftype) (int b); typedef void (gdb_events_breakpoint_modify_ftype) (int b); +typedef void (gdb_events_tracepoint_create_ftype) (int number); +typedef void (gdb_events_tracepoint_delete_ftype) (int number); +typedef void (gdb_events_tracepoint_modify_ftype) (int number); +typedef void (gdb_events_architecture_changed_ftype) (void); /* gdb-events: object. */ @@ -63,35 +65,31 @@ struct gdb_events gdb_events_breakpoint_create_ftype *breakpoint_create; gdb_events_breakpoint_delete_ftype *breakpoint_delete; gdb_events_breakpoint_modify_ftype *breakpoint_modify; + gdb_events_tracepoint_create_ftype *tracepoint_create; + gdb_events_tracepoint_delete_ftype *tracepoint_delete; + gdb_events_tracepoint_modify_ftype *tracepoint_modify; + gdb_events_architecture_changed_ftype *architecture_changed; }; /* Interface into events functions. Where a *_p() predicate is present, it must be called before - calling the hook proper. */ + calling the hook proper. */ extern void breakpoint_create_event (int b); extern void breakpoint_delete_event (int b); extern void breakpoint_modify_event (int b); +extern void tracepoint_create_event (int number); +extern void tracepoint_delete_event (int number); +extern void tracepoint_modify_event (int number); +extern void architecture_changed_event (void); +/* Install custom gdb-events hooks. */ +extern struct gdb_events *deprecated_set_gdb_event_hooks (struct gdb_events *vector); -/* When GDB_EVENTS are not being used, completly disable them. */ - -#if !WITH_GDB_EVENTS -#define breakpoint_create_event(b) 0 -#define breakpoint_delete_event(b) 0 -#define breakpoint_modify_event(b) 0 -#endif - -/* Install custom gdb-events hooks. */ -extern struct gdb_events *set_gdb_event_hooks (struct gdb_events *vector); - -/* Deliver any pending events. */ +/* Deliver any pending events. */ extern void gdb_events_deliver (struct gdb_events *vector); -#if !WITH_GDB_EVENTS -#define set_gdb_events(x) 0 -#define set_gdb_event_hooks(x) 0 -#define gdb_events_deliver(x) 0 -#endif +/* Clear event handlers. */ +extern void clear_gdb_event_hooks (void); #endif