Add trace packet header accessors and support custom headers
[babeltrace.git] / include / babeltrace / ctf-ir / stream-internal.h
index cc421d225f3e9d625ba44c1eb506cd13e7acbcc4..4b3250b0f89ac074d1ba18d6070885d272aa5690 100644 (file)
 #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;
+       /* Trace owning this stream. A stream does not own a trace. */
+       struct bt_ctf_trace *trace;
        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;
        /* Array of pointers to bt_ctf_field associated with each event*/
        GPtrArray *event_contexts;
        struct ctf_stream_pos pos;
        unsigned int flushed_packet_count;
+       struct bt_ctf_field *packet_header;
        struct bt_ctf_field *packet_context;
        struct bt_ctf_field *event_context;
 };
 
 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);
+               struct bt_ctf_stream_class *stream_class,
+               struct bt_ctf_trace *trace);
 
 BT_HIDDEN
 int bt_ctf_stream_set_fd(struct bt_ctf_stream *stream, int fd);
This page took 0.023903 seconds and 4 git commands to generate.