X-Git-Url: http://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=src%2Fhwdriver.c;h=a676d026a6aadcc60d904f31494746090d14fef5;hp=a2d5316714c5865f9d034b8c246530e3bc02851c;hb=HEAD;hpb=78ec6cf99d14c42ff9f3922715e405414262a2e2 diff --git a/src/hwdriver.c b/src/hwdriver.c index a2d53167..068a215a 100644 --- a/src/hwdriver.c +++ b/src/hwdriver.c @@ -63,6 +63,7 @@ static struct sr_key_info sr_key_info_config[] = { {SR_CONF_SCALE, SR_T_STRING, NULL, "Scale", NULL}, {SR_CONF_SIGNAL_GENERATOR, SR_T_STRING, NULL, "Signal generator", NULL}, {SR_CONF_POWERMETER, SR_T_STRING, NULL, "Power meter", NULL}, + {SR_CONF_MULTIPLEXER, SR_T_STRING, NULL, "Multiplexer", NULL}, /* Driver scan options */ {SR_CONF_CONN, SR_T_STRING, "conn", @@ -71,6 +72,10 @@ static struct sr_key_info sr_key_info_config[] = { "Serial communication", NULL}, {SR_CONF_MODBUSADDR, SR_T_UINT64, "modbusaddr", "Modbus slave address", NULL}, + {SR_CONF_FORCE_DETECT, SR_T_STRING, "force_detect", + "Forced detection", NULL}, + {SR_CONF_PROBE_NAMES, SR_T_STRING, "probe_names", + "Names of device's probes", NULL}, /* Device (or channel group) configuration */ {SR_CONF_SAMPLERATE, SR_T_UINT64, "samplerate", @@ -185,6 +190,32 @@ static struct sr_key_info sr_key_info_config[] = { "External clock source", NULL}, {SR_CONF_OFFSET, SR_T_FLOAT, "offset", "Offset", NULL}, + {SR_CONF_TRIGGER_PATTERN, SR_T_STRING, "triggerpattern", + "Trigger pattern", NULL}, + {SR_CONF_HIGH_RESOLUTION, SR_T_BOOL, "highresolution", + "High resolution", NULL}, + {SR_CONF_PEAK_DETECTION, SR_T_BOOL, "peakdetection", + "Peak detection", NULL}, + {SR_CONF_LOGIC_THRESHOLD, SR_T_STRING, "logic_threshold", + "Logic threshold (predefined)", NULL}, + {SR_CONF_LOGIC_THRESHOLD_CUSTOM, SR_T_FLOAT, "logic_threshold_custom", + "Logic threshold (custom)", NULL}, + {SR_CONF_RANGE, SR_T_STRING, "range", + "Range", NULL}, + {SR_CONF_DIGITS, SR_T_STRING, "digits", + "Digits", NULL}, + {SR_CONF_PHASE, SR_T_FLOAT, "phase", + "Phase", NULL}, + {SR_CONF_DUTY_CYCLE, SR_T_FLOAT, "output_duty_cycle", + "Duty Cycle", NULL}, + {SR_CONF_POWER, SR_T_FLOAT, "power", + "Power", NULL}, + {SR_CONF_POWER_TARGET, SR_T_FLOAT, "power_target", + "Power Target", NULL}, + {SR_CONF_RESISTANCE_TARGET, SR_T_FLOAT, "resistance_target", + "Resistance Target", NULL}, + {SR_CONF_OVER_CURRENT_PROTECTION_DELAY, SR_T_FLOAT, "ocp_delay", + "Over-current protection delay", NULL}, /* Special stuff */ {SR_CONF_SESSIONFILE, SR_T_STRING, "sessionfile", @@ -256,6 +287,8 @@ static struct sr_key_info sr_key_info_mq[] = { {SR_MQ_APPARENT_POWER, 0, "apparent_power", "Apparent power", NULL}, {SR_MQ_MASS, 0, "mass", "Mass", NULL}, {SR_MQ_HARMONIC_RATIO, 0, "harmonic_ratio", "Harmonic ratio", NULL}, + {SR_MQ_ENERGY, 0, "energy", "Energy", NULL}, + {SR_MQ_ELECTRIC_CHARGE, 0, "electric_charge", "Electric charge", NULL}, ALL_ZERO }; @@ -300,6 +333,8 @@ SR_PRIV const GVariantType *sr_variant_type_get(int datatype) switch (datatype) { case SR_T_INT32: return G_VARIANT_TYPE_INT32; + case SR_T_UINT32: + return G_VARIANT_TYPE_UINT32; case SR_T_UINT64: return G_VARIANT_TYPE_UINT64; case SR_T_STRING: @@ -571,6 +606,12 @@ SR_PRIV void sr_hw_cleanup_all(const struct sr_context *ctx) * * A floating reference can be passed in for data. * + * @param key The config key to use. + * @param data The GVariant data to use. + * + * @return The newly allocated struct sr_config. This function is assumed + * to never fail. + * * @private */ SR_PRIV struct sr_config *sr_config_new(uint32_t key, GVariant *data)