Fix indent for --symbols in "readelf -h"
[deliverable/binutils-gdb.git] / gdb / tracepoint.h
CommitLineData
c906108c 1/* Data structures associated with tracepoints in GDB.
4c38e0a4 2 Copyright (C) 1997, 1998, 1999, 2000, 2007, 2008, 2009, 2010
9b254dd1 3 Free Software Foundation, Inc.
c906108c 4
c5aa993b 5 This file is part of GDB.
c906108c 6
c5aa993b
JM
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
a9762ec7 9 the Free Software Foundation; either version 3 of the License, or
c5aa993b 10 (at your option) any later version.
c906108c 11
c5aa993b
JM
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.
c906108c 16
c5aa993b 17 You should have received a copy of the GNU General Public License
a9762ec7 18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
c906108c
SS
19
20#if !defined (TRACEPOINT_H)
21#define TRACEPOINT_H 1
22
c906108c 23/* The data structure for an action: */
c5aa993b
JM
24struct action_line
25 {
26 struct action_line *next;
27 char *action;
28 };
c906108c 29
c906108c 30enum actionline_type
c5aa993b
JM
31 {
32 BADLINE = -1,
33 GENERIC = 0,
34 END = 1,
35 STEPPING = 2
36 };
c906108c 37
f61e138d
SS
38/* A trace state variable is a value managed by a target being
39 traced. A trace state variable (or tsv for short) can be accessed
40 and assigned to by tracepoint actions and conditionals, but is not
41 part of the program being traced, and it doesn't have to be
42 collected. Effectively the variables are scratch space for
43 tracepoints. */
44
45struct trace_state_variable
46 {
47 /* The variable's name. The user has to prefix with a dollar sign,
48 but we don't store that internally. */
49 const char *name;
50
51 /* An id number assigned by GDB, and transmitted to targets. */
52 int number;
53
54 /* The initial value of a variable is a 64-bit signed integer. */
55 LONGEST initial_value;
56
57 /* 1 if the value is known, else 0. The value is known during a
58 trace run, or in tfind mode if the variable was collected into
59 the current trace frame. */
60 int value_known;
61
62 /* The value of a variable is a 64-bit signed integer. */
63 LONGEST value;
64 };
65
c906108c
SS
66extern unsigned long trace_running_p;
67
d183932d 68/* A hook used to notify the UI of tracepoint operations. */
c906108c 69
98c5b216
TT
70extern void (*deprecated_trace_find_hook) (char *arg, int from_tty);
71extern void (*deprecated_trace_start_stop_hook) (int start, int from_tty);
c906108c 72
a14ed312 73int get_traceframe_number (void);
1042e4c0
SS
74void free_actions (struct breakpoint *);
75enum actionline_type validate_actionline (char **, struct breakpoint *);
c906108c 76
1042e4c0
SS
77extern void end_actions_pseudocommand (char *args, int from_tty);
78extern void while_stepping_pseudocommand (char *args, int from_tty);
c906108c 79
f61e138d
SS
80extern struct trace_state_variable *find_trace_state_variable (const char *name);
81
d183932d 82#endif /* TRACEPOINT_H */
This page took 1.211677 seconds and 4 git commands to generate.