iter = bt_ctf_iter_create(ctx, &begin_pos, NULL); if (!iter) { ret = -1; goto error_iter; } while ((ctf_event = bt_ctf_iter_read_event(iter))) { //do something ret = bt_iter_next(bt_ctf_get_iter(iter)); if (ret < 0) goto end; } ret = 0; end: bt_ctf_iter_destroy(iter);