[lttng-dev] libbabeltrace: getting CTF sequence length?

Jérémie Galarneau jeremie.galarneau at efficios.com
Tue May 20 16:50:20 EDT 2014

On Tue, May 20, 2014 at 4:37 PM, Philippe Proulx
<eeppeliteloop at gmail.com> wrote:
> Hello,
> I'm using libbabeltrace in C++. I would like to know if there's an
> equivalent of bt_ctf_get_array_len() for sequences. I tried using
> bt_ctf_get_field_list() but the reported count was 10, whereas the
> sequence length was really 6 (as shown by the babeltrace tool),
> leading to a segfault when accessing the 7th element.
> Looking at the Python binding, I see that this is used:
>     container_of(field, struct definition_sequence, p);
> followed by bt_sequence_len(). However, struct definition_sequence,
> bt_sequence_len() (and bt_sequence_index()) are not available in
> the API.
> So what would be your way to read sequence items? Do you have
> an example using strictly what's available in /usr/include/babeltrace?

bt_ctf_get_field_list can be used to get the number of elements, along
with a pointer to the elements (via the output parameters).


> I'm using the latest Git master on Arch Linux.
> Thank you!
> Philippe Proulx
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

Jérémie Galarneau
EfficiOS Inc.

More information about the lttng-dev mailing list