ir: trace: pass remove listeners when adding listeners
[babeltrace.git] / include / babeltrace / ctf-ir / trace-internal.h
index f49e85bc1d09d7f7dbf1d013a8bda0ebeaf43c54..f2275fb7e7a7d4d9ef730c58104fbe799f1d61cc 100644 (file)
 #include <babeltrace/object-internal.h>
 #include <babeltrace/babeltrace-internal.h>
 #include <babeltrace/values.h>
+#include <babeltrace/types.h>
 #include <glib.h>
 #include <sys/types.h>
-#include <uuid/uuid.h>
+#include <babeltrace/compat/uuid-internal.h>
 
 enum field_type_alias {
        FIELD_TYPE_ALIAS_UINT5_T = 0,
@@ -51,8 +52,8 @@ struct bt_ctf_trace {
        struct bt_object base;
        GString *name;
        int frozen;
-       uuid_t uuid;
-       bool uuid_set;
+       unsigned char uuid[BABELTRACE_UUID_LEN];
+       bt_bool uuid_set;
        enum bt_ctf_byte_order native_byte_order;
        struct bt_value *environment;
        GPtrArray *clocks; /* Array of pointers to bt_ctf_clock_class */
@@ -68,7 +69,9 @@ struct bt_ctf_trace {
         */
        int valid;
        GPtrArray *listeners; /* Array of struct listener_wrapper */
-       bool is_static;
+       GArray *is_static_listeners;
+       bt_bool is_static;
+       bt_bool in_remove_listener;
 };
 
 struct metadata_context {
@@ -88,7 +91,7 @@ int bt_ctf_trace_object_modification(struct bt_ctf_object *object,
                void *trace_ptr);
 
 BT_HIDDEN
-bool bt_ctf_trace_has_clock_class(struct bt_ctf_trace *trace,
+bt_bool bt_ctf_trace_has_clock_class(struct bt_ctf_trace *trace,
                struct bt_ctf_clock_class *clock_class);
 
 /**
This page took 0.02525 seconds and 4 git commands to generate.