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