X-Git-Url: https://git.efficios.com/?a=blobdiff_plain;ds=sidebyside;f=include%2Fbabeltrace2%2Ftrace-ir%2Ffield-const.h;h=c6529df218b13df0868ffecd723945b0157fd2af;hb=901f0ce8eca409028109888889ddeafb08d7dd69;hp=f72579091e9bebcbad939bf53dc433f8af8a866f;hpb=3fd40f46e5599429f763b955ded1fe5d1e043922;p=babeltrace.git diff --git a/include/babeltrace2/trace-ir/field-const.h b/include/babeltrace2/trace-ir/field-const.h index f7257909..c6529df2 100644 --- a/include/babeltrace2/trace-ir/field-const.h +++ b/include/babeltrace2/trace-ir/field-const.h @@ -2,8 +2,7 @@ #define BABELTRACE2_TRACE_IR_FIELD_CONST_H /* - * Copyright 2017-2018 Philippe Proulx - * Copyright 2013, 2014 Jérémie Galarneau + * Copyright (c) 2010-2019 EfficiOS Inc. and Linux Foundation * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -22,24 +21,17 @@ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. - * - * The Common Trace Format (CTF) Specification is available at - * http://www.efficios.com/ctf */ +#ifndef __BT_IN_BABELTRACE_H +# error "Please include instead." +#endif + #include -/* For bt_field_class_type */ #include - -/* For bt_field, bt_field_class */ #include -/* For __BT_FUNC_STATUS_* */ -#define __BT_FUNC_STATUS_ENABLE -#include -#undef __BT_FUNC_STATUS_ENABLE - #ifdef __cplusplus extern "C" { #endif @@ -50,12 +42,19 @@ extern const bt_field_class *bt_field_borrow_class_const( extern bt_field_class_type bt_field_get_class_type( const bt_field *field); -extern int64_t bt_field_signed_integer_get_value(const bt_field *field); +extern bt_bool bt_field_bool_get_value(const bt_field *field); -extern uint64_t bt_field_unsigned_integer_get_value( +extern uint64_t bt_field_bit_array_get_value_as_integer( const bt_field *field); -extern double bt_field_real_get_value(const bt_field *field); +extern int64_t bt_field_integer_signed_get_value(const bt_field *field); + +extern uint64_t bt_field_integer_unsigned_get_value( + const bt_field *field); + +extern float bt_field_real_single_precision_get_value(const bt_field *field); + +extern double bt_field_real_double_precision_get_value(const bt_field *field); typedef enum bt_field_enumeration_get_mapping_labels_status { BT_FIELD_ENUMERATION_GET_MAPPING_LABELS_STATUS_MEMORY_ERROR = __BT_FUNC_STATUS_MEMORY_ERROR, @@ -63,12 +62,12 @@ typedef enum bt_field_enumeration_get_mapping_labels_status { } bt_field_enumeration_get_mapping_labels_status; extern bt_field_enumeration_get_mapping_labels_status -bt_field_unsigned_enumeration_get_mapping_labels(const bt_field *field, +bt_field_enumeration_unsigned_get_mapping_labels(const bt_field *field, bt_field_class_enumeration_mapping_label_array *label_array, uint64_t *count); extern bt_field_enumeration_get_mapping_labels_status -bt_field_signed_enumeration_get_mapping_labels(const bt_field *field, +bt_field_enumeration_signed_get_mapping_labels(const bt_field *field, bt_field_class_enumeration_mapping_label_array *label_array, uint64_t *count); @@ -90,17 +89,30 @@ extern const bt_field * bt_field_array_borrow_element_field_by_index_const( const bt_field *field, uint64_t index); -extern uint64_t bt_field_variant_get_selected_option_field_index( +extern const bt_field * +bt_field_option_borrow_field_const(const bt_field *field); + +extern uint64_t bt_field_variant_get_selected_option_index( const bt_field *field); extern const bt_field * bt_field_variant_borrow_selected_option_field_const( const bt_field *field); +extern const bt_field_class_variant_option * +bt_field_variant_borrow_selected_option_class_const( + const bt_field *field); + +extern const bt_field_class_variant_with_selector_field_integer_unsigned_option * +bt_field_variant_with_selector_field_integer_unsigned_borrow_selected_option_class_const( + const bt_field *field); + +extern const bt_field_class_variant_with_selector_field_integer_signed_option * +bt_field_variant_with_selector_field_integer_signed_borrow_selected_option_class_const( + const bt_field *field); + #ifdef __cplusplus } #endif -#include - #endif /* BABELTRACE2_TRACE_IR_FIELD_CONST_H */