xref: /dragonfly/contrib/gdb-7/gdb/tracepoint.h (revision 5796c8dc)
1*5796c8dcSSimon Schubert /* Data structures associated with tracepoints in GDB.
2*5796c8dcSSimon Schubert    Copyright (C) 1997, 1998, 1999, 2000, 2007, 2008, 2009
3*5796c8dcSSimon Schubert    Free Software Foundation, Inc.
4*5796c8dcSSimon Schubert 
5*5796c8dcSSimon Schubert    This file is part of GDB.
6*5796c8dcSSimon Schubert 
7*5796c8dcSSimon Schubert    This program is free software; you can redistribute it and/or modify
8*5796c8dcSSimon Schubert    it under the terms of the GNU General Public License as published by
9*5796c8dcSSimon Schubert    the Free Software Foundation; either version 3 of the License, or
10*5796c8dcSSimon Schubert    (at your option) any later version.
11*5796c8dcSSimon Schubert 
12*5796c8dcSSimon Schubert    This program is distributed in the hope that it will be useful,
13*5796c8dcSSimon Schubert    but WITHOUT ANY WARRANTY; without even the implied warranty of
14*5796c8dcSSimon Schubert    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15*5796c8dcSSimon Schubert    GNU General Public License for more details.
16*5796c8dcSSimon Schubert 
17*5796c8dcSSimon Schubert    You should have received a copy of the GNU General Public License
18*5796c8dcSSimon Schubert    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19*5796c8dcSSimon Schubert 
20*5796c8dcSSimon Schubert #if !defined (TRACEPOINT_H)
21*5796c8dcSSimon Schubert #define TRACEPOINT_H 1
22*5796c8dcSSimon Schubert 
23*5796c8dcSSimon Schubert /* The data structure for an action: */
24*5796c8dcSSimon Schubert struct action_line
25*5796c8dcSSimon Schubert   {
26*5796c8dcSSimon Schubert     struct action_line *next;
27*5796c8dcSSimon Schubert     char *action;
28*5796c8dcSSimon Schubert   };
29*5796c8dcSSimon Schubert 
30*5796c8dcSSimon Schubert enum actionline_type
31*5796c8dcSSimon Schubert   {
32*5796c8dcSSimon Schubert     BADLINE = -1,
33*5796c8dcSSimon Schubert     GENERIC = 0,
34*5796c8dcSSimon Schubert     END = 1,
35*5796c8dcSSimon Schubert     STEPPING = 2
36*5796c8dcSSimon Schubert   };
37*5796c8dcSSimon Schubert 
38*5796c8dcSSimon Schubert extern unsigned long trace_running_p;
39*5796c8dcSSimon Schubert 
40*5796c8dcSSimon Schubert /* A hook used to notify the UI of tracepoint operations.  */
41*5796c8dcSSimon Schubert 
42*5796c8dcSSimon Schubert void (*deprecated_trace_find_hook) (char *arg, int from_tty);
43*5796c8dcSSimon Schubert void (*deprecated_trace_start_stop_hook) (int start, int from_tty);
44*5796c8dcSSimon Schubert 
45*5796c8dcSSimon Schubert int get_traceframe_number (void);
46*5796c8dcSSimon Schubert void free_actions (struct breakpoint *);
47*5796c8dcSSimon Schubert enum actionline_type validate_actionline (char **, struct breakpoint *);
48*5796c8dcSSimon Schubert 
49*5796c8dcSSimon Schubert extern void end_actions_pseudocommand (char *args, int from_tty);
50*5796c8dcSSimon Schubert extern void while_stepping_pseudocommand (char *args, int from_tty);
51*5796c8dcSSimon Schubert 
52*5796c8dcSSimon Schubert #endif	/* TRACEPOINT_H */
53