X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fagilent-dmm%2Fsched.c;h=c3dab0b7561c1d591a1d25e00382c6b767c535a5;hb=4b1a9d5d8641080bf10e269aa12a3fc17460365f;hp=d1b765665c2bb9dbfedfed684ff3627f118d2660;hpb=515ab0889ebde4b373d620044a1a98da37153056;p=libsigrok.git diff --git a/src/hardware/agilent-dmm/sched.c b/src/hardware/agilent-dmm/sched.c index d1b76566..c3dab0b7 100644 --- a/src/hardware/agilent-dmm/sched.c +++ b/src/hardware/agilent-dmm/sched.c @@ -17,12 +17,12 @@ * along with this program. If not, see . */ +#include #include #include #include -#include #include -#include "libsigrok.h" +#include #include "libsigrok-internal.h" #include "agilent-dmm.h" @@ -121,8 +121,8 @@ SR_PRIV int agdmm_receive_data(int fd, int revents, void *cb_data) dispatch(sdi); - if (devc->limit_samples && devc->num_samples >= devc->limit_samples) - sdi->driver->dev_acquisition_stop(sdi, cb_data); + if (sr_sw_limits_check(&devc->limits)) + sdi->driver->dev_acquisition_stop(sdi); return TRUE; } @@ -264,7 +264,7 @@ static int recv_fetc(const struct sr_dev_inst *sdi, GMatchInfo *match) { struct dev_context *devc; struct sr_datafeed_packet packet; - struct sr_datafeed_analog analog; + struct sr_datafeed_analog_old analog; float fvalue; const char *s; char *mstr; @@ -296,18 +296,18 @@ static int recv_fetc(const struct sr_dev_inst *sdi, GMatchInfo *match) fvalue /= devc->cur_divider; } - memset(&analog, 0, sizeof(struct sr_datafeed_analog)); + memset(&analog, 0, sizeof(struct sr_datafeed_analog_old)); analog.mq = devc->cur_mq; analog.unit = devc->cur_unit; analog.mqflags = devc->cur_mqflags; analog.channels = sdi->channels; analog.num_samples = 1; analog.data = &fvalue; - packet.type = SR_DF_ANALOG; + packet.type = SR_DF_ANALOG_OLD; packet.payload = &analog; - sr_session_send(devc->cb_data, &packet); + sr_session_send(sdi, &packet); - devc->num_samples++; + sr_sw_limits_update_samples_read(&devc->limits, 1); return SR_OK; } @@ -515,7 +515,7 @@ SR_PRIV const struct agdmm_job agdmm_jobs_u12xx[] = { { 143, send_stat }, { 1000, send_conf }, { 143, send_fetc }, - { 0, NULL } + ALL_ZERO }; SR_PRIV const struct agdmm_recv agdmm_recvs_u123x[] = { @@ -525,7 +525,7 @@ SR_PRIV const struct agdmm_recv agdmm_recvs_u123x[] = { { "^\"(V|MV|A|UA|FREQ),(\\d),(AC|DC)\"$", recv_conf_u123x }, { "^\"(RES|CAP),(\\d)\"$", recv_conf_u123x}, { "^\"(DIOD)\"$", recv_conf }, - { NULL, NULL } + ALL_ZERO }; SR_PRIV const struct agdmm_recv agdmm_recvs_u124x[] = { @@ -537,7 +537,7 @@ SR_PRIV const struct agdmm_recv agdmm_recvs_u124x[] = { { "^\"(CPER:[40]-20mA) ([-+][0-9\\.E\\-+]+),([-+][0-9\\.E\\-+]+)\"$", recv_conf_u124x_5x }, { "^\"(T[0-9]:[A-Z]+) ([A-Z]+)\"$", recv_conf_u124x_5x }, { "^\"(DIOD)\"$", recv_conf }, - { NULL, NULL } + ALL_ZERO }; SR_PRIV const struct agdmm_recv agdmm_recvs_u125x[] = { @@ -549,5 +549,5 @@ SR_PRIV const struct agdmm_recv agdmm_recvs_u125x[] = { { "^\"(CPER:[40]-20mA) ([-+][0-9\\.E\\-+]+),([-+][0-9\\.E\\-+]+)\"$", recv_conf_u124x_5x }, { "^\"(T[0-9]:[A-Z]+) ([A-Z]+)\"$", recv_conf_u124x_5x }, { "^\"(DIOD)\"$", recv_conf }, - { NULL, NULL } + ALL_ZERO };