tap-driver.sh: flush stdout after each test result
[babeltrace.git] / plugins / ctf / fs-src / metadata.c
index e949374d6320dbfa2005961ae111eaa32df05c2f..75043dc17842ba7e1563a91e6979e1249ac84365 100644 (file)
 #include <stdint.h>
 #include <stdlib.h>
 #include <stdbool.h>
-#include <babeltrace/assert-internal.h>
+#include <babeltrace2/assert-internal.h>
 #include <glib.h>
-#include <babeltrace/compat/uuid-internal.h>
-#include <babeltrace/compat/memstream-internal.h>
-#include <babeltrace/babeltrace.h>
+#include <babeltrace2/compat/uuid-internal.h>
+#include <babeltrace2/compat/memstream-internal.h>
+#include <babeltrace2/babeltrace.h>
 
 #include "fs.h"
 #include "file.h"
@@ -86,7 +86,10 @@ end:
        return file;
 }
 
-int ctf_fs_metadata_set_trace(struct ctf_fs_trace *ctf_fs_trace,
+BT_HIDDEN
+int ctf_fs_metadata_set_trace_class(
+               bt_self_component_source *self_comp,
+               struct ctf_fs_trace *ctf_fs_trace,
                struct ctf_fs_metadata_config *config)
 {
        int ret = 0;
@@ -103,9 +106,8 @@ int ctf_fs_metadata_set_trace(struct ctf_fs_trace *ctf_fs_trace,
                goto end;
        }
 
-       ctf_fs_trace->metadata->decoder = ctf_metadata_decoder_create(
-               config ? &decoder_config : NULL,
-               ctf_fs_trace->name->str);
+       ctf_fs_trace->metadata->decoder = ctf_metadata_decoder_create(self_comp,
+               config ? &decoder_config : NULL);
        if (!ctf_fs_trace->metadata->decoder) {
                BT_LOGE("Cannot create metadata decoder object");
                ret = -1;
@@ -119,9 +121,10 @@ int ctf_fs_metadata_set_trace(struct ctf_fs_trace *ctf_fs_trace,
                goto end;
        }
 
-       ctf_fs_trace->metadata->trace = ctf_metadata_decoder_get_ir_trace(
-               ctf_fs_trace->metadata->decoder);
-       BT_ASSERT(ctf_fs_trace->metadata->trace);
+       ctf_fs_trace->metadata->trace_class =
+               ctf_metadata_decoder_get_ir_trace_class(
+                       ctf_fs_trace->metadata->decoder);
+       BT_ASSERT(!self_comp || ctf_fs_trace->metadata->trace_class);
        ctf_fs_trace->metadata->tc =
                ctf_metadata_decoder_borrow_ctf_trace_class(
                        ctf_fs_trace->metadata->decoder);
@@ -132,20 +135,22 @@ end:
        return ret;
 }
 
+BT_HIDDEN
 int ctf_fs_metadata_init(struct ctf_fs_metadata *metadata)
 {
        /* Nothing to initialize for the moment. */
        return 0;
 }
 
+BT_HIDDEN
 void ctf_fs_metadata_fini(struct ctf_fs_metadata *metadata)
 {
        if (metadata->text) {
                free(metadata->text);
        }
 
-       if (metadata->trace) {
-               BT_PUT(metadata->trace);
+       if (metadata->trace_class) {
+               BT_TRACE_CLASS_PUT_REF_AND_RESET(metadata->trace_class);
        }
 
        if (metadata->decoder) {
This page took 0.024471 seconds and 4 git commands to generate.