fs-sink: useless active_stream member
[babeltrace.git] / plugins / ctf / fs-sink / writer.h
index da2eb1e842802ab105d458f4780a50f86f89c193..81ca1ed9acbf91f0412357ba4e4e60ce24803a1c 100644 (file)
@@ -37,26 +37,42 @@ struct writer_component {
        GString *trace_name_base;
        /* For the directory name suffix. */
        int trace_id;
-       /* Map between struct bt_ctf_trace and struct bt_ctf_writer. */
+       /* Map between struct bt_ctf_trace and struct fs_writer. */
        GHashTable *trace_map;
-       /* Map between reader and writer stream. */
-       GHashTable *stream_map;
-       /* Map between reader and writer stream class. */
-       GHashTable *stream_class_map;
        FILE *err;
        struct bt_notification_iterator *input_iterator;
-       bool processed_first_event;
        bool error;
 };
 
+enum fs_writer_stream_state {
+       /*
+        * We know the stream exists but we have never received a
+        * stream_begin notification for it.
+        */
+       FS_WRITER_UNKNOWN_STREAM,
+       /* We know this stream is active (between stream_begin and _end). */
+       FS_WRITER_ACTIVE_STREAM,
+       /* We have received a stream_end for this stream. */
+       FS_WRITER_COMPLETED_STREAM,
+};
+
 struct fs_writer {
        struct bt_ctf_writer *writer;
+       struct bt_ctf_trace *trace;
        struct bt_ctf_trace *writer_trace;
+       struct writer_component *writer_component;
        int static_listener_id;
-       unsigned int active_streams;
        int trace_static;
+       /* Map between reader and writer stream. */
+       GHashTable *stream_map;
+       /* Map between reader and writer stream class. */
+       GHashTable *stream_class_map;
+       GHashTable *stream_states;
 };
 
+BT_HIDDEN
+void writer_close(struct writer_component *writer_component,
+               struct fs_writer *fs_writer);
 BT_HIDDEN
 enum bt_component_status writer_output_event(struct writer_component *writer,
                struct bt_ctf_event *event);
This page took 0.025304 seconds and 4 git commands to generate.