Make API CTF-agnostic
[babeltrace.git] / include / babeltrace / graph / notification-stream.h
index bdcf4c96011157d9530c6bce81f9b1c439a51861..18b10b9eb7f0d4a6618a52279d22e92cc3b3ddee 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>
+#include <stdint.h>
+
+/* For bt_get() */
+#include <babeltrace/ref.h>
+
+/* For bt_bool */
+#include <babeltrace/types.h>
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-/*** BT_NOTIFICATION_TYPE_STREAM_END ***/
+struct bt_notification;
+struct bt_private_connection_private_notification_iterator;
+struct bt_clock_class;
+struct bt_clock_value;
+struct bt_stream;
+
+extern
+struct bt_notification *bt_notification_stream_begin_create(
+               struct bt_private_connection_private_notification_iterator *notification_iterator,
+               struct bt_stream *stream);
+
+extern
 struct bt_notification *bt_notification_stream_end_create(
-               struct bt_ctf_stream *stream);
-struct bt_ctf_stream *bt_notification_stream_end_get_stream(
+               struct bt_private_connection_private_notification_iterator *notification_iterator,
+               struct bt_stream *stream);
+
+extern struct bt_stream *bt_notification_stream_begin_borrow_stream(
                struct bt_notification *notification);
 
+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 int bt_notification_stream_begin_set_default_clock_value(
+               struct bt_notification *notif, uint64_t value_cycles);
+
+extern struct bt_clock_value *bt_notification_stream_begin_borrow_default_clock_value(
+               struct bt_notification *notif);
+
+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));
+}
+
+extern int bt_notification_stream_end_set_default_clock_value(
+               struct bt_notification *notif, uint64_t value_cycles);
+
+extern struct bt_clock_value *bt_notification_stream_end_borrow_default_clock_value(
+               struct bt_notification *notif);
+
 #ifdef __cplusplus
 }
 #endif
 
-#endif /* BABELTRACE_COMPONENT_NOTIFICATION_STREAM_H */
+#endif /* BABELTRACE_GRAPH_NOTIFICATION_STREAM_H */
This page took 0.026347 seconds and 4 git commands to generate.