]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/scpi-dmm/protocol.h
scpi-dmm: Add support for GW-Instek 8200A series bench multimeters.
[libsigrok.git] / src / hardware / scpi-dmm / protocol.h
index 0881074ce9ef2715b381c60d98bbb78bd9fd9955..9a6b7012daa09b0bf4c6957542ca83176697e601 100644 (file)
@@ -60,6 +60,9 @@ struct scpi_dmm_model {
        const struct mqopt_item *mqopts;
        size_t mqopt_size;
        int (*get_measurement)(const struct sr_dev_inst *sdi, size_t ch);
+       const uint32_t *devopts;
+       size_t devopts_size;
+       unsigned int read_timeout_us; /* If zero, use default from src/scpi/scpi.c. */
 };
 
 struct dev_context {
@@ -80,6 +83,7 @@ struct dev_context {
                struct sr_analog_meaning meaning[SCPI_DMM_MAX_CHANNELS];
                struct sr_analog_spec spec[SCPI_DMM_MAX_CHANNELS];
        } run_acq_info;
+       gchar *precision;
 };
 
 SR_PRIV void scpi_dmm_cmd_delay(struct sr_scpi_dev_inst *scpi);
@@ -88,10 +92,12 @@ SR_PRIV const struct mqopt_item *scpi_dmm_lookup_mq_number(
 SR_PRIV const struct mqopt_item *scpi_dmm_lookup_mq_text(
        const struct sr_dev_inst *sdi, const char *text);
 SR_PRIV int scpi_dmm_get_mq(const struct sr_dev_inst *sdi,
-       enum sr_mq *mq, enum sr_mqflag *flag, char **rsp);
+       enum sr_mq *mq, enum sr_mqflag *flag, char **rsp,
+       const struct mqopt_item **mqitem);
 SR_PRIV int scpi_dmm_set_mq(const struct sr_dev_inst *sdi,
        enum sr_mq mq, enum sr_mqflag flag);
 SR_PRIV int scpi_dmm_get_meas_agilent(const struct sr_dev_inst *sdi, size_t ch);
+SR_PRIV int scpi_dmm_get_meas_gwinstek(const struct sr_dev_inst *sdi, size_t ch);
 SR_PRIV int scpi_dmm_receive_data(int fd, int revents, void *cb_data);
 
 #endif