/*
- * This file is part of the sigrok project.
+ * This file is part of the libsigrok project.
*
* Copyright (C) 2013 Bert Vermeulen <bert@biot.com>
*
"Pre-trigger capture ratio", NULL},
{SR_CONF_PATTERN_MODE, SR_T_CHAR, "pattern",
"Pattern generator mode", NULL},
+ {SR_CONF_TRIGGER_TYPE, SR_T_CHAR, "triggertype",
+ "Trigger types", NULL},
{SR_CONF_RLE, SR_T_BOOL, "rle",
"Run Length Encoding", NULL},
{SR_CONF_TRIGGER_SLOPE, SR_T_UINT64, "triggerslope",
return src;
}
+SR_PRIV void sr_config_free(struct sr_config *src)
+{
+
+ if (!src || !src->data) {
+ sr_err("%s: invalid data!", __func__);
+ return;
+ }
+
+ g_variant_unref(src->data);
+ g_free(src);
+
+}
+
/**
* Returns information about the given driver or device instance.
*
if (!driver || !data)
return SR_ERR;
+ if (!driver->config_get)
+ return SR_ERR_ARG;
+
if ((ret = driver->config_get(key, data, sdi)) == SR_OK) {
/* Got a floating reference from the driver. Sink it here,
* caller will need to unref when done with it. */
{
int ret;
- if (!driver || !data || !driver->config_list)
+ if (!driver || !data)
ret = SR_ERR;
+ else if (!driver->config_list)
+ ret = SR_ERR_ARG;
else if ((ret = driver->config_list(key, data, sdi)) == SR_OK)
g_variant_ref_sink(*data);