Print timestamps in text plug-in
[babeltrace.git] / plugins / ctf / common / notif-iter / notif-iter.c
index d4bfdb1b14409503fb03869ce998d07d60b47878..260d15ee21d4dcd76cd2cfcc37089c16ea922ca4 100644 (file)
@@ -1758,6 +1758,37 @@ end:
        return selected_field_type;
 }
 
+static
+int set_event_clocks(struct bt_ctf_event *event,
+               struct bt_ctf_notif_iter *notit)
+{
+       int ret;
+       GHashTableIter iter;
+       struct bt_ctf_clock *clock;
+       uint64_t *clock_state;
+
+       g_hash_table_iter_init(&iter, notit->clock_states);
+
+       while (g_hash_table_iter_next(&iter, (gpointer) &clock,
+                       (gpointer) &clock_state)) {
+               struct bt_ctf_clock_value *clock_value;
+
+               clock_value = bt_ctf_clock_value_create(clock, *clock_state);
+               if (!clock_value) {
+                       ret = -1;
+                       goto end;
+               }
+               ret = bt_ctf_event_set_clock_value(event, clock, clock_value);
+               bt_put(clock_value);
+               if (ret) {
+                       goto end;
+               }
+       }
+       ret = 0;
+end:
+       return ret;
+}
+
 static
 struct bt_ctf_event *create_event(struct bt_ctf_notif_iter *notit)
 {
@@ -1795,6 +1826,11 @@ struct bt_ctf_event *create_event(struct bt_ctf_notif_iter *notit)
                goto error;
        }
 
+       ret = set_event_clocks(event, notit);
+       if (ret) {
+               goto error;
+       }
+
        /* Associate with current packet. */
        assert(notit->packet);
        ret = bt_ctf_event_set_packet(event, notit->packet);
This page took 0.023662 seconds and 4 git commands to generate.