X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=converter%2Fbabeltrace-cfg.h;h=20c1606667cc722c004f754c83016305ac1f5fe9;hb=2703153bb02ccf34e8aedbacde7ed258c73630b3;hp=46777547ca514aaba27affc7e0986249d2354aed;hpb=015cee23405628ddbab968175508e9d5c0e8b00d;p=babeltrace.git diff --git a/converter/babeltrace-cfg.h b/converter/babeltrace-cfg.h index 46777547..20c16066 100644 --- a/converter/babeltrace-cfg.h +++ b/converter/babeltrace-cfg.h @@ -38,24 +38,42 @@ struct bt_config_component { GString *plugin_name; GString *component_name; struct bt_value *params; - uint64_t begin_ns; - uint64_t end_ns; +}; + +enum bt_config_command { + BT_CONFIG_COMMAND_CONVERT, + BT_CONFIG_COMMAND_LIST_PLUGINS, }; struct bt_config { struct bt_object base; - struct bt_value *plugin_paths; + bool debug; + bool verbose; + const char *command_name; + enum bt_config_command command; + union { + /* BT_CONFIG_COMMAND_CONVERT */ + struct { + struct bt_value *plugin_paths; - /* Array of pointers to struct bt_config_component */ - GPtrArray *sources; + /* Array of pointers to struct bt_config_component */ + GPtrArray *sources; - /* Array of pointers to struct bt_config_component */ - GPtrArray *sinks; + /* Array of pointers to struct bt_config_component */ + GPtrArray *sinks; - bool debug; - bool verbose; - bool do_list; - bool force_correlate; + bool force_correlate; + bool omit_system_plugin_path; + bool omit_home_plugin_path; + } convert; + + /* BT_CONFIG_COMMAND_LIST_PLUGINS */ + struct { + struct bt_value *plugin_paths; + bool omit_system_plugin_path; + bool omit_home_plugin_path; + } list_plugins; + } cmd_data; }; static inline @@ -65,6 +83,12 @@ struct bt_config_component *bt_config_get_component(GPtrArray *array, return bt_get(g_ptr_array_index(array, index)); } -struct bt_config *bt_config_from_args(int argc, char *argv[], int *exit_code); +struct bt_config *bt_config_from_args(int argc, const char *argv[], + int *retcode, bool omit_system_plugin_path, + bool omit_home_plugin_path, + struct bt_value *initial_plugin_paths); + +enum bt_value_status bt_config_append_plugin_paths( + struct bt_value *plugin_paths, const char *arg); #endif /* BABELTRACE_CONVERTER_CFG_H */