lib: remove CTF concepts of packet and event headers
[babeltrace.git] / plugins / ctf / fs-src / data-stream-file.c
index 517bfec6ade205f1bc1b8f8dcf3ffa9f28ebdfa1..280a5d398ceb5f7b480d9fb4bcde4cc48f7e2722 100644 (file)
@@ -293,11 +293,12 @@ struct ctf_fs_ds_index_entry *ctf_fs_ds_index_add_new_entry(
 }
 
 static
-int convert_cycles_to_ns(bt_clock_class *clock_class,
+int convert_cycles_to_ns(struct ctf_clock_class *clock_class,
                uint64_t cycles, int64_t *ns)
 {
-       return bt_clock_class_cycles_to_ns_from_origin(clock_class, cycles,
-                                                      ns);
+       return bt_util_clock_cycles_to_ns_from_origin(cycles,
+                       clock_class->frequency, clock_class->offset_seconds,
+                       clock_class->offset_cycles, ns);
 }
 
 static
@@ -502,21 +503,29 @@ int init_index_entry(struct ctf_fs_ds_index_entry *entry,
        BT_ASSERT(packet_size >= 0);
        entry->packet_size = packet_size;
 
-       /* Convert the packet's bound to nanoseconds since Epoch. */
-       ret = convert_cycles_to_ns(sc->default_clock_class,
-                                  props->snapshots.beginning_clock,
-                                  &entry->timestamp_begin_ns);
-       if (ret) {
-               BT_LOGD_STR("Failed to convert raw timestamp to nanoseconds since Epoch.");
-               goto end;
+       if (props->snapshots.beginning_clock != UINT64_C(-1)) {
+               /* Convert the packet's bound to nanoseconds since Epoch. */
+               ret = convert_cycles_to_ns(sc->default_clock_class,
+                                          props->snapshots.beginning_clock,
+                                          &entry->timestamp_begin_ns);
+               if (ret) {
+                       BT_LOGD_STR("Failed to convert raw timestamp to nanoseconds since Epoch.");
+                       goto end;
+               }
+       } else {
+               entry->timestamp_begin_ns = UINT64_C(-1);
        }
 
-       ret = convert_cycles_to_ns(sc->default_clock_class,
-                                  props->snapshots.end_clock,
-                                  &entry->timestamp_end_ns);
-       if (ret) {
-               BT_LOGD_STR("Failed to convert raw timestamp to nanoseconds since Epoch.");
-               goto end;
+       if (props->snapshots.end_clock != UINT64_C(-1)) {
+               ret = convert_cycles_to_ns(sc->default_clock_class,
+                                          props->snapshots.end_clock,
+                                          &entry->timestamp_end_ns);
+               if (ret) {
+                       BT_LOGD_STR("Failed to convert raw timestamp to nanoseconds since Epoch.");
+                       goto end;
+               }
+       } else {
+               entry->timestamp_end_ns = UINT64_C(-1);
        }
 
 end:
This page took 0.02685 seconds and 4 git commands to generate.