packaging: Add python3-base dependency
[platform/upstream/gdb.git] / gdb / tracefile.h
index 5485370..9c7fdea 100644 (file)
@@ -1,8 +1,9 @@
 #ifndef TRACEFILE_H
 #define TRACEFILE_H 1
 
-#include "defs.h"
 #include "tracepoint.h"
+#include "target.h"
+#include "process-stratum-target.h"
 
 struct trace_file_writer;
 
@@ -85,6 +86,9 @@ struct trace_file_write_ops
   void (*write_uploaded_tp) (struct trace_file_writer *self,
                             struct uploaded_tp *tp);
 
+  /* Write target description.  */
+  void (*write_tdesc) (struct trace_file_writer *self);
+
   /* Write to mark the end of the definition part.  */
   void (*write_definition_end) (struct trace_file_writer *self);
 
@@ -111,7 +115,21 @@ struct trace_file_writer
 
 extern struct trace_file_writer *tfile_trace_file_writer_new (void);
 
-extern void init_tracefile_ops (struct target_ops *ops);
+/* Base class for tracefile related targets.  */
+
+class tracefile_target : public process_stratum_target
+{
+public:
+  tracefile_target () = default;
+
+  int get_trace_status (trace_status *ts) override;
+  bool has_all_memory () override;
+  bool has_memory () override;
+  bool has_stack () override;
+  bool has_registers () override;
+  bool has_execution (inferior *inf) override { return false; }
+  bool thread_alive (ptid_t ptid) override;
+};
 
 extern void tracefile_fetch_registers (struct regcache *regcache, int regno);