+/**
+@brief Returns the event header field type of the CTF IR stream class
+ \p stream_class.
+
+@param[in] stream_class Stream class of which to get the event header
+ field type.
+@returns Event header field type of \p stream_class,
+ or \c NULL on error.
+
+@prenotnull{stream_class}
+@postrefcountsame{stream_class}
+@postsuccessrefcountretinc
+
+@sa bt_ctf_stream_class_set_event_header_type(): Sets the event
+ header field type of a given stream class.
+*/
+extern struct bt_ctf_field_type *
+bt_ctf_stream_class_get_event_header_type(
+ struct bt_ctf_stream_class *stream_class);
+
+/**
+@brief Sets the event header field type of the CTF IR stream class
+ \p stream_class to \p event_header_type.
+
+As of Babeltrace \btversion, \p event_header_type \em must be a
+CTF IR structure field type object.
+
+@param[in] stream_class Stream class of which to set the event
+ header field type.
+@param[in] event_header_type Event header field type.
+@returns 0 on success, or a negative value on error.
+
+@prenotnull{stream_class}
+@prenotnull{event_header_type}
+@prehot{stream_class}
+@preisstructft{event_header_type}
+@postrefcountsame{stream_class}
+@postsuccessrefcountinc{event_header_type}
+
+@sa bt_ctf_stream_class_get_event_header_type(): Returns the event
+ header field type of a given stream class.
+*/
+extern int bt_ctf_stream_class_set_event_header_type(
+ struct bt_ctf_stream_class *stream_class,
+ struct bt_ctf_field_type *event_header_type);
+
+/**
+@brief Returns the per-stream class event context field type of the
+ CTF IR stream class \p stream_class.
+
+@param[in] stream_class Stream class of which to get the per-stream
+ class event context field type.
+@returns Per-stream class event context field type of
+ \p stream_class, or \c NULL on error.
+
+@prenotnull{stream_class}
+@postrefcountsame{stream_class}
+@postsuccessrefcountretinc
+
+@sa bt_ctf_stream_class_set_event_context_type(): Sets the per-stream
+ class event context field type of a given stream class.
+*/
+extern struct bt_ctf_field_type *
+bt_ctf_stream_class_get_event_context_type(
+ struct bt_ctf_stream_class *stream_class);
+
+/**
+@brief Sets the per-stream class event context field type of the CTF
+ IR stream class \p stream_class to \p event_context_type.
+
+As of Babeltrace \btversion, \p event_context_type \em must be a
+CTF IR structure field type object.
+
+@param[in] stream_class Stream class of which to set the
+ per-stream class event context
+ field type.
+@param[in] event_context_type Per-stream class event context context
+ field type.
+@returns 0 on success, or a negative value on error.
+
+@prenotnull{stream_class}
+@prenotnull{event_context_type}
+@prehot{stream_class}
+@preisstructft{event_context_type}
+@postrefcountsame{stream_class}
+@postsuccessrefcountinc{event_context_type}
+
+@sa bt_ctf_stream_class_get_event_context_type(): Returns the per-stream
+ class event context field type of a given stream class.
+*/
+extern int bt_ctf_stream_class_set_event_context_type(
+ struct bt_ctf_stream_class *stream_class,
+ struct bt_ctf_field_type *event_context_type);
+
+/** @} */
+
+/**
+@name Event class children functions
+@{
+*/
+
+/**
+@brief Returns the number of event classes contained in the
+ CTF IR stream class \p stream_class.
+
+@param[in] stream_class Stream class of which to get the number
+ of children event classes.
+@returns Number of children event classes
+ contained in \p stream_class, or
+ a negative value on error.
+
+@prenotnull{stream_class}
+@postrefcountsame{stream_class}
+*/
+extern int bt_ctf_stream_class_get_event_class_count(
+ struct bt_ctf_stream_class *stream_class);
+
+/**
+@brief Returns the event class at index \p index in the CTF IR stream
+ class \p stream_class.
+
+@param[in] stream_class Stream class of which to get the event class.
+@param[in] index Index of the event class to find.
+@returns Event class at index \p index, or \c NULL
+ on error.
+
+@prenotnull{stream_class}
+@pre \p index is lesser than the number of event classes contained in the
+ stream class \p stream_class (see
+ bt_ctf_stream_class_get_event_class_count()).
+@postrefcountsame{stream_class}
+@postsuccessrefcountretinc
+
+@sa bt_ctf_stream_class_get_event_class_by_id(): Finds an event class
+ by ID.
+@sa bt_ctf_stream_class_get_event_class_by_name(): Finds an event class
+ by name.
+*/
+extern struct bt_ctf_event_class *bt_ctf_stream_class_get_event_class(
+ struct bt_ctf_stream_class *stream_class, int index);
+
+/**
+@brief Returns the event class named \c name found in the CTF IR stream
+ class \p stream_class.
+
+@param[in] stream_class Stream class of which to get the event class.
+@param[in] name Name of the event class to find.
+@returns Event class named \p name, or \c NULL
+ on error.
+
+@prenotnull{stream_class}
+@prenotnull{name}
+@postrefcountsame{stream_class}
+@postsuccessrefcountretinc
+
+@sa bt_ctf_stream_class_get_event_class_by_id(): Finds an event class
+ by ID.
+*/
+extern struct bt_ctf_event_class *bt_ctf_stream_class_get_event_class_by_name(
+ struct bt_ctf_stream_class *stream_class, const char *name);
+
+/**
+@brief Returns the event class with ID \c id found in the CTF IR stream
+ class \p stream_class.
+
+@param[in] stream_class Stream class of which to get the event class.
+@param[in] id ID of the event class to find.
+@returns Event class with ID \p id, or \c NULL
+ on error.
+
+@prenotnull{stream_class}
+@postrefcountsame{stream_class}
+@postsuccessrefcountretinc
+
+@sa bt_ctf_stream_class_get_event_class_by_name(): Finds an event class
+ by name.
+*/
+extern struct bt_ctf_event_class *bt_ctf_stream_class_get_event_class_by_id(
+ struct bt_ctf_stream_class *stream_class, uint32_t id);
+
+/**
+@brief Adds the CTF IR event class \p event_class to the
+ CTF IR stream class \p stream_class.
+
+On success, \p event_class becomes the child of \p stream_class.
+
+You can only add a given event class to one stream class.
+
+You can call this function even if \p stream_class is frozen. Adding
+event classes is the only operation that is permitted
+on a frozen stream class.
+
+@param[in] stream_class Stream class to which to add \p event_class.
+@param[in] event_class Event class to add to \p stream_class.
+@returns 0 on success, or a negative value on error.
+
+@prenotnull{stream_class}
+@prenotnull{event_class}
+@prehot{event_class}
+@postrefcountsame{stream_class}
+@postsuccessrefcountinc{event_class}
+@postsuccessfrozen{event_class}
+*/