lib: remove clock class priority map, use default clock value
[babeltrace.git] / lib / ctf-ir / stream-class.c
index c414f79d96c808be2ba5433adfd043d39009fc72..03d8ce8f15f700d4530f0ca1aae7034941f51e47 100644 (file)
@@ -55,10 +55,10 @@ int bt_stream_class_common_initialize(struct bt_stream_class_common *stream_clas
 {
        BT_LOGD("Initializing common stream class object: name=\"%s\"", name);
 
-       bt_object_init(stream_class, release_func);
+       bt_object_init_shared_with_parent(&stream_class->base, release_func);
        stream_class->name = g_string_new(name);
        stream_class->event_classes = g_ptr_array_new_with_free_func(
-               (GDestroyNotify) bt_object_release);
+               (GDestroyNotify) bt_object_try_spec_release);
        if (!stream_class->event_classes) {
                BT_LOGE_STR("Failed to allocate a GPtrArray.");
                goto error;
@@ -131,7 +131,7 @@ void bt_stream_class_destroy(struct bt_object *obj)
         *
         * 4. Destroying an event makes it recycle its event header
         *    field to its stream class's event header field pool. But
-        *    said pool is already destroyed.
+        *    said pool is already finalized.
         */
        bt_stream_class_common_finalize(BT_TO_COMMON(stream_class));
        bt_object_pool_finalize(&stream_class->event_header_field_pool);
@@ -516,7 +516,7 @@ int bt_stream_class_common_add_event_class(
                *event_id = stream_class->next_event_id;
        }
 
-       bt_object_set_parent(event_class, stream_class);
+       bt_object_set_parent(&event_class->base, &stream_class->base);
 
        if (trace) {
                /*
@@ -572,14 +572,11 @@ end:
        return ret;
 }
 
-int bt_stream_class_add_event_class(
-               struct bt_stream_class *stream_class,
+int bt_stream_class_add_event_class(struct bt_stream_class *stream_class,
                struct bt_event_class *event_class)
 {
        struct bt_trace *trace;
        int ret = 0;
-       uint64_t i;
-       struct bt_clock_class *old_clock_class;
 
        if (!stream_class) {
                BT_LOGW("Invalid parameter: stream class is NULL: "
@@ -588,7 +585,6 @@ int bt_stream_class_add_event_class(
                goto end;
        }
 
-       old_clock_class = stream_class->common.clock_class;
        trace = BT_FROM_COMMON(bt_stream_class_common_borrow_trace(
                BT_TO_COMMON(stream_class)));
        if (trace && trace->is_static) {
@@ -614,28 +610,6 @@ int bt_stream_class_add_event_class(
                (void) bt_trace_object_modification(&obj, trace);
        }
 
-       if (!old_clock_class && stream_class->common.clock_class) {
-               /*
-                * Adding this event class updated the stream class's
-                * single clock class: make sure all the events which
-                * exist in event pools have an existing clock value for
-                * this clock class so that any created event object in
-                * the future (from a pool or not) has this clock value
-                * available.
-                */
-               for (i = 0; i < stream_class->common.event_classes->len; i++) {
-                       struct bt_event_class *event_class =
-                               stream_class->common.event_classes->pdata[i];
-
-                       BT_ASSERT(event_class);
-                       ret = bt_event_class_update_event_pool_clock_values(
-                               event_class);
-                       if (ret) {
-                               goto end;
-                       }
-               }
-       }
-
 end:
        return ret;
 }
This page took 0.025567 seconds and 4 git commands to generate.