Update email address for Palmer Dabbelt.
[deliverable/binutils-gdb.git] / gdb / python / py-record.h
index 5cf7a0289372370cd6bcada634572839294c3e47..74da1bdc4d6ca667eb4a1a374fbf8f63ddb96764 100644 (file)
@@ -1,6 +1,6 @@
 /* Python interface to record targets.
 
-   Copyright 2017 Free Software Foundation, Inc.
+   Copyright 2017-2019 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-#ifndef GDB_PY_RECORD_H
-#define GDB_PY_RECORD_H
+#ifndef PYTHON_PY_RECORD_H
+#define PYTHON_PY_RECORD_H
 
 #include "inferior.h"
 #include "python-internal.h"
 #include "record.h"
 
 /* Python Record object.  */
-
 typedef struct
 {
   PyObject_HEAD
 
-  /* The ptid this object refers to.  */
-  ptid_t ptid;
+  /* The thread this object refers to.  */
+  thread_info *thread;
 
   /* The current recording method.  */
   enum record_method method;
 } recpy_record_object;
 
+/* Python recorded element object.  This is generic enough to represent
+   recorded instructions as well as recorded function call segments, hence the
+   generic name.  */
+typedef struct
+{
+  PyObject_HEAD
+
+  /* The thread this object refers to.  */
+  thread_info *thread;
+
+  /* The current recording method.  */
+  enum record_method method;
+
+  /* Element number.  */
+  Py_ssize_t number;
+} recpy_element_object;
+
+/* Python RecordInstruction type.  */
+extern PyTypeObject recpy_insn_type;
+
+/* Python RecordFunctionSegment type.  */
+extern PyTypeObject recpy_func_type;
+
+/* Create a new gdb.RecordInstruction object.  */
+extern PyObject *recpy_insn_new (thread_info *thread, enum record_method method,
+                                Py_ssize_t number);
+
+/* Create a new gdb.RecordFunctionSegment object.  */
+extern PyObject *recpy_func_new (thread_info *thread, enum record_method method,
+                                Py_ssize_t number);
+
 /* Create a new gdb.RecordGap object.  */
 extern PyObject *recpy_gap_new (int reason_code, const char *reason_string,
                                Py_ssize_t number);
 
-#endif /* GDB_PY_RECORD_H */
+#endif /* PYTHON_PY_RECORD_H */
This page took 0.070476 seconds and 4 git commands to generate.