X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fctf-ir%2Fstream.h;h=4b4ac3cfe42d9859d283aa612764c2f25ae16d31;hb=3dca22768a95bef664012559aa9ac977091de6ac;hp=140970c5aed86924216a7da48c52d64b9009b625;hpb=cfe11c58e0fea043bdfa97d732b9d02db13b492a;p=babeltrace.git diff --git a/include/babeltrace/ctf-ir/stream.h b/include/babeltrace/ctf-ir/stream.h index 140970c5..4b4ac3cf 100644 --- a/include/babeltrace/ctf-ir/stream.h +++ b/include/babeltrace/ctf-ir/stream.h @@ -30,13 +30,14 @@ * http://www.efficios.com/ctf */ -#include #include #ifdef __cplusplus extern "C" { #endif +struct bt_stream_class; + /** @defgroup ctfirstream CTF IR stream @ingroup ctfir @@ -55,14 +56,14 @@ A CTF IR stream is an instance of a You can obtain a CTF IR stream object in two different modes: -- Normal mode: use bt_ctf_stream_create() or - bt_ctf_stream_create_with_id() with a stream class having a +- Normal mode: use bt_stream_create() or + bt_stream_create_with_id() with a stream class having a \link ctfirtraceclass CTF IR trace class\endlink parent \em not created by a \link ctfwriter CTF writer\endlink object to create a default stream. -- CTF writer mode: use bt_ctf_stream_create() with +- CTF writer mode: use bt_stream_create() with a stream class having a trace class parent created by a CTF writer - object, or use bt_ctf_writer_create_stream(). + object, or use bt_writer_create_stream(). A CTF IR stream object represents a CTF stream, that is, a sequence of packets containing events: @@ -91,46 +92,13 @@ management of Babeltrace objects. */ /** -@struct bt_ctf_stream +@struct bt_stream @brief A CTF IR stream. @sa ctfirstream @sa ctfwriterstream */ -struct bt_ctf_stream; -struct bt_ctf_event; - -/** -@brief Creates a default CTF IR stream named \p name from the CTF IR - stream class \p stream_class. - -\p stream_class \em must have a parent -\link ctfirtraceclass CTF IR trace class\endlink. - -If the parent \link ctfirtraceclass trace class\endlink of -\p stream_class was created by a \link ctfwriter CTF writer\endlink -object, then the stream object is created in CTF writer mode, and -you can use the functions of \ref ctfwriterstream on it. -Otherwise it is created in normal mode: you should only use the -functions documented in this module on it. - -\p name can be \c NULL to create an unnamed stream object. - -@param[in] stream_class CTF IR stream class to use to create the - CTF IR stream. -@param[in] name Name of the stream object to create (copied on - success) or \c NULL to create an unnamed stream. -@returns Created stream object, or \c NULL on error. - -@prenotnull{stream_class} -@pre \p stream_class has a parent trace class. -@postsuccessrefcountret1 - -@sa bt_ctf_stream_create_with_id(): Create a CTF IR stream with a - specific ID. -*/ -extern struct bt_ctf_stream *bt_ctf_stream_create( - struct bt_ctf_stream_class *stream_class, - const char *name); +struct bt_stream; +struct bt_event; /** @brief Creates a default CTF IR stream named \p name with ID \p id @@ -139,12 +107,8 @@ extern struct bt_ctf_stream *bt_ctf_stream_create( \p stream_class \em must have a parent \link ctfirtraceclass CTF IR trace class\endlink. -You \em must have created the trace class of \p stream class directly -with bt_ctf_trace_create(), not through bt_ctf_writer_create() (use -bt_ctf_stream_create() for this). - \p id \em must be unique amongst the IDs of all the streams created -from \p stream_class with bt_ctf_stream_create_with_id(). +from \p stream_class with bt_stream_create_with_id(). \p name can be \c NULL to create an unnamed stream object. @@ -159,11 +123,8 @@ from \p stream_class with bt_ctf_stream_create_with_id(). @pre \p id is lesser than or equal to 9223372036854775807 (\c INT64_MAX). @pre \p stream_class has a parent trace class. @postsuccessrefcountret1 - -@sa bt_ctf_stream_create(): Create a CTF IR stream without an ID. */ -extern struct bt_ctf_stream *bt_ctf_stream_create_with_id( - struct bt_ctf_stream_class *stream_class, +extern struct bt_stream *bt_stream_create(struct bt_stream_class *stream_class, const char *name, uint64_t id); /** @@ -178,7 +139,7 @@ On success, \p stream remains the sole owner of the returned string. @prenotnull{stream} @postrefcountsame{stream} */ -extern const char *bt_ctf_stream_get_name(struct bt_ctf_stream *stream); +extern const char *bt_stream_get_name(struct bt_stream *stream); /** @brief Returns the numeric ID of the CTF IR stream \p stream. @@ -190,7 +151,7 @@ extern const char *bt_ctf_stream_get_name(struct bt_ctf_stream *stream); @prenotnull{stream} @postrefcountsame{stream} */ -extern int64_t bt_ctf_stream_get_id(struct bt_ctf_stream *stream); +extern int64_t bt_stream_get_id(struct bt_stream *stream); /** @brief Returns the parent CTF IR stream class of the CTF IR @@ -198,7 +159,7 @@ extern int64_t bt_ctf_stream_get_id(struct bt_ctf_stream *stream); This function returns a reference to the stream class which was used to create the stream object in the first place with -bt_ctf_stream_create(). +bt_stream_create(). @param[in] stream Stream of which to get the parent stream class. @returns Parent stream class of \p stream, @@ -208,8 +169,8 @@ bt_ctf_stream_create(). @postrefcountsame{stream} @postsuccessrefcountretinc */ -extern struct bt_ctf_stream_class *bt_ctf_stream_get_class( - struct bt_ctf_stream *stream); +extern struct bt_stream_class *bt_stream_get_class( + struct bt_stream *stream); /** @} */