ir: add bt_ctf_event_get_clock_value()
[babeltrace.git] / include / babeltrace / ctf-ir / stream-internal.h
index daaa430b36572d3680b437a73d046800c2eaea5e..dc392f4ad907fce01be034de6d089e7360aa1788 100644 (file)
@@ -27,7 +27,8 @@
  * SOFTWARE.
  */
 
-#include <babeltrace/ctf-writer/ref-internal.h>
+#include <babeltrace/ctf-ir/stream.h>
+#include <babeltrace/object-internal.h>
 #include <babeltrace/ctf-writer/clock.h>
 #include <babeltrace/ctf-writer/event-fields.h>
 #include <babeltrace/ctf-writer/event-types.h>
 #include <babeltrace/ctf/types.h>
 #include <glib.h>
 
-typedef void(*flush_func)(struct bt_ctf_stream *, void *);
-
-struct flush_callback {
-       flush_func func;
-       void *data;
-};
-
 struct bt_ctf_stream {
-       struct bt_ctf_ref ref_count;
+       struct bt_object base;
        uint32_t id;
        struct bt_ctf_stream_class *stream_class;
-       struct flush_callback flush;
        /* Array of pointers to bt_ctf_event for the current packet */
        GPtrArray *events;
        struct ctf_stream_pos pos;
        unsigned int flushed_packet_count;
-       uint64_t events_discarded;
+       GString *name;
+       struct bt_ctf_field *packet_header;
+       struct bt_ctf_field *packet_context;
+       GHashTable *clock_values; /* Maps clock addresses to (uint64_t *) */
 };
 
 BT_HIDDEN
-struct bt_ctf_stream *bt_ctf_stream_create(
-               struct bt_ctf_stream_class *stream_class);
-
-BT_HIDDEN
-int bt_ctf_stream_set_flush_callback(struct bt_ctf_stream *stream,
-               flush_func callback, void *data);
+int bt_ctf_stream_set_fd(struct bt_ctf_stream *stream, int fd);
 
 BT_HIDDEN
-int bt_ctf_stream_set_fd(struct bt_ctf_stream *stream, int fd);
+void bt_ctf_stream_update_clock_value(struct bt_ctf_stream *stream,
+               struct bt_ctf_field *value_field);
 
 #endif /* BABELTRACE_CTF_WRITER_STREAM_INTERNAL_H */
This page took 0.031136 seconds and 4 git commands to generate.