X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Ftracefile.h;h=47f8bee8f276da9b3eab01cd1c9fc56184869507;hb=9d4a934ce604afea155c39f06834cdbc47e92a6e;hp=54853708291640b6b61fce45b308ee21efc6fd37;hpb=48b6e87ef297136a6409c2c993c4626f28bbb4d1;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/tracefile.h b/gdb/tracefile.h index 5485370829..47f8bee8f2 100644 --- a/gdb/tracefile.h +++ b/gdb/tracefile.h @@ -1,8 +1,8 @@ #ifndef TRACEFILE_H #define TRACEFILE_H 1 -#include "defs.h" #include "tracepoint.h" +#include "target.h" struct trace_file_writer; @@ -85,6 +85,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 +114,20 @@ 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 target_ops +{ +public: + tracefile_target (); + + 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 thread_alive (ptid_t ptid) override; +}; extern void tracefile_fetch_registers (struct regcache *regcache, int regno);