? CLOCK_EXT_CLK : CLOCK_INTERNAL;
break;
case SR_CONF_CLOCK_EDGE:
- idx = lookup_index(data, signal_edge_names,
- ARRAY_SIZE(signal_edge_names));
+ idx = lookup_index(data, ARRAY_AND_SIZE(signal_edge_names));
if (idx < 0)
return SR_ERR_ARG;
devc->cfg_clock_edge = idx;
break;
case SR_CONF_TRIGGER_SOURCE:
- idx = lookup_index(data, trigger_source_names,
- ARRAY_SIZE(trigger_source_names));
+ idx = lookup_index(data, ARRAY_AND_SIZE(trigger_source_names));
if (idx < 0)
return SR_ERR_ARG;
devc->cfg_trigger_source = idx;
break;
case SR_CONF_TRIGGER_SLOPE:
- idx = lookup_index(data, signal_edge_names,
- ARRAY_SIZE(signal_edge_names));
+ idx = lookup_index(data, ARRAY_AND_SIZE(signal_edge_names));
if (idx < 0)
return SR_ERR_ARG;
devc->cfg_trigger_slope = idx;
const struct sr_channel_group *cg)
{
struct dev_context *devc;
- GVariant *gvar;
- GVariantBuilder gvb;
devc = (sdi) ? sdi->priv : NULL;
case SR_CONF_SCAN_OPTIONS:
case SR_CONF_DEVICE_OPTIONS:
return std_opts_config_list(key, data, sdi, cg,
- scanopts, ARRAY_SIZE(scanopts),
- drvopts, ARRAY_SIZE(drvopts),
+ ARRAY_AND_SIZE(scanopts), ARRAY_AND_SIZE(drvopts),
(devc) ? devc->model->devopts : NULL,
(devc) ? devc->model->num_devopts : 0);
}
switch (key) {
case SR_CONF_SAMPLERATE:
- g_variant_builder_init(&gvb, G_VARIANT_TYPE_VARDICT);
- gvar = g_variant_new_fixed_array(G_VARIANT_TYPE_UINT64,
- devc->model->samplerates, devc->model->num_samplerates,
- sizeof(devc->model->samplerates[0]));
- g_variant_builder_add(&gvb, "{sv}", "samplerates", gvar);
- *data = g_variant_builder_end(&gvb);
+ *data = std_gvar_samplerates(devc->model->samplerates, devc->model->num_samplerates);
break;
case SR_CONF_TRIGGER_MATCH:
- *data = g_variant_new_fixed_array(G_VARIANT_TYPE_INT32,
- trigger_matches, ARRAY_SIZE(trigger_matches),
- sizeof(trigger_matches[0]));
+ *data = std_gvar_array_i32(ARRAY_AND_SIZE(trigger_matches));
break;
case SR_CONF_TRIGGER_SOURCE:
- *data = g_variant_new_strv(trigger_source_names,
- ARRAY_SIZE(trigger_source_names));
+ *data = g_variant_new_strv(ARRAY_AND_SIZE(trigger_source_names));
break;
case SR_CONF_TRIGGER_SLOPE:
case SR_CONF_CLOCK_EDGE:
- *data = g_variant_new_strv(signal_edge_names,
- ARRAY_SIZE(signal_edge_names));
+ *data = g_variant_new_strv(ARRAY_AND_SIZE(signal_edge_names));
break;
default:
/* Must not happen for a key listed in devopts. */