X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Ftypes.h;h=677818b9417b7309ec634e956dfab1f617fad394;hb=3a068915df64d2480d176ae58913f9d04d72f87c;hp=22c6876d5e34195ae14c67f167975637381d6d19;hpb=ecc54f11c258cad6b54d35da83e525d32c032397;p=babeltrace.git diff --git a/include/babeltrace/types.h b/include/babeltrace/types.h index 22c6876d..677818b9 100644 --- a/include/babeltrace/types.h +++ b/include/babeltrace/types.h @@ -115,6 +115,11 @@ struct bt_stream_pos { rw_dispatch *rw_table; /* rw dispatch table */ int (*event_cb)(struct bt_stream_pos *pos, struct ctf_stream_definition *stream); + int (*pre_trace_cb)(struct bt_stream_pos *pos, + struct bt_trace_descriptor *trace); + int (*post_trace_cb)(struct bt_stream_pos *pos, + struct bt_trace_descriptor *trace); + struct bt_trace_descriptor *trace; }; static inline @@ -430,6 +435,10 @@ struct declaration_string * char *bt_get_string(const struct bt_definition *field); enum ctf_string_encoding bt_get_string_encoding(const struct bt_definition *field); +double bt_get_float(const struct bt_definition *field); + +const struct bt_definition *bt_get_variant_field(struct bt_definition *definition); + struct declaration_struct * bt_struct_declaration_new(struct declaration_scope *parent_scope, uint64_t min_align); @@ -448,10 +457,10 @@ struct declaration_field * bt_struct_declaration_get_field_from_index(struct declaration_struct *struct_declaration, int index); struct bt_definition * -bt_struct_definition_get_field_from_index(struct definition_struct *struct_definition, +bt_struct_definition_get_field_from_index(const struct definition_struct *struct_definition, int index); int bt_struct_rw(struct bt_stream_pos *pos, struct bt_definition *definition); -uint64_t bt_struct_declaration_len(struct declaration_struct *struct_declaration); +uint64_t bt_struct_declaration_len(const struct declaration_struct *struct_declaration); /* * The tag enumeration is validated to ensure that it contains only mappings