X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=options.c;h=9c8dc8cd04fa6fd674d9ca1460e6eefcf2e119a2;hb=247d467ad9b9a68f9c5cdd39b272b7879b3a3f0f;hp=f2acb19243892197a8f9add31004d6516fb164d4;hpb=d486cbddfe380de95a98646f7626426955e563ee;p=sigrok-cli.git diff --git a/options.c b/options.c index f2acb19..9c8dc8c 100644 --- a/options.c +++ b/options.c @@ -32,9 +32,8 @@ gchar *opt_config = NULL; gchar *opt_channels = NULL; gchar *opt_channel_group = NULL; gchar *opt_triggers = NULL; -gchar *opt_pds = NULL; +gchar **opt_pds = NULL; #ifdef HAVE_SRD -gchar *opt_pd_stack = NULL; gchar *opt_pd_annotations = NULL; gchar *opt_pd_meta = NULL; gchar *opt_pd_binary = NULL; @@ -42,13 +41,13 @@ gchar *opt_pd_binary = NULL; gchar *opt_input_format = NULL; gchar *opt_output_format = NULL; gchar *opt_transform_module = NULL; -gchar *opt_show = NULL; +gboolean opt_show = FALSE; gchar *opt_time = NULL; gchar *opt_samples = NULL; gchar *opt_frames = NULL; -gchar *opt_continuous = NULL; +gboolean opt_continuous = FALSE; gchar *opt_get = NULL; -gchar *opt_set = NULL; +gboolean opt_set = FALSE; /* * Defines a callback function that generates an error if an @@ -82,8 +81,6 @@ CHECK_ONCE(opt_channels) CHECK_ONCE(opt_channel_group) CHECK_ONCE(opt_triggers) #ifdef HAVE_SRD -CHECK_ONCE(opt_pds) -CHECK_ONCE(opt_pd_stack) CHECK_ONCE(opt_pd_annotations) CHECK_ONCE(opt_pd_meta) CHECK_ONCE(opt_pd_binary) @@ -126,10 +123,8 @@ static const GOptionEntry optargs[] = { {"wait-trigger", 'w', 0, G_OPTION_ARG_NONE, &opt_wait_trigger, "Wait for trigger", NULL}, #ifdef HAVE_SRD - {"protocol-decoders", 'P', 0, G_OPTION_ARG_CALLBACK, &check_opt_pds, + {"protocol-decoders", 'P', 0, G_OPTION_ARG_STRING_ARRAY, &opt_pds, "Protocol decoders to run", NULL}, - {"protocol-decoder-stack", 'S', 0, G_OPTION_ARG_CALLBACK, &check_opt_pd_stack, - "Protocol decoder stack", NULL}, {"protocol-decoder-annotations", 'A', 0, G_OPTION_ARG_CALLBACK, &check_opt_pd_annotations, "Protocol decoder annotation(s) to show", NULL}, {"protocol-decoder-meta", 'M', 0, G_OPTION_ARG_CALLBACK, &check_opt_pd_meta, @@ -140,7 +135,7 @@ static const GOptionEntry optargs[] = { {"scan", 0, 0, G_OPTION_ARG_NONE, &opt_scan_devs, "Scan for devices", NULL}, {"show", 0, 0, G_OPTION_ARG_NONE, &opt_show, - "Show device detail", NULL}, + "Show device/format/decoder details", NULL}, {"time", 0, 0, G_OPTION_ARG_CALLBACK, &check_opt_time, "How long to sample (ms)", NULL}, {"samples", 0, 0, G_OPTION_ARG_CALLBACK, &check_opt_samples, @@ -220,4 +215,16 @@ void show_help(void) g_free(help); g_option_context_free(context); + +#ifdef HAVE_SRD +#define SHOW_DECODER_TEXT "| -P " +#else +#define SHOW_DECODER_TEXT "" +#endif + printf("Example use, typical options:\n"); + printf(" -d --scan\n"); + printf(" -d { --samples N | --frames N | --time T | --continuous }\n"); + printf(" { -d | -I | -O %s} --show\n", SHOW_DECODER_TEXT); + printf(" See the manpage or the wiki for more details.\n"); + printf(" Note: --samples/--frames/--time/--continuous is required for acquisition.\n"); }