2011-01-05 Michael Snyder <msnyder@vmware.com>
[deliverable/binutils-gdb.git] / gdb / tracepoint.h
index 13e956fdb5fb175a9efa766ebfa9feec680dec19..ecde64dd3041b4c697f0e1414e8764ac229cdcc4 100644 (file)
@@ -1,5 +1,5 @@
 /* Data structures associated with tracepoints in GDB.
-   Copyright (C) 1997, 1998, 1999, 2000, 2007, 2008, 2009, 2010
+   Copyright (C) 1997, 1998, 1999, 2000, 2007, 2008, 2009, 2010, 2011
    Free Software Foundation, Inc.
 
    This file is part of GDB.
@@ -106,6 +106,16 @@ struct trace_status
   /* Unused bytes left in the target's trace buffer.  */
 
   int buffer_free;
+
+  /* 1 if the target will continue tracing after disconnection, else
+     0.  If the target does not report a value, assume 0.  */
+
+  int disconnected_tracing;
+
+  /* 1 if the target is using a circular trace buffer, else 0.  If the
+     target does not report a value, assume 0.  */
+
+  int circular_buffer;
 };
 
 struct trace_status *current_trace_status (void);
@@ -129,7 +139,8 @@ struct uploaded_tp
   /* String that is the encoded form of the tracepoint's condition.  */
   char *cond;
 
-  /* Vectors of strings that are the encoded forms of a tracepoint's actions.  */
+  /* Vectors of strings that are the encoded forms of a tracepoint's
+     actions.  */
   VEC(char_ptr) *actions;
   VEC(char_ptr) *step_actions;
 
@@ -156,6 +167,25 @@ struct uploaded_tsv
   struct uploaded_tsv *next;
 };
 
+/* Struct recording info about a target static tracepoint marker.  */
+
+struct static_tracepoint_marker
+{
+  struct gdbarch *gdbarch;
+  CORE_ADDR address;
+
+  /* The string ID of the marker.  */
+  char *str_id;
+
+  /* Extra target reported info associated with the marker.  */
+  char *extra;
+};
+
+extern void parse_static_tracepoint_marker_definition
+  (char *line, char **pp,
+   struct static_tracepoint_marker *marker);
+extern void release_static_tracepoint_marker (struct static_tracepoint_marker *);
+
 /* A hook used to notify the UI of tracepoint operations.  */
 
 extern void (*deprecated_trace_find_hook) (char *arg, int from_tty);
@@ -180,7 +210,8 @@ extern int encode_source_string (int num, ULONGEST addr,
 
 extern void parse_trace_status (char *line, struct trace_status *ts);
 
-extern void parse_tracepoint_definition (char *line, struct uploaded_tp **utpp);
+extern void parse_tracepoint_definition (char *line,
+                                        struct uploaded_tp **utpp);
 extern void parse_tsv_definition (char *line, struct uploaded_tsv **utsvp);
 
 extern struct uploaded_tp *get_uploaded_tp (int num, ULONGEST addr,
@@ -189,7 +220,7 @@ extern struct breakpoint *create_tracepoint_from_upload (struct uploaded_tp *utp
 extern void merge_uploaded_tracepoints (struct uploaded_tp **utpp);
 extern void merge_uploaded_trace_state_variables (struct uploaded_tsv **utsvp);
 
-extern void disconnect_or_stop_tracing (int from_tty);
+extern void disconnect_tracing (int from_tty);
 
 extern void start_tracing (void);
 extern void stop_tracing (void);
This page took 0.029817 seconds and 4 git commands to generate.