Sort includes in C++ files
[babeltrace.git] / src / plugins / ctf / fs-sink / fs-sink.hpp
1 /*
2 * SPDX-License-Identifier: MIT
3 *
4 * Copyright 2019 Philippe Proulx <pproulx@efficios.com>
5 */
6
7 #ifndef BABELTRACE_PLUGIN_CTF_FS_SINK_FS_SINK_H
8 #define BABELTRACE_PLUGIN_CTF_FS_SINK_FS_SINK_H
9
10 #include <glib.h>
11 #include <stdbool.h>
12
13 #include <babeltrace2/babeltrace.h>
14
15 #include "common/macros.h"
16
17 struct fs_sink_comp
18 {
19 bt_logging_level log_level;
20 bt_self_component *self_comp;
21
22 /* Owned by this */
23 bt_message_iterator *upstream_iter;
24
25 /* Base output directory path */
26 GString *output_dir_path;
27
28 /*
29 * True if the component assumes that it will only write a
30 * single CTF trace (which can contain one or more data
31 * streams). This makes the component write the stream files
32 * directly in the output directory (`output_dir_path` above).
33 */
34 bool assume_single_trace;
35
36 /* True to completely ignore discarded events messages */
37 bool ignore_discarded_events;
38
39 /* True to completely ignore discarded packets messages */
40 bool ignore_discarded_packets;
41
42 /*
43 * True to make the component quiet (nothing printed to the
44 * standard output).
45 */
46 bool quiet;
47
48 /*
49 * Hash table of `const bt_trace *` (weak) to
50 * `struct fs_sink_trace *` (owned by hash table).
51 */
52 GHashTable *traces;
53 };
54
55 bt_component_class_initialize_method_status
56 ctf_fs_sink_init(bt_self_component_sink *component, bt_self_component_sink_configuration *config,
57 const bt_value *params, void *init_method_data);
58
59 bt_component_class_sink_consume_method_status
60 ctf_fs_sink_consume(bt_self_component_sink *component);
61
62 bt_component_class_sink_graph_is_configured_method_status
63 ctf_fs_sink_graph_is_configured(bt_self_component_sink *component);
64
65 void ctf_fs_sink_finalize(bt_self_component_sink *component);
66
67 #endif /* BABELTRACE_PLUGIN_CTF_FS_SINK_FS_SINK_H */
This page took 0.030635 seconds and 4 git commands to generate.