2 * SPDX-License-Identifier: MIT
4 * Copyright 2019 Philippe Proulx <pproulx@efficios.com>
7 #ifndef BABELTRACE_PLUGIN_CTF_FS_SINK_FS_SINK_H
8 #define BABELTRACE_PLUGIN_CTF_FS_SINK_FS_SINK_H
10 #include "common/macros.h"
11 #include <babeltrace2/babeltrace.h>
17 bt_logging_level log_level;
18 bt_self_component *self_comp;
21 bt_message_iterator *upstream_iter;
23 /* Base output directory path */
24 GString *output_dir_path;
27 * True if the component assumes that it will only write a
28 * single CTF trace (which can contain one or more data
29 * streams). This makes the component write the stream files
30 * directly in the output directory (`output_dir_path` above).
32 bool assume_single_trace;
34 /* True to completely ignore discarded events messages */
35 bool ignore_discarded_events;
37 /* True to completely ignore discarded packets messages */
38 bool ignore_discarded_packets;
41 * True to make the component quiet (nothing printed to the
47 * Hash table of `const bt_trace *` (weak) to
48 * `struct fs_sink_trace *` (owned by hash table).
54 bt_component_class_initialize_method_status
55 ctf_fs_sink_init(bt_self_component_sink *component, bt_self_component_sink_configuration *config,
56 const bt_value *params, void *init_method_data);
59 bt_component_class_sink_consume_method_status
60 ctf_fs_sink_consume(bt_self_component_sink *component);
63 bt_component_class_sink_graph_is_configured_method_status
64 ctf_fs_sink_graph_is_configured(bt_self_component_sink *component);
67 void ctf_fs_sink_finalize(bt_self_component_sink *component);
69 #endif /* BABELTRACE_PLUGIN_CTF_FS_SINK_FS_SINK_H */