+/**
+@brief Sets the event header field type of the CTF IR stream class
+ \p stream_class to \p event_header_type, or unsets the current event
+ header field type from \p stream_class.
+
+If \p event_header_type is \c NULL, then this function unsets the current
+event header field type from \p stream_class, effectively making \p stream_class
+a stream class without a event header field type.
+
+As of Babeltrace \btversion, if \p event_header_type is not \c NULL,
+\p event_header_type \em must be a CTF IR structure field type object.
+
+@param[in] trace_class Trace class of which to set the packet
+ header field type.
+@param[in] event_header_type Event header field type, or \c NULL to unset
+ the current event header field type.
+@returns 0 on success, or a negative value on error.
+
+@prenotnull{stream_class}
+@prehot{stream_class}
+@pre <strong>\p event_header_type, if not \c NULL</strong>, is a CTF IR
+ structure field type.
+@postrefcountsame{stream_class}
+@post <strong>On success, if \p event_header_type is not \c NULL</strong>,
+ the reference count of \p event_header_type is incremented.
+
+@sa bt_ctf_trace_get_packet_header_type(): Returns the packet
+ header field type of a given trace 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 event context field type of the CTF IR stream class
+ \p stream_class.
+
+@param[in] stream_class Stream class of which to get the event context
+ field type.
+@returns Event context field type of \p stream_class,
+ or \c NULL if \p stream_class has no event context field
+ type or on error.
+
+@prenotnull{stream_class}
+@postrefcountsame{stream_class}
+@post <strong>On success, if the return value is a field type</strong>,
+ its reference count is incremented.
+
+
+@sa bt_ctf_stream_class_set_event_context_type(): Sets the 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 event context field type of the CTF IR stream class
+ \p stream_class to \p event_context_type, or unsets the current event
+ context field type from \p stream_class.
+
+If \p event_context_type is \c NULL, then this function unsets the current
+event context field type from \p stream_class, effectively making \p
+stream_class a stream class without a event context field type.
+
+As of Babeltrace \btversion, if \p event_context_type is not \c NULL,
+\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 packet
+ context field type.
+@param[in] event_context_type Event context field type, or \c NULL to unset
+ the current event context field type.
+@returns 0 on success, or a negative value on error.
+
+@prenotnull{stream_class}
+@prehot{stream_class}
+@pre <strong>\p event_context_type, if not \c NULL</strong>, is a CTF IR
+ structure field type.
+@postrefcountsame{stream_class}
+@post <strong>On success, if \p event_context_type is not \c NULL</strong>,
+ the reference count of \p event_context_type is incremented.
+
+@sa bt_ctf_stream_class_get_event_context_type(): Returns the 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.
+*/