summaryrefslogtreecommitdiffstats
path: root/cpukit/libmisc/capture/capture.h
diff options
context:
space:
mode:
authorJennifer Averett <jennifer.averett@oarcorp.com>2014-10-03 14:01:44 -0500
committerJennifer Averett <jennifer.averett@oarcorp.com>2014-11-24 14:04:53 -0600
commit3d5bcdedfd078da2ec3a508cbd3a1cd5112335bf (patch)
tree89b5d746c56aa553d6c517f713e3f2ecbce11b36 /cpukit/libmisc/capture/capture.h
parenttestsuites/.../tmacros.h: Add parentheses to fix warning (diff)
downloadrtems-3d5bcdedfd078da2ec3a508cbd3a1cd5112335bf.tar.bz2
capture: Move logging of task record to occur after filter check.
The catpture task record is now logged just prior to the first log entry using that task instead of the first time the task is seen. This involved splitting the record task method into an initialize task and a record task.
Diffstat (limited to 'cpukit/libmisc/capture/capture.h')
-rw-r--r--cpukit/libmisc/capture/capture.h24
1 files changed, 23 insertions, 1 deletions
diff --git a/cpukit/libmisc/capture/capture.h b/cpukit/libmisc/capture/capture.h
index a4c3310338..f9076865a2 100644
--- a/cpukit/libmisc/capture/capture.h
+++ b/cpukit/libmisc/capture/capture.h
@@ -141,7 +141,8 @@ typedef struct rtems_capture_control_s
* Task flags.
*/
#define RTEMS_CAPTURE_TRACED (1U << 0)
-#define RTEMS_CAPTURE_RECORD_TASK (1U << 1)
+#define RTEMS_CAPTURE_INIT_TASK (1U << 1)
+#define RTEMS_CAPTURE_RECORD_TASK (1U << 2)
/*
* @brief Capture record.
@@ -598,6 +599,15 @@ const char*
rtems_capture_event_text (int event);
/**
+ * @brief Capture initialize task
+ *
+ * This function initializes capture control in the tcb.
+ *
+ * @param[in] tcb is the task control block for the task
+ */
+void rtems_capture_initialize_task( rtems_tcb* tcb );
+
+/**
* @brief Capture record task.
*
* This function records a new capture task record.
@@ -619,6 +629,18 @@ static inline bool rtems_capture_task_recorded( rtems_tcb* tcb ) {
}
/**
+ * @brief Capture task initialized
+ *
+ * This function returns true if this task information has been
+ * initialized.
+ *
+ * @param[in] tcb is the task control block for the task
+ */
+static inline bool rtems_capture_task_initialized( rtems_tcb* tcb ) {
+ return ( (tcb->Capture.flags & RTEMS_CAPTURE_INIT_TASK) != 0 );
+}
+
+/**
* @brief Capture get task id.
*
* This function returns the task id.