#include <stdlib.h>
#include <stdint.h>
#include <stdbool.h>
-#include <babeltrace/values.h>
-#include <babeltrace/ref.h>
+#include <babeltrace/value.h>
#include <babeltrace/object-internal.h>
#include <babeltrace/compiler-internal.h>
#include <babeltrace/graph/component-class.h>
};
struct bt_config_component {
- struct bt_object base;
- enum bt_component_class_type type;
+ bt_object base;
+ bt_component_class_type type;
GString *plugin_name;
GString *comp_cls_name;
- struct bt_value *params;
+ bt_value *params;
GString *instance_name;
};
};
struct bt_config {
- struct bt_object base;
+ bt_object base;
bool debug;
bool verbose;
- struct bt_value *plugin_paths;
+ bt_value *plugin_paths;
bool omit_system_plugin_path;
bool omit_home_plugin_path;
bool command_needs_plugins;
const char *command_name;
+ char log_level;
enum bt_config_command command;
union {
/* BT_CONFIG_COMMAND_RUN */
* to retry to run the graph.
*/
uint64_t retry_duration_us;
+
+ /*
+ * Whether or not to trim the source trace to the
+ * intersection of its streams.
+ */
+ bool stream_intersection_mode;
} run;
/* BT_CONFIG_COMMAND_HELP */
/* BT_CONFIG_COMMAND_PRINT_CTF_METADATA */
struct {
GString *path;
+ GString *output_path;
} print_ctf_metadata;
/* BT_CONFIG_COMMAND_PRINT_LTTNG_LIVE_SESSIONS */
struct {
GString *url;
+ GString *output_path;
} print_lttng_live_sessions;
} cmd_data;
};
struct bt_config_component *bt_config_get_component(GPtrArray *array,
size_t index)
{
- return bt_get(g_ptr_array_index(array, index));
+ struct bt_config_component *comp = g_ptr_array_index(array, index);
+
+ bt_object_get_ref(comp);
+ return comp;
}
-enum bt_value_status bt_config_append_plugin_paths(
- struct bt_value *plugin_paths, const char *arg);
+int bt_config_append_plugin_paths(bt_value *plugin_paths,
+ const char *arg);
void bt_config_connection_destroy(struct bt_config_connection *connection);