- <strong>Normal mode</strong>: use bt_ctf_trace_create() to create a
default, empty trace class.
-- <strong>CTF writer mode</strong>: use bt_ctf_writer_get_trace() to
- get the trace class created by a given CTF writer object.
+- <strong>CTF IR writer mode</strong>: use bt_ctf_writer_get_trace() to
+ get the trace class created by a given CTF IR writer object.
A trace class has the following properties:
@todo
Elaborate about clock classes irt clock values.
-As with any Babeltrace object, CTF IR stream class objects have
+As with any Babeltrace object, CTF IR trace class objects have
<a href="https://en.wikipedia.org/wiki/Reference_counting">reference
counts</a>. See \ref refs to learn more about the reference counting
management of Babeltrace objects.
- bt_ctf_trace_add_stream_class()
- bt_ctf_writer_create_stream()
- (\link ctfirwriter CTF writer\endlink mode only)
+ (\link ctfirwriter CTF IR writer\endlink mode only)
You cannot modify a frozen trace class: it is considered immutable,
except for:
@prenotnull{clock_class}
@postrefcountsame{trace_class}
@postsuccessrefcountinc{clock_class}
+@post <strong>On success, if \p trace_class is frozen<strong>,
+ \p clock_class is frozen.
@sa bt_ctf_trace_get_clock(): Returns the clock class contained in a
given trace class at a given index.
@prenotnull{stream_class}
@postrefcountsame{trace_class}
@postsuccessrefcountinc{stream_class}
+@postsuccessfrozen{stream_class}
@sa bt_ctf_trace_get_clock(): Returns the stream class contained in a
given trace class at a given index.
/**
@brief User function type to use with bt_ctf_trace_add_listener().
-@param[in] element New element which is part of the trace class
- hierarchy.
-@param[in] data User data.
+@param[in] obj New CTF IR object which is part of the trace
+ class hierarchy.
+@param[in] data User data.
-@prenotnull{element}
+@prenotnull{obj}
*/
-typedef void (*bt_ctf_listener_cb)(
- struct bt_ctf_ir_element *element, void *data);
+typedef void (*bt_ctf_listener_cb)(struct bt_ctf_object *obj, void *data);
/**
@brief Adds the trace class modification listener \p listener to
@prenotnull{visitor}
*/
extern int bt_ctf_trace_visit(struct bt_ctf_trace *trace_class,
- bt_ctf_ir_visitor visitor, void *data);
+ bt_ctf_visitor visitor, void *data);
/** @} */