lib: use object pool for event and packet notifications
[babeltrace.git] / include / babeltrace / graph / notification-stream.h
index 67ed5f5b43a49a0e01d03d7e0338776287bbb00e..e016117ae9c2691ee5955b4f264b2767f9d76c47 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef BABELTRACE_COMPONENT_NOTIFICATION_STREAM_H
-#define BABELTRACE_COMPONENT_NOTIFICATION_STREAM_H
+#ifndef BABELTRACE_GRAPH_NOTIFICATION_STREAM_H
+#define BABELTRACE_GRAPH_NOTIFICATION_STREAM_H
 
 /*
  * BabelTrace - Plug-in Stream-related Notifications
  * SOFTWARE.
  */
 
-#include <babeltrace/graph/notification.h>
-#include <babeltrace/ctf-ir/stream.h>
+/* For bt_get() */
+#include <babeltrace/ref.h>
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-extern struct bt_notification *bt_notification_stream_begin_create(
-               struct bt_ctf_stream *stream);
+struct bt_notification;
+struct bt_stream;
 
-extern struct bt_notification *bt_notification_stream_end_create(
-               struct bt_ctf_stream *stream);
+extern
+struct bt_notification *bt_notification_stream_begin_create(
+               struct bt_graph *graph,
+               struct bt_stream *stream);
 
-extern struct bt_ctf_stream *bt_notification_stream_begin_get_stream(
+extern
+struct bt_notification *bt_notification_stream_end_create(
+               struct bt_graph *graph,
+               struct bt_stream *stream);
+
+extern struct bt_stream *bt_notification_stream_begin_borrow_stream(
                struct bt_notification *notification);
 
-extern struct bt_ctf_stream *bt_notification_stream_end_get_stream(
+static inline
+struct bt_stream *bt_notification_stream_begin_get_stream(
+               struct bt_notification *notification)
+{
+       return bt_get(bt_notification_stream_begin_borrow_stream(notification));
+}
+
+extern struct bt_stream *bt_notification_stream_end_borrow_stream(
                struct bt_notification *notification);
 
+static inline
+struct bt_stream *bt_notification_stream_end_get_stream(
+               struct bt_notification *notification)
+{
+       return bt_get(bt_notification_stream_end_borrow_stream(notification));
+}
+
 #ifdef __cplusplus
 }
 #endif
 
-#endif /* BABELTRACE_COMPONENT_NOTIFICATION_STREAM_H */
+#endif /* BABELTRACE_GRAPH_NOTIFICATION_STREAM_H */
This page took 0.025004 seconds and 4 git commands to generate.