X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=plugins%2Fctf%2Ffs-src%2Fmetadata.c;h=75043dc17842ba7e1563a91e6979e1249ac84365;hb=68b66a256a54d32992dfefeaad11eea88b7df234;hp=48d416c8b0b8edab8d6cf93096ba643bccf85070;hpb=862ca4ed7b3a8ef14f69529d252bccc48a33108a;p=babeltrace.git diff --git a/plugins/ctf/fs-src/metadata.c b/plugins/ctf/fs-src/metadata.c index 48d416c8..75043dc1 100644 --- a/plugins/ctf/fs-src/metadata.c +++ b/plugins/ctf/fs-src/metadata.c @@ -27,11 +27,11 @@ #include #include #include -#include +#include #include -#include -#include -#include +#include +#include +#include #include "fs.h" #include "file.h" @@ -86,7 +86,10 @@ end: return file; } -int ctf_fs_metadata_set_trace_class(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,7 +106,7 @@ int ctf_fs_metadata_set_trace_class(struct ctf_fs_trace *ctf_fs_trace, goto end; } - ctf_fs_trace->metadata->decoder = ctf_metadata_decoder_create( + 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"); @@ -121,7 +124,7 @@ int ctf_fs_metadata_set_trace_class(struct ctf_fs_trace *ctf_fs_trace, ctf_fs_trace->metadata->trace_class = ctf_metadata_decoder_get_ir_trace_class( ctf_fs_trace->metadata->decoder); - BT_ASSERT(ctf_fs_trace->metadata->trace_class); + 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,12 +135,14 @@ 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) { @@ -145,7 +150,7 @@ void ctf_fs_metadata_fini(struct ctf_fs_metadata *metadata) } if (metadata->trace_class) { - BT_OBJECT_PUT_REF_AND_RESET(metadata->trace_class); + BT_TRACE_CLASS_PUT_REF_AND_RESET(metadata->trace_class); } if (metadata->decoder) {