ir: do not automatically generate a UUID in bt_ctf_clock_class_create()
[babeltrace.git] / lib / ctf-writer / clock.c
index 84125f2229bd6e4ef6100a9f1c69a7d10f906458..04346968f090bb343ac78f1c5ea6aba3480316a8 100644 (file)
 #include <babeltrace/ctf-ir/clock-class.h>
 #include <babeltrace/ctf-ir/clock-class-internal.h>
 #include <babeltrace/ctf-ir/utils.h>
+#include <babeltrace/compat/uuid-internal.h>
 #include <babeltrace/ref.h>
 #include <babeltrace/object-internal.h>
-#include <babeltrace/compiler.h>
+#include <babeltrace/compiler-internal.h>
 #include <inttypes.h>
 
 static
@@ -41,7 +42,9 @@ void bt_ctf_clock_destroy(struct bt_object *obj);
 
 struct bt_ctf_clock *bt_ctf_clock_create(const char *name)
 {
+       int ret;
        struct bt_ctf_clock *clock = NULL;
+       unsigned char cc_uuid[BABELTRACE_UUID_LEN];
 
        if (!name) {
                goto error;
@@ -59,6 +62,15 @@ struct bt_ctf_clock *bt_ctf_clock_create(const char *name)
        if (!clock->clock_class) {
                goto error;
        }
+
+       /* Automatically set clock class's UUID. */
+       ret = bt_uuid_generate(cc_uuid);
+       if (ret) {
+               goto error;
+       }
+
+       ret = bt_ctf_clock_class_set_uuid(clock->clock_class, cc_uuid);
+       assert(ret == 0);
        return clock;
 
 error:
@@ -201,7 +213,7 @@ int bt_ctf_clock_get_is_absolute(struct bt_ctf_clock *clock)
        int is_absolute = -1;
 
        if (clock) {
-               is_absolute = bt_ctf_clock_class_get_is_absolute(
+               is_absolute = bt_ctf_clock_class_is_absolute(
                        clock->clock_class);
        }
 
This page took 0.023272 seconds and 4 git commands to generate.