-/**
-@defgroup ctfirstreamclass CTF IR stream class
-@ingroup ctfir
-@brief CTF IR stream class.
-
-@code
-#include <babeltrace/ctf-ir/stream-class.h>
-@endcode
-
-@note
-See \ref ctfwriterstreamclass which documents additional CTF IR stream
-class functions exclusive to the CTF writer mode.
-
-A CTF IR <strong><em>stream class</em></strong> is a template that you
-can use to create concrete \link ctfirstream CTF IR streams\endlink.
-
-A stream class has the following properties, both of which \em must
-be unique amongst all the stream classes contained in the same
-\link ctfirtraceclass CTF IR trace class\endlink:
-
-- A \b name.
-- A numeric \b ID.
-
-In the Babeltrace CTF IR system, a \link ctfirtraceclass trace class\endlink
-contains zero or more stream classes,
-and a stream class contains zero or more
-\link ctfireventclass event classes\endlink.
-You can add an event class
-to a stream class with bt_stream_class_add_event_class().
-You can add a stream class to a trace class with
-bt_trace_add_stream_class().
-
-A stream class owns three \link ctfirfieldtypes field types\endlink:
-
-- An optional <strong>stream packet context</strong> field type, which
- represents the \c stream.packet.context CTF scope.
-- An optional <strong>stream event header</strong> field type, which
- represents the \c stream.event.header CTF scope.
-- An optional <strong>stream event context</strong> field type, which
- represents the \c stream.event.context CTF scope.
-
-Those three field types \em must be structure field types as of
-Babeltrace \btversion.
-
-As per the CTF specification, the event header field type \em must
-contain a field named \c id if the stream class contains more than one
-event class.
-
-As a reminder, here's the structure of a CTF packet:
-
-@imgpacketstructure
-
-Before you can create a stream from a stream class with
-bt_stream_create(), you \em must add the prepared stream class to a
-trace class by calling bt_trace_add_stream_class().
-
-As with any Babeltrace object, CTF IR stream 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.
-
-The following functions \em freeze their stream class parameter on
-success:
-
-- bt_trace_add_stream_class()
-- bt_event_create()
-- bt_writer_create_stream()
- (\link ctfwriter CTF writer\endlink mode only)
-
-You cannot modify a frozen stream class: it is considered immutable,
-except for:
-
-- Adding an event class to it with
- bt_stream_class_add_event_class(). If the stream class's parent
- \link ctfirtraceclass trace class\endlink is static, however,
- you cannot call bt_stream_class_add_event_class()
- (see bt_trace_is_static() and bt_trace_set_is_static()).
-- \link refs Reference counting\endlink.
-
-@sa ctfirstream
-@sa ctfireventclass
-@sa ctfirtraceclass
-@sa ctfwriterstreamclass
-
-@file
-@brief CTF IR stream class type and functions.
-@sa ctfirstreamclass
-
-@addtogroup ctfirstreamclass
-@{
-*/
-
-/**
-@struct bt_stream_class
-@brief A CTF IR stream class.
-@sa ctfirstreamclass
-*/