7#ifndef BABELTRACE2_TRACE_IR_FIELD_CLASS_H
8#define BABELTRACE2_TRACE_IR_FIELD_CLASS_H
12#ifndef __BT_IN_BABELTRACE_H
13# error "Please include <babeltrace2/babeltrace.h> instead."
19#include <babeltrace2/types.h>
1967 __BT_FIELD_CLASS_TYPE_BIG_VALUE = 1ULL << 62,
1987 const bt_field_class *field_class) __BT_NOEXCEPT;
2018 return (type & other_type) == other_type;
2057 bt_field_class *field_class,
2058 const bt_value *user_attributes) __BT_NOEXCEPT;
2085 bt_field_class *field_class) __BT_NOEXCEPT;
2095 const bt_field_class *field_class) __BT_NOEXCEPT;
2125 const bt_field_class *field_class) __BT_NOEXCEPT;
2159 bt_trace_class *trace_class) __BT_NOEXCEPT;
2210 bt_trace_class *trace_class, uint64_t length) __BT_NOEXCEPT;
2228 const bt_field_class *field_class) __BT_NOEXCEPT;
2292 bt_field_class *field_class,
const char *label,
2293 const bt_integer_range_set_unsigned *index_ranges) __BT_NOEXCEPT;
2316 const bt_field_class *field_class) __BT_NOEXCEPT;
2354extern const bt_field_class_bit_array_flag *
2356 const bt_field_class *field_class, uint64_t index) __BT_NOEXCEPT;
2391extern const bt_field_class_bit_array_flag *
2393 const bt_field_class *field_class,
const char *label) __BT_NOEXCEPT;
2484 const bt_field_class *field_class, uint64_t value_as_integer,
2486 uint64_t *count) __BT_NOEXCEPT;
2509 const bt_field_class_bit_array_flag *flag) __BT_NOEXCEPT;
2528extern const bt_integer_range_set_unsigned *
2530 const bt_field_class_bit_array_flag *flag) __BT_NOEXCEPT;
2574 bt_field_class *field_class, uint64_t n) __BT_NOEXCEPT;
2605 const bt_field_class *field_class) __BT_NOEXCEPT;
2652 uint64_t hints) __BT_NOEXCEPT;
2681 const bt_field_class *field_class) __BT_NOEXCEPT;
2716 const bt_field_class *
const field_class,
2775 bt_field_class *field_class,
2806 const bt_field_class *field_class) __BT_NOEXCEPT;
2852 bt_trace_class *trace_class) __BT_NOEXCEPT;
2898 bt_trace_class *trace_class) __BT_NOEXCEPT;
2935 bt_trace_class *trace_class) __BT_NOEXCEPT;
2972 bt_trace_class *trace_class) __BT_NOEXCEPT;
3062 const bt_field_class *field_class) __BT_NOEXCEPT;
3083 const bt_field_class_enumeration_mapping *mapping)
3135 bt_trace_class *trace_class) __BT_NOEXCEPT;
3170 bt_field_class *field_class,
const char *label,
3171 const bt_integer_range_set_unsigned *ranges) __BT_NOEXCEPT;
3206extern const bt_field_class_enumeration_unsigned_mapping *
3208 const bt_field_class *field_class, uint64_t index)
3241extern const bt_field_class_enumeration_unsigned_mapping *
3243 const bt_field_class *field_class,
const char *label)
3295 const bt_field_class *field_class, uint64_t value,
3297 uint64_t *count) __BT_NOEXCEPT;
3329extern const bt_integer_range_set_unsigned *
3331 const bt_field_class_enumeration_unsigned_mapping *mapping)
3353const bt_field_class_enumeration_mapping *
3355 const bt_field_class_enumeration_unsigned_mapping *mapping)
3358 return __BT_UPCAST_CONST(bt_field_class_enumeration_mapping, mapping);
3410 bt_trace_class *trace_class) __BT_NOEXCEPT;
3445 bt_field_class *field_class,
const char *label,
3446 const bt_integer_range_set_signed *ranges) __BT_NOEXCEPT;
3481extern const bt_field_class_enumeration_signed_mapping *
3483 const bt_field_class *field_class, uint64_t index)
3516extern const bt_field_class_enumeration_signed_mapping *
3518 const bt_field_class *field_class,
const char *label)
3570 const bt_field_class *field_class, int64_t value,
3572 uint64_t *count) __BT_NOEXCEPT;
3604extern const bt_integer_range_set_signed *
3606 const bt_field_class_enumeration_signed_mapping *mapping)
3628const bt_field_class_enumeration_mapping *
3630 const bt_field_class_enumeration_signed_mapping *mapping)
3633 return __BT_UPCAST_CONST(bt_field_class_enumeration_mapping, mapping);
3668 bt_trace_class *trace_class) __BT_NOEXCEPT;
3720 bt_trace_class *trace_class, uint64_t length) __BT_NOEXCEPT;
3761extern bt_field_class *
3763 bt_trace_class *trace_class) __BT_NOEXCEPT;
3812extern bt_field_class *
3814 bt_trace_class *trace_class,
3815 const bt_field_location *length_field_location) __BT_NOEXCEPT;
3837 const bt_field_class *field_class) __BT_NOEXCEPT;
3860extern const bt_field_location *
3862 const bt_field_class *field_class) __BT_NOEXCEPT;
3914 const char *media_type) __BT_NOEXCEPT;
3946 const bt_field_class *field_class) __BT_NOEXCEPT;
3976 bt_field_class *field_class) __BT_NOEXCEPT;
3985extern const bt_field_class *
3987 const bt_field_class *field_class) __BT_NOEXCEPT;
4038 bt_trace_class *trace_class,
4039 bt_field_class *element_field_class, uint64_t length)
4058 const bt_field_class *field_class) __BT_NOEXCEPT;
4146 bt_trace_class *trace_class,
4147 bt_field_class *element_field_class,
4148 bt_field_class *length_field_class) __BT_NOEXCEPT;
4198 bt_trace_class *trace_class,
4199 bt_field_class *element_field_class);
4264 bt_trace_class *trace_class,
4265 bt_field_class *element_field_class,
4266 const bt_field_location *length_field_location);
4302extern const bt_field_path *
4304 const bt_field_class *field_class) __BT_NOEXCEPT;
4330extern const bt_field_location *
4332 const bt_field_class *field_class);
4369 bt_trace_class *trace_class) __BT_NOEXCEPT;
4422 bt_field_class *field_class,
4423 const char *name, bt_field_class *member_field_class)
4444 const bt_field_class *field_class) __BT_NOEXCEPT;
4480extern bt_field_class_structure_member *
4482 bt_field_class *field_class, uint64_t index) __BT_NOEXCEPT;
4491extern const bt_field_class_structure_member *
4493 const bt_field_class *field_class, uint64_t index)
4529extern bt_field_class_structure_member *
4531 bt_field_class *field_class,
const char *name) __BT_NOEXCEPT;
4540extern const bt_field_class_structure_member *
4542 const bt_field_class *field_class,
const char *name)
4578 const bt_field_class_structure_member *member) __BT_NOEXCEPT;
4598extern bt_field_class *
4600 bt_field_class_structure_member *member) __BT_NOEXCEPT;
4609extern const bt_field_class *
4611 const bt_field_class_structure_member *member) __BT_NOEXCEPT;
4643 bt_field_class_structure_member *member,
4644 const bt_value *user_attributes) __BT_NOEXCEPT;
4674 bt_field_class_structure_member *member) __BT_NOEXCEPT;
4683extern const bt_value *
4685 const bt_field_class_structure_member *member) __BT_NOEXCEPT;
4714 bt_field_class *field_class) __BT_NOEXCEPT;
4723extern const bt_field_class *
4725 const bt_field_class *field_class) __BT_NOEXCEPT;
4788 bt_trace_class *trace_class,
4789 bt_field_class *optional_field_class) __BT_NOEXCEPT;
4840 bt_trace_class *trace_class,
4841 bt_field_class *optional_field_class) __BT_NOEXCEPT;
4884extern const bt_field_path *
4886 const bt_field_class *field_class) __BT_NOEXCEPT;
4911extern const bt_field_location *
4913 const bt_field_class *field_class) __BT_NOEXCEPT;
4991 bt_trace_class *trace_class,
4992 bt_field_class *optional_field_class,
4993 bt_field_class *selector_field_class) __BT_NOEXCEPT;
5059 bt_trace_class *trace_class,
5060 bt_field_class *optional_field_class,
5061 const bt_field_location *selector_field_location) __BT_NOEXCEPT;
5087 bt_field_class *field_class,
bt_bool selector_is_reversed)
5114 const bt_field_class *field_class) __BT_NOEXCEPT;
5197extern bt_field_class *
5199 bt_trace_class *trace_class,
5200 bt_field_class *optional_field_class,
5201 bt_field_class *selector_field_class,
5202 const bt_integer_range_set_unsigned *ranges)
5274extern bt_field_class *
5276 bt_trace_class *trace_class,
5277 bt_field_class *optional_field_class,
5278 const bt_field_location *selector_field_location,
5279 const bt_integer_range_set_unsigned *ranges) __BT_NOEXCEPT;
5299extern const bt_integer_range_set_unsigned *
5301 const bt_field_class *field_class) __BT_NOEXCEPT;
5384extern bt_field_class *
5386 bt_trace_class *trace_class,
5387 bt_field_class *optional_field_class,
5388 bt_field_class *selector_field_class,
5389 const bt_integer_range_set_signed *ranges) __BT_NOEXCEPT;
5460extern bt_field_class *
5462 bt_trace_class *trace_class,
5463 bt_field_class *optional_field_class,
5464 const bt_field_location *selector_field_location,
5465 const bt_integer_range_set_signed *ranges) __BT_NOEXCEPT;
5485extern const bt_integer_range_set_signed *
5487 const bt_field_class *field_class) __BT_NOEXCEPT;
5573 bt_trace_class *trace_class,
5574 bt_field_class *selector_field_class) __BT_NOEXCEPT;
5594 const bt_field_class *field_class) __BT_NOEXCEPT;
5630extern bt_field_class_variant_option *
5632 bt_field_class *field_class, uint64_t index) __BT_NOEXCEPT;
5641extern const bt_field_class_variant_option *
5643 const bt_field_class *field_class, uint64_t index)
5679extern bt_field_class_variant_option *
5681 bt_field_class *field_class,
const char *name) __BT_NOEXCEPT;
5690extern const bt_field_class_variant_option *
5692 const bt_field_class *field_class,
const char *name)
5738 const bt_field_class_variant_option *option) __BT_NOEXCEPT;
5759 bt_field_class_variant_option *option) __BT_NOEXCEPT;
5768extern const bt_field_class *
5770 const bt_field_class_variant_option *option) __BT_NOEXCEPT;
5805 bt_field_class_variant_option *option,
5806 const bt_value *user_attributes) __BT_NOEXCEPT;
5837 bt_field_class_variant_option *option) __BT_NOEXCEPT;
5847 const bt_field_class_variant_option *option) __BT_NOEXCEPT;
5899 bt_trace_class *trace_class) __BT_NOEXCEPT;
5964 bt_field_class *field_class,
const char *name,
5965 bt_field_class *option_field_class) __BT_NOEXCEPT;
6028extern const bt_field_path *
6030 const bt_field_class *field_class) __BT_NOEXCEPT;
6057extern const bt_field_location *
6059 const bt_field_class *field_class);
6118 bt_trace_class *trace_class,
6119 const bt_field_location *selector_field_location) __BT_NOEXCEPT;
6177 bt_field_class *field_class,
const char *name,
6178 bt_field_class *option_field_class,
6179 const bt_integer_range_set_unsigned *ranges) __BT_NOEXCEPT;
6214extern const bt_field_class_variant_with_selector_field_integer_unsigned_option *
6216 const bt_field_class *field_class, uint64_t index)
6253extern const bt_field_class_variant_with_selector_field_integer_unsigned_option *
6255 const bt_field_class *field_class,
const char *name)
6289extern const bt_integer_range_set_unsigned *
6291 const bt_field_class_variant_with_selector_field_integer_unsigned_option *option)
6313const bt_field_class_variant_option *
6315 const bt_field_class_variant_with_selector_field_integer_unsigned_option *option)
6318 return __BT_UPCAST_CONST(bt_field_class_variant_option, option);
6378 bt_trace_class *trace_class,
6379 const bt_field_location *selector_field_location) __BT_NOEXCEPT;
6437 bt_field_class *field_class,
const char *name,
6438 bt_field_class *option_field_class,
6439 const bt_integer_range_set_signed *ranges)
6475extern const bt_field_class_variant_with_selector_field_integer_signed_option *
6477 const bt_field_class *field_class, uint64_t index)
6514extern const bt_field_class_variant_with_selector_field_integer_signed_option *
6516 const bt_field_class *field_class,
const char *name)
6550extern const bt_integer_range_set_signed *
6552 const bt_field_class_variant_with_selector_field_integer_signed_option *option)
6574const bt_field_class_variant_option *
6576 const bt_field_class_variant_with_selector_field_integer_signed_option *option)
6579 return __BT_UPCAST_CONST(bt_field_class_variant_option, option);
6605 const bt_field_class *field_class) __BT_NOEXCEPT;
6623 const bt_field_class *field_class) __BT_NOEXCEPT;
6639#define BT_FIELD_CLASS_PUT_REF_AND_RESET(_field_class) \
6641 bt_field_class_put_ref(_field_class); \
6642 (_field_class) = NULL; \
6670#define BT_FIELD_CLASS_MOVE_REF(_dst, _src) \
6672 bt_field_class_put_ref(_dst); \
#define BT_FALSE
False value for bt_bool.
Definition types.h:114
int bt_bool
Babeltrace 2 boolean type.
Definition types.h:126
#define BT_TRUE
True value for bt_bool.
Definition types.h:108
bt_field_class_variant_with_selector_field_integer_append_option_status bt_field_class_variant_with_selector_field_integer_signed_append_option(bt_field_class *field_class, const char *name, bt_field_class *option_field_class, const bt_integer_range_set_signed *ranges)
Appends an option to the variant field class (instances with a linked signed integer selector field) ...
bt_field_class * bt_field_class_blob_static_create(bt_trace_class *trace_class, uint64_t length)
Creates a static BLOB field class having the length length from the trace class trace_class.
bt_field_class * bt_field_class_structure_member_borrow_field_class(bt_field_class_structure_member *member)
Borrows the field class from the structure field class member member.
const bt_field_location * bt_field_class_array_dynamic_with_length_field_borrow_length_field_location_const(const bt_field_class *field_class)
Borrows the length field location from the dynamic array field class (instances with a linked length ...
bt_field_class * bt_field_class_option_with_selector_field_location_integer_unsigned_create(bt_trace_class *trace_class, bt_field_class *optional_field_class, const bt_field_location *selector_field_location, const bt_integer_range_set_unsigned *ranges)
Creates an option field class (instances with a linked unsigned integer selector field) having the op...
const bt_integer_range_set_unsigned * bt_field_class_bit_array_flag_borrow_index_ranges_const(const bt_field_class_bit_array_flag *flag)
Borrows the bit index ranges from the bit array field class flag flag.
const bt_field_class_enumeration_unsigned_mapping * bt_field_class_enumeration_unsigned_borrow_mapping_by_label_const(const bt_field_class *field_class, const char *label)
Borrows the mapping having the label label from the unsigned enumeration field class field_class.
bt_field_class * bt_field_class_option_borrow_field_class(bt_field_class *field_class)
Borrows the optional field class from the option field class field_class.
const bt_field_location * bt_field_class_variant_with_selector_field_borrow_selector_field_location_const(const bt_field_class *field_class)
Borrows the selector field location from the variant field class (instances with a linked selector fi...
bt_field_class_enumeration_add_mapping_status bt_field_class_enumeration_signed_add_mapping(bt_field_class *field_class, const char *label, const bt_integer_range_set_signed *ranges)
Adds a mapping to the signed enumeration field class field_class having the label label and the signe...
bt_field_class_bit_array_add_flag_status
Status codes for bt_field_class_bit_array_add_flag().
Definition field-class.h:2236
static const bt_field_class_enumeration_mapping * bt_field_class_enumeration_signed_mapping_as_mapping_const(const bt_field_class_enumeration_signed_mapping *mapping)
Upcasts the signed enumeration field class mapping mapping to the common bt_field_class_enumeration_m...
Definition field-class.h:3629
const bt_field_path * bt_field_class_variant_with_selector_field_borrow_selector_field_path_const(const bt_field_class *field_class)
Borrows the selector field path from the variant field class (instances with a linked selector field)...
const bt_integer_range_set_signed * bt_field_class_option_with_selector_field_integer_signed_borrow_selector_ranges_const(const bt_field_class *field_class)
Borrows the signed integer ranges from the option field class (with a signed integer selector field) ...
const bt_field_path * bt_field_class_array_dynamic_with_length_field_borrow_length_field_path_const(const bt_field_class *field_class)
Borrows the length field path from the dynamic array field class (instances with a linked length fiel...
const char * bt_field_class_structure_member_get_name(const bt_field_class_structure_member *member)
Returns the name of the structure field class member member.
bt_field_class_enumeration_add_mapping_status
Status codes for bt_field_class_enumeration_unsigned_add_mapping() and bt_field_class_enumeration_sig...
Definition field-class.h:3016
bt_field_class * bt_field_class_array_dynamic_create(bt_trace_class *trace_class, bt_field_class *element_field_class, bt_field_class *length_field_class)
Creates a dynamic array field class having the element field class element_field_class from the trace...
const char * bt_field_class_variant_option_get_name(const bt_field_class_variant_option *option)
Returns the name of the variant field class option option.
const bt_value * bt_field_class_structure_member_borrow_user_attributes_const(const bt_field_class_structure_member *member)
Borrows the user attributes of the structure field class member member (const version).
char const *const * bt_field_class_enumeration_mapping_label_array
Array of const enumeration field class mapping labels.
Definition field-class.h:2988
static bt_bool bt_field_class_type_is(const bt_field_class_type type, const bt_field_class_type other_type)
Returns whether or not the field class type type conceptually is the field class type other_type.
Definition field-class.h:2015
const bt_value * bt_field_class_variant_option_borrow_user_attributes_const(const bt_field_class_variant_option *option)
Borrows the user attributes of the variant field class option option (const version).
const bt_field_class * bt_field_class_array_borrow_element_field_class_const(const bt_field_class *field_class)
Borrows the element field class from the array field class field_class (const version).
uint64_t bt_field_class_integer_get_field_value_hints(const bt_field_class *field_class)
Returns the field value hints of the integer field class field_class.
bt_field_class * bt_field_class_option_without_selector_create(bt_trace_class *trace_class, bt_field_class *optional_field_class)
Creates an option field class (instances without a linked selector field) having the optional field c...
bt_field_class_variant_with_selector_field_integer_append_option_status
Status codes for bt_field_class_variant_with_selector_field_integer_unsigned_append_option() and bt_f...
Definition field-class.h:5981
bt_field_class_type
Field class type enumerators.
Definition field-class.h:1633
const bt_field_class_variant_with_selector_field_integer_signed_option * bt_field_class_variant_with_selector_field_integer_signed_borrow_option_by_index_const(const bt_field_class *field_class, uint64_t index)
Borrows the option at index index from the variant field class (instances with a linked signed intege...
bt_field_class * bt_field_class_blob_dynamic_with_length_field_location_create(bt_trace_class *trace_class, const bt_field_location *length_field_location)
Creates a dynamic BLOB field class (instances with a linked length field) having the length field loc...
bt_field_class_blob_set_media_type_status bt_field_class_blob_set_media_type(bt_field_class *field_class, const char *media_type)
Sets the IANA media type of the BLOB field class field_class to a copy of media_type.
uint64_t bt_field_class_get_graph_mip_version(const bt_field_class *field_class)
Returns the effective Message Interchange Protocol (MIP) version of the trace processing graph contai...
bt_field_class_bit_array_get_active_flag_labels_for_value_as_integer_status
Status codes for bt_field_class_bit_array_get_active_flag_labels_for_value_as_integer().
Definition field-class.h:2412
uint64_t bt_field_class_bit_array_get_flag_count(const bt_field_class *field_class)
Returns the number of flags contained in the bit array field class field_class.
const bt_field_class_variant_option * bt_field_class_variant_borrow_option_by_index_const(const bt_field_class *field_class, uint64_t index)
Borrows the option at index index from the variant field class field_class (const version).
void bt_field_class_integer_set_field_value_hints(bt_field_class *field_class, uint64_t hints)
Sets the field value hints of the integer field class field_class to a bitwise disjunction (OR) of bt...
bt_field_class * bt_field_class_real_double_precision_create(bt_trace_class *trace_class)
Creates a double-precision real field class from the trace class trace_class.
bt_field_class * bt_field_class_array_dynamic_with_length_field_location_create(bt_trace_class *trace_class, bt_field_class *element_field_class, const bt_field_location *length_field_location)
Creates a dynamic array field class (instances with a linked length field) having the element field c...
bt_field_class * bt_field_class_option_with_selector_field_location_bool_create(bt_trace_class *trace_class, bt_field_class *optional_field_class, const bt_field_location *selector_field_location)
Creates an option field class (instances with a linked boolean selector field) having the optional fi...
bt_field_class * bt_field_class_enumeration_signed_create(bt_trace_class *trace_class)
Creates a signed enumeration field class from the trace class trace_class.
const bt_field_class_bit_array_flag * bt_field_class_bit_array_borrow_flag_by_label_const(const bt_field_class *field_class, const char *label)
Borrows the flag having the label label from the bit array field class field_class.
void bt_field_class_put_ref(const bt_field_class *field_class)
Decrements the reference count of the field class field_class.
const bt_field_class * bt_field_class_structure_member_borrow_field_class_const(const bt_field_class_structure_member *member)
Borrows the field class from the structure field class member member (const version).
bt_value * bt_field_class_borrow_user_attributes(bt_field_class *field_class)
Borrows the user attributes of the field class field_class.
static const bt_field_class_enumeration_mapping * bt_field_class_enumeration_unsigned_mapping_as_mapping_const(const bt_field_class_enumeration_unsigned_mapping *mapping)
Upcasts the unsigned enumeration field class mapping mapping to the common bt_field_class_enumeration...
Definition field-class.h:3354
bt_value * bt_field_class_variant_option_borrow_user_attributes(bt_field_class_variant_option *option)
Borrows the user attributes of the variant field class option option.
uint64_t bt_field_class_variant_get_option_count(const bt_field_class *field_class)
Returns the number of options contained in the variant field class field_class.
bt_field_class_enumeration_get_mapping_labels_for_value_status bt_field_class_enumeration_unsigned_get_mapping_labels_for_value(const bt_field_class *field_class, uint64_t value, bt_field_class_enumeration_mapping_label_array *labels, uint64_t *count)
Returns an array of all the labels of the mappings of the unsigned enumeration field class field_clas...
const bt_field_class * bt_field_class_option_borrow_field_class_const(const bt_field_class *field_class)
Borrows the optional field class from the option field class field_class (const version).
uint64_t bt_field_class_bit_array_get_length(const bt_field_class *field_class)
Returns the length of the bit array field class field_class.
const char * bt_field_class_enumeration_mapping_get_label(const bt_field_class_enumeration_mapping *mapping)
Returns the label of the enumeration field class mapping mapping.
const bt_integer_range_set_unsigned * bt_field_class_enumeration_unsigned_mapping_borrow_ranges_const(const bt_field_class_enumeration_unsigned_mapping *mapping)
Borrows the unsigned integer ranges from the unsigned enumeration field class mapping mapping.
const bt_field_location * bt_field_class_option_with_selector_field_borrow_selector_field_location_const(const bt_field_class *field_class)
Borrows the selector field location from the option field class (instances with a linked selector fie...
const bt_integer_range_set_unsigned * bt_field_class_variant_with_selector_field_integer_unsigned_option_borrow_ranges_const(const bt_field_class_variant_with_selector_field_integer_unsigned_option *option)
Borrows the unsigned integer ranges from the variant field class option (instances with a linked unsi...
bt_field_class * bt_field_class_real_single_precision_create(bt_trace_class *trace_class)
Creates a single-precision real field class from the trace class trace_class.
void bt_field_class_option_with_selector_field_bool_set_selector_is_reversed(bt_field_class *field_class, bt_bool selector_is_reversed)
Sets whether or not the selector of the option field class (with a boolean selector field) field_clas...
bt_field_class * bt_field_class_integer_signed_create(bt_trace_class *trace_class)
Creates an signed integer field class from the trace class trace_class.
uint64_t bt_field_class_structure_get_member_count(const bt_field_class *field_class)
Returns the number of members contained in the structure field class field_class.
bt_field_class_enumeration_get_mapping_labels_for_value_status bt_field_class_enumeration_signed_get_mapping_labels_for_value(const bt_field_class *field_class, int64_t value, bt_field_class_enumeration_mapping_label_array *labels, uint64_t *count)
Returns an array of all the labels of the mappings of the signed enumeration field class field_class ...
bt_field_class * bt_field_class_array_dynamic_without_length_field_location_create(bt_trace_class *trace_class, bt_field_class *element_field_class)
Creates a dynamic array field class (instances without a linked length field) having the element fiel...
uint64_t bt_field_class_blob_static_get_length(const bt_field_class *field_class)
Returns the length of the static BLOB field class field_class.
bt_field_class_variant_without_selector_append_option_status
Status codes for bt_field_class_variant_without_selector_append_option().
Definition field-class.h:5906
const char * bt_field_class_bit_array_flag_get_label(const bt_field_class_bit_array_flag *flag)
Returns the label of the bit array field class flag flag.
bt_field_class * bt_field_class_option_with_selector_field_bool_create(bt_trace_class *trace_class, bt_field_class *optional_field_class, bt_field_class *selector_field_class)
Creates an option field class (instances with a linked boolean selector field) having the optional fi...
bt_field_class * bt_field_class_option_with_selector_field_integer_unsigned_create(bt_trace_class *trace_class, bt_field_class *optional_field_class, bt_field_class *selector_field_class, const bt_integer_range_set_unsigned *ranges)
Creates an option field class (instances with a linked unsigned integer selector field) having the op...
uint64_t bt_field_class_array_static_get_length(const bt_field_class *field_class)
Returns the length of the static array field class field_class.
bt_field_class * bt_field_class_enumeration_unsigned_create(bt_trace_class *trace_class)
Creates an unsigned enumeration field class from the trace class trace_class.
const bt_field_path * bt_field_class_option_with_selector_field_borrow_selector_field_path_const(const bt_field_class *field_class)
Borrows the selector field path from the option field class (instances with a linked selector field) ...
const bt_field_class_structure_member * bt_field_class_structure_borrow_member_by_index_const(const bt_field_class *field_class, uint64_t index)
Borrows the member at index index from the structure field class field_class (const version).
const bt_field_class_enumeration_signed_mapping * bt_field_class_enumeration_signed_borrow_mapping_by_label_const(const bt_field_class *field_class, const char *label)
Borrows the mapping having the label label from the signed enumeration field class field_class.
const bt_integer_range_set_signed * bt_field_class_variant_with_selector_field_integer_signed_option_borrow_ranges_const(const bt_field_class_variant_with_selector_field_integer_signed_option *option)
Borrows the signed integer ranges from the variant field class option (instances with a linked signed...
static const bt_field_class_variant_option * bt_field_class_variant_with_selector_field_integer_signed_option_as_option_const(const bt_field_class_variant_with_selector_field_integer_signed_option *option)
Upcasts the variant field class option (instances with a linked signed integer selector field) option...
Definition field-class.h:6575
const bt_field_class * bt_field_class_variant_option_borrow_field_class_const(const bt_field_class_variant_option *option)
Borrows the field class from the variant field class option option (const version).
const bt_field_class_variant_option * bt_field_class_variant_borrow_option_by_name_const(const bt_field_class *field_class, const char *name)
Borrows the option having the name name from the variant field class field_class (const version).
bt_field_class * bt_field_class_integer_unsigned_create(bt_trace_class *trace_class)
Creates an unsigned integer field class from the trace class trace_class.
const bt_field_class_variant_with_selector_field_integer_unsigned_option * bt_field_class_variant_with_selector_field_integer_unsigned_borrow_option_by_name_const(const bt_field_class *field_class, const char *name)
Borrows the option having the name name from the variant field class (instances with a linked unsigne...
void bt_field_class_structure_member_set_user_attributes(bt_field_class_structure_member *member, const bt_value *user_attributes)
Sets the user attributes of the structure field class member member to user_attributes.
const bt_field_class_enumeration_signed_mapping * bt_field_class_enumeration_signed_borrow_mapping_by_index_const(const bt_field_class *field_class, uint64_t index)
Borrows the mapping at index index from the signed enumeration field class field_class.
bt_field_class_integer_field_value_hint
Integer field class field value hint.
Definition field-class.h:2613
bt_field_class_integer_preferred_display_base
Integer field class preferred display bases.
Definition field-class.h:2728
bt_field_class * bt_field_class_variant_option_borrow_field_class(bt_field_class_variant_option *option)
Borrows the field class from the variant field class option option.
bt_field_class * bt_field_class_option_with_selector_field_integer_signed_create(bt_trace_class *trace_class, bt_field_class *optional_field_class, bt_field_class *selector_field_class, const bt_integer_range_set_signed *ranges)
Creates an option field class (instances with a linked signed integer selector field) having the opti...
bt_field_class * bt_field_class_structure_create(bt_trace_class *trace_class)
Creates a structure field class from the trace class trace_class.
bt_field_class_variant_with_selector_field_integer_append_option_status bt_field_class_variant_with_selector_field_integer_unsigned_append_option(bt_field_class *field_class, const char *name, bt_field_class *option_field_class, const bt_integer_range_set_unsigned *ranges)
Appends an option to the variant field class (instances with a linked unsigned integer selector field...
const bt_field_class_bit_array_flag * bt_field_class_bit_array_borrow_flag_by_index_const(const bt_field_class *field_class, uint64_t index)
Borrows the flag at index index from the bit array field class field_class.
static const bt_field_class_variant_option * bt_field_class_variant_with_selector_field_integer_unsigned_option_as_option_const(const bt_field_class_variant_with_selector_field_integer_unsigned_option *option)
Upcasts the variant field class option (instances with a linked unsigned integer selector field) opti...
Definition field-class.h:6314
bt_field_class * bt_field_class_bool_create(bt_trace_class *trace_class)
Creates a boolean field class from the trace class trace_class.
bt_field_class_enumeration_get_mapping_labels_for_value_status
Status codes for bt_field_class_enumeration_unsigned_get_mapping_labels_for_value() and bt_field_clas...
Definition field-class.h:2997
static bt_bool bt_field_class_integer_has_field_value_hint(const bt_field_class *const field_class, const bt_field_class_integer_field_value_hint hint)
Returns whether or not the integer field class field_class has the field value hint hint.
Definition field-class.h:2715
bt_field_class * bt_field_class_option_with_selector_field_location_integer_signed_create(bt_trace_class *trace_class, bt_field_class *optional_field_class, const bt_field_location *selector_field_location, const bt_integer_range_set_signed *ranges)
Creates an option field class (instances with a linked signed integer selector field) having the opti...
bt_field_class * bt_field_class_variant_without_selector_field_location_create(bt_trace_class *trace_class)
Creates an empty variant field class (instances without a linked selector field) from the trace class...
char const *const * bt_field_class_bit_array_flag_label_array
Array of const bit array field class flag labels.
Definition field-class.h:2403
void bt_field_class_set_user_attributes(bt_field_class *field_class, const bt_value *user_attributes)
Sets the user attributes of the field class field_class to user_attributes.
bt_field_class_variant_without_selector_append_option_status bt_field_class_variant_without_selector_append_option(bt_field_class *field_class, const char *name, bt_field_class *option_field_class)
Appends an option to the variant field class (instances without a linked selector field) field_class ...
bt_field_class * bt_field_class_blob_dynamic_without_length_field_location_create(bt_trace_class *trace_class)
Creates a dynamic BLOB field class (instances without a linked length field) from the trace class tra...
bt_field_class * bt_field_class_variant_create(bt_trace_class *trace_class, bt_field_class *selector_field_class)
Creates an empty variant field class from the trace class trace_class.
const bt_field_class_variant_with_selector_field_integer_unsigned_option * bt_field_class_variant_with_selector_field_integer_unsigned_borrow_option_by_index_const(const bt_field_class *field_class, uint64_t index)
Borrows the option at index index from the variant field class (instances with a linked unsigned inte...
void bt_field_class_integer_set_field_value_range(bt_field_class *field_class, uint64_t n)
Sets the field value range of the integer field class field_class to n.
bt_field_class * bt_field_class_variant_with_selector_field_location_integer_unsigned_create(bt_trace_class *trace_class, const bt_field_location *selector_field_location)
Creates an empty variant field class (instances with a linked unsigned integer selector field) having...
bt_field_class * bt_field_class_array_borrow_element_field_class(bt_field_class *field_class)
Borrows the element field class from the array field class field_class.
bt_field_class_structure_member * bt_field_class_structure_borrow_member_by_name(bt_field_class *field_class, const char *name)
Borrows the member having the name name from the structure field class field_class.
bt_field_class_integer_preferred_display_base bt_field_class_integer_get_preferred_display_base(const bt_field_class *field_class)
Returns the preferred display base of the integer field class field_class.
bt_value * bt_field_class_structure_member_borrow_user_attributes(bt_field_class_structure_member *member)
Borrows the user attributes of the structure field class member member.
bt_field_class_structure_member * bt_field_class_structure_borrow_member_by_index(bt_field_class *field_class, uint64_t index)
Borrows the member at index index from the structure field class field_class.
void bt_field_class_variant_option_set_user_attributes(bt_field_class_variant_option *option, const bt_value *user_attributes)
Sets the user attributes of the variant field class option option to user_attributes.
const bt_field_location * bt_field_class_blob_dynamic_with_length_field_borrow_length_field_location_const(const bt_field_class *field_class)
Borrows the length field location from the dynamic BLOB field class (instances with a linked length f...
bt_field_class * bt_field_class_variant_with_selector_field_location_integer_signed_create(bt_trace_class *trace_class, const bt_field_location *selector_field_location)
Creates an empty variant field class (instances with a linked signed integer selector field) having t...
bt_field_class_type bt_field_class_get_type(const bt_field_class *field_class)
Returns the type enumerator of the field class field_class.
const bt_field_class_variant_with_selector_field_integer_signed_option * bt_field_class_variant_with_selector_field_integer_signed_borrow_option_by_name_const(const bt_field_class *field_class, const char *name)
Borrows the option having the name name from the variant field class (instances with a linked signed ...
uint64_t bt_field_class_integer_get_field_value_range(const bt_field_class *field_class)
Returns the field value range of the integer field class field_class.
bt_field_class * bt_field_class_string_create(bt_trace_class *trace_class)
Creates a string field class from the trace class trace_class.
bt_field_class_blob_set_media_type_status
Status codes for bt_field_class_blob_set_media_type().
Definition field-class.h:3870
bt_field_class_bit_array_add_flag_status bt_field_class_bit_array_add_flag(bt_field_class *field_class, const char *label, const bt_integer_range_set_unsigned *index_ranges)
Adds a flag to the bit array field class field_class having the label label and the bit index ranges ...
bt_field_class_structure_append_member_status
Status codes for bt_field_class_structure_append_member().
Definition field-class.h:4375
bt_field_class_enumeration_add_mapping_status bt_field_class_enumeration_unsigned_add_mapping(bt_field_class *field_class, const char *label, const bt_integer_range_set_unsigned *ranges)
Adds a mapping to the unsigned enumeration field class field_class having the label label and the uns...
const bt_integer_range_set_unsigned * bt_field_class_option_with_selector_field_integer_unsigned_borrow_selector_ranges_const(const bt_field_class *field_class)
Borrows the unsigned integer ranges from the option field class (with an unsigned integer selector fi...
const bt_field_class_enumeration_unsigned_mapping * bt_field_class_enumeration_unsigned_borrow_mapping_by_index_const(const bt_field_class *field_class, uint64_t index)
Borrows the mapping at index index from the unsigned enumeration field class field_class.
uint64_t bt_field_class_enumeration_get_mapping_count(const bt_field_class *field_class)
Returns the number of mappings contained in the enumeration field class field_class.
bt_field_class_variant_option * bt_field_class_variant_borrow_option_by_index(bt_field_class *field_class, uint64_t index)
Borrows the option at index index from the variant field class field_class.
const bt_value * bt_field_class_borrow_user_attributes_const(const bt_field_class *field_class)
Borrows the user attributes of the field class field_class (const version).
bt_field_class_variant_option * bt_field_class_variant_borrow_option_by_name(bt_field_class *field_class, const char *name)
Borrows the option having the name name from the variant field class field_class.
bt_field_class * bt_field_class_option_without_selector_field_location_create(bt_trace_class *trace_class, bt_field_class *optional_field_class)
Creates an option field class (instances without a linked selector field) having the optional field c...
bt_field_class * bt_field_class_array_static_create(bt_trace_class *trace_class, bt_field_class *element_field_class, uint64_t length)
Creates a static array field class having the element field class element_field_class and the length ...
bt_bool bt_field_class_option_with_selector_field_bool_selector_is_reversed(const bt_field_class *field_class)
Returns whether or not the selector of the option field class (with a boolean selector field) is reve...
bt_field_class_bit_array_get_active_flag_labels_for_value_as_integer_status bt_field_class_bit_array_get_active_flag_labels_for_value_as_integer(const bt_field_class *field_class, uint64_t value_as_integer, bt_field_class_bit_array_flag_label_array *labels, uint64_t *count)
Returns the labels of all the active flags of the bit array field class field_class for the set bits ...
void bt_field_class_get_ref(const bt_field_class *field_class)
Increments the reference count of the field class field_class.
void bt_field_class_integer_set_preferred_display_base(bt_field_class *field_class, bt_field_class_integer_preferred_display_base preferred_display_base)
Sets the preferred display base of the integer field class field_class to preferred_display_base.
const char * bt_field_class_blob_get_media_type(const bt_field_class *field_class)
Returns the IANA media type of the BLOB field class field_class.
bt_field_class_structure_append_member_status bt_field_class_structure_append_member(bt_field_class *field_class, const char *name, bt_field_class *member_field_class)
Appends a member to the structure field class field_class having the name name and the field class me...
const bt_integer_range_set_signed * bt_field_class_enumeration_signed_mapping_borrow_ranges_const(const bt_field_class_enumeration_signed_mapping *mapping)
Borrows the signed integer ranges from the signed enumeration field class mapping mapping.
const bt_field_class_structure_member * bt_field_class_structure_borrow_member_by_name_const(const bt_field_class *field_class, const char *name)
Borrows the member having the name name from the structure field class field_class (const version).
bt_field_class * bt_field_class_bit_array_create(bt_trace_class *trace_class, uint64_t length)
Creates a bit array field class with the length length from the trace class trace_class.
@ BT_FIELD_CLASS_BIT_ARRAY_ADD_FLAG_STATUS_MEMORY_ERROR
Out of memory.
Definition field-class.h:2247
@ BT_FIELD_CLASS_BIT_ARRAY_ADD_FLAG_STATUS_OK
Success.
Definition field-class.h:2241
@ BT_FIELD_CLASS_ENUMERATION_ADD_MAPPING_STATUS_MEMORY_ERROR
Out of memory.
Definition field-class.h:3027
@ BT_FIELD_CLASS_ENUMERATION_ADD_MAPPING_STATUS_OK
Success.
Definition field-class.h:3021
@ BT_FIELD_CLASS_VARIANT_WITH_SELECTOR_FIELD_APPEND_OPTION_STATUS_OK
Success.
Definition field-class.h:5986
@ BT_FIELD_CLASS_VARIANT_WITH_SELECTOR_FIELD_APPEND_OPTION_STATUS_MEMORY_ERROR
Out of memory.
Definition field-class.h:5992
@ BT_FIELD_CLASS_TYPE_UNSIGNED_INTEGER
Unsigned integer field class.
Definition field-class.h:1661
@ BT_FIELD_CLASS_TYPE_DOUBLE_PRECISION_REAL
Double-precision real field class.
Definition field-class.h:1723
@ BT_FIELD_CLASS_TYPE_SIGNED_INTEGER
Signed integer field class.
Definition field-class.h:1669
@ BT_FIELD_CLASS_TYPE_OPTION_WITH_SELECTOR_FIELD
Option field class (instances with a linked selector field).
Definition field-class.h:1863
@ BT_FIELD_CLASS_TYPE_VARIANT_WITH_SELECTOR_FIELD
Variant field class (instances with a linked selector field).
Definition field-class.h:1929
@ BT_FIELD_CLASS_TYPE_VARIANT_WITH_INTEGER_SELECTOR_FIELD
Variant field class (instances with a linked integer selector field).
Definition field-class.h:1941
@ BT_FIELD_CLASS_TYPE_ARRAY
Array field class.
Definition field-class.h:1800
@ BT_FIELD_CLASS_TYPE_OPTION_WITHOUT_SELECTOR_FIELD
Option field class (instances without a linked selector field).
Definition field-class.h:1852
@ BT_FIELD_CLASS_TYPE_INTEGER
Integer field class.
Definition field-class.h:1653
@ BT_FIELD_CLASS_TYPE_UNSIGNED_ENUMERATION
Unsigned enumeration field class.
Definition field-class.h:1689
@ BT_FIELD_CLASS_TYPE_STATIC_ARRAY
Static array field class.
Definition field-class.h:1808
@ BT_FIELD_CLASS_TYPE_REAL
Real field class.
Definition field-class.h:1707
@ BT_FIELD_CLASS_TYPE_VARIANT_WITH_SIGNED_INTEGER_SELECTOR_FIELD
Option field class (instances with a linked signed integer selector field).
Definition field-class.h:1959
@ BT_FIELD_CLASS_TYPE_VARIANT
Variant field class.
Definition field-class.h:1911
@ BT_FIELD_CLASS_TYPE_OPTION
Option field class.
Definition field-class.h:1846
@ BT_FIELD_CLASS_TYPE_OPTION_WITH_BOOL_SELECTOR_FIELD
Option field class (instances with a linked boolean selector field).
Definition field-class.h:1872
@ BT_FIELD_CLASS_TYPE_OPTION_WITH_SIGNED_INTEGER_SELECTOR_FIELD
Option field class (instances with a linked signed integer selector field).
Definition field-class.h:1902
@ BT_FIELD_CLASS_TYPE_STATIC_BLOB
Static BLOB field class.
Definition field-class.h:1750
@ BT_FIELD_CLASS_TYPE_OPTION_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD
Option field class (instances with a linked unsigned integer selector field).
Definition field-class.h:1893
@ BT_FIELD_CLASS_TYPE_STRUCTURE
Structure field class.
Definition field-class.h:1791
@ BT_FIELD_CLASS_TYPE_DYNAMIC_BLOB
Dynamic BLOB field class.
Definition field-class.h:1763
@ BT_FIELD_CLASS_TYPE_VARIANT_WITH_UNSIGNED_INTEGER_SELECTOR_FIELD
Option field class (instances with a linked unsigned integer selector field).
Definition field-class.h:1950
@ BT_FIELD_CLASS_TYPE_DYNAMIC_BLOB_WITH_LENGTH_FIELD
Dynamic BLOB field class (instances with a linked length field).
Definition field-class.h:1785
@ BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY_WITH_LENGTH_FIELD
Dynamic array field class (instances with a linked length field).
Definition field-class.h:1837
@ BT_FIELD_CLASS_TYPE_VARIANT_WITHOUT_SELECTOR_FIELD
Variant field class (instances without a linked selector field).
Definition field-class.h:1917
@ BT_FIELD_CLASS_TYPE_BLOB
BLOB field class.
Definition field-class.h:1740
@ BT_FIELD_CLASS_TYPE_STRING
String field class..
Definition field-class.h:1729
@ BT_FIELD_CLASS_TYPE_BOOL
Boolean field class.
Definition field-class.h:1638
@ BT_FIELD_CLASS_TYPE_BIT_ARRAY
Bit array field class.
Definition field-class.h:1644
@ BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY_WITHOUT_LENGTH_FIELD
Dynamic array field class (instances without a linked length field).
Definition field-class.h:1828
@ BT_FIELD_CLASS_TYPE_SIGNED_ENUMERATION
Signed enumeration field class.
Definition field-class.h:1698
@ BT_FIELD_CLASS_TYPE_ENUMERATION
Enumeration field class.
Definition field-class.h:1680
@ BT_FIELD_CLASS_TYPE_OPTION_WITH_INTEGER_SELECTOR_FIELD
Option field class (instances with a linked integer selector field).
Definition field-class.h:1884
@ BT_FIELD_CLASS_TYPE_SINGLE_PRECISION_REAL
Single-precision real field class.
Definition field-class.h:1715
@ BT_FIELD_CLASS_TYPE_DYNAMIC_BLOB_WITHOUT_LENGTH_FIELD
Dynamic BLOB field class (instances without a linked length field).
Definition field-class.h:1774
@ BT_FIELD_CLASS_TYPE_DYNAMIC_ARRAY
Dynamic array field class.
Definition field-class.h:1819
@ BT_FIELD_CLASS_BIT_ARRAY_GET_ACTIVE_FLAG_LABELS_FOR_VALUE_AS_INTEGER_STATUS_MEMORY_ERROR
Out of memory.
Definition field-class.h:2423
@ BT_FIELD_CLASS_BIT_ARRAY_GET_ACTIVE_FLAG_LABELS_FOR_VALUE_AS_INTEGER_STATUS_OK
Success.
Definition field-class.h:2417
@ BT_FIELD_CLASS_VARIANT_WITHOUT_SELECTOR_FIELD_APPEND_OPTION_STATUS_MEMORY_ERROR
Out of memory.
Definition field-class.h:5917
@ BT_FIELD_CLASS_VARIANT_WITHOUT_SELECTOR_FIELD_APPEND_OPTION_STATUS_OK
Success.
Definition field-class.h:5911
@ BT_FIELD_CLASS_INTEGER_FIELD_VALUE_HINT_SMALL
Expect small integer field values.
Definition field-class.h:2618
@ BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_BINARY
Binary (2).
Definition field-class.h:2733
@ BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_HEXADECIMAL
Hexadecimal (16).
Definition field-class.h:2751
@ BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_DECIMAL
Decimal (10).
Definition field-class.h:2745
@ BT_FIELD_CLASS_INTEGER_PREFERRED_DISPLAY_BASE_OCTAL
Octal (8).
Definition field-class.h:2739
@ BT_FIELD_CLASS_ENUMERATION_GET_MAPPING_LABELS_BY_VALUE_STATUS_OK
Success.
Definition field-class.h:3002
@ BT_FIELD_CLASS_ENUMERATION_GET_MAPPING_LABELS_BY_VALUE_STATUS_MEMORY_ERROR
Out of memory.
Definition field-class.h:3008
@ BT_FIELD_CLASS_BLOB_SET_MEDIA_TYPE_STATUS_OK
Success.
Definition field-class.h:3875
@ BT_FIELD_CLASS_BLOB_SET_MEDIA_TYPE_STATUS_MEMORY_ERROR
Out of memory.
Definition field-class.h:3881
@ BT_FIELD_CLASS_STRUCTURE_APPEND_MEMBER_STATUS_MEMORY_ERROR
Out of memory.
Definition field-class.h:4386
@ BT_FIELD_CLASS_STRUCTURE_APPEND_MEMBER_STATUS_OK
Success.
Definition field-class.h:4380