#define BT_COMP_LOG_SELF_COMP self_comp
#define BT_LOG_OUTPUT_LEVEL log_level
#define BT_LOG_TAG "PLUGIN/FLT.LTTNG-UTILS.DEBUG-INFO/TRACE-IR-DATA-COPY"
-#include "plugins/comp-logging.h"
+#include "logging/comp-logging.h"
#include <inttypes.h>
#include <stdint.h>
}
}
+ /*
+ * Safe to use the same value object because it's frozen at this
+ * point.
+ */
+ bt_trace_set_user_attributes(out_trace,
+ bt_trace_borrow_user_attributes_const(in_trace));
+
/*
* Do not copy the trace UUID as it may be modified and should
* no longer have the same UUID.
}
}
+ /*
+ * Safe to use the same value object because it's frozen at this
+ * point.
+ */
+ bt_stream_set_user_attributes(out_stream,
+ bt_stream_borrow_user_attributes_const(in_stream));
BT_COMP_LOGD("Copied content of stream: in-s-addr=%p, out-s-addr=%p",
in_stream, out_stream);
end:
BT_COMP_LOGT("Copying content of field: in-f-addr=%p, out-f-addr=%p",
in_field, out_field);
switch (in_fc_type) {
+ case BT_FIELD_CLASS_TYPE_BOOL:
+ bt_field_bool_set_value(out_field,
+ bt_field_bool_get_value(in_field));
+ break;
+ case BT_FIELD_CLASS_TYPE_BIT_ARRAY:
+ bt_field_bit_array_set_value_as_integer(out_field,
+ bt_field_bit_array_get_value_as_integer(in_field));
+ break;
case BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER:
case BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION:
bt_field_integer_unsigned_set_value(out_field,
bt_field_integer_signed_set_value(out_field,
bt_field_integer_signed_get_value(in_field));
break;
- case BT_FIELD_CLASS_TYPE_REAL:
- bt_field_real_set_value(out_field,
- bt_field_real_get_value(in_field));
+ case BT_FIELD_CLASS_TYPE_SINGLE_PRECISION_REAL:
+ bt_field_real_single_precision_set_value(out_field,
+ bt_field_real_single_precision_get_value(in_field));
+ break;
+ case BT_FIELD_CLASS_TYPE_DOUBLE_PRECISION_REAL:
+ bt_field_real_double_precision_set_value(out_field,
+ bt_field_real_double_precision_get_value(in_field));
break;
case BT_FIELD_CLASS_TYPE_STRING:
{
}
break;
}
+ case BT_FIELD_CLASS_TYPE_OPTION_WITHOUT_SELECTOR:
+ case BT_FIELD_CLASS_TYPE_OPTION_WITH_BOOL_SELECTOR:
+ case BT_FIELD_CLASS_TYPE_OPTION_WITH_UNSIGNED_INTEGER_SELECTOR:
+ case BT_FIELD_CLASS_TYPE_OPTION_WITH_SIGNED_INTEGER_SELECTOR:
+ {
+ const bt_field *in_option_field;
+ bt_field *out_option_field;
+
+ in_option_field = bt_field_option_borrow_field_const(in_field);
+
+ if (in_option_field) {
+ bt_field_option_set_has_field(out_field, BT_TRUE);
+ out_option_field = bt_field_option_borrow_field(
+ out_field);
+ BT_ASSERT(out_option_field);
+ copy_field_content(in_option_field, out_option_field,
+ log_level, self_comp);
+ } else {
+ bt_field_option_set_has_field(out_field, BT_FALSE);
+ }
+
+ break;
+ }
case BT_FIELD_CLASS_TYPE_VARIANT_WITHOUT_SELECTOR:
- case BT_FIELD_CLASS_TYPE_VARIANT_WITH_UNSIGNED_SELECTOR:
- case BT_FIELD_CLASS_TYPE_VARIANT_WITH_SIGNED_SELECTOR:
+ case BT_FIELD_CLASS_TYPE_VARIANT_WITH_UNSIGNED_INTEGER_SELECTOR:
+ case BT_FIELD_CLASS_TYPE_VARIANT_WITH_SIGNED_INTEGER_SELECTOR:
{
bt_field_variant_select_option_field_by_index_status sel_opt_status;
uint64_t in_selected_option_idx;