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,
return 0;
}
+static inline
+int field_class_bit_array_copy(
+ struct trace_ir_metadata_maps *md_maps,
+ const bt_field_class *in_field_class,
+ bt_field_class *out_field_class)
+{
+ BT_COMP_LOGD("Copying content of bit array field class: "
+ "in-fc-addr=%p, out-fc-addr=%p",
+ in_field_class, out_field_class);
+ BT_COMP_LOGD("Copied content of bit array field class: "
+ "in-fc-addr=%p, out-fc-addr=%p",
+ in_field_class, out_field_class);
+ return 0;
+}
+
static inline
int field_class_unsigned_integer_copy(
struct trace_ir_metadata_maps *md_maps,
out_field_class = bt_field_class_bool_create(
md_maps->output_trace_class);
break;
+ case BT_FIELD_CLASS_TYPE_BIT_ARRAY:
+ out_field_class = bt_field_class_bit_array_create(
+ md_maps->output_trace_class,
+ bt_field_class_bit_array_get_length(
+ in_field_class));
+ break;
case BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER:
out_field_class = bt_field_class_integer_unsigned_create(
md_maps->output_trace_class);
ret = field_class_bool_copy(md_maps,
in_field_class, out_field_class);
break;
+ case BT_FIELD_CLASS_TYPE_BIT_ARRAY:
+ ret = field_class_bit_array_copy(md_maps,
+ in_field_class, out_field_class);
+ break;
case BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER:
ret = field_class_unsigned_integer_copy(md_maps,
in_field_class, out_field_class);