]> sigrok.org Git - libsigrok.git/blobdiff - session_driver.c
sr: change all drivers to use SR_DF_META_LOGIC
[libsigrok.git] / session_driver.c
index b64ce3a35a555c7b0ec2ed257f33f4d592ab2d8b..32b8e905fc26a0253fb540e8a5d8550434701014 100644 (file)
@@ -274,6 +274,7 @@ static int hw_dev_acquisition_start(int dev_index, void *cb_data)
        struct session_vdev *vdev;
        struct sr_datafeed_header *header;
        struct sr_datafeed_packet *packet;
+       struct sr_datafeed_meta_logic meta;
        int ret;
 
        if (!(vdev = get_vdev_by_index(dev_index)))
@@ -318,9 +319,15 @@ static int hw_dev_acquisition_start(int dev_index, void *cb_data)
        packet->payload = (unsigned char *)header;
        header->feed_version = 1;
        gettimeofday(&header->starttime, NULL);
-       header->samplerate = vdev->samplerate;
-       header->num_logic_probes = vdev->num_probes;
        sr_session_send(cb_data, packet);
+
+       /* Send metadata about the SR_DF_LOGIC packets to come. */
+       packet->type = SR_DF_META_LOGIC;
+       packet->payload = &meta;
+       meta.samplerate = vdev->samplerate;
+       meta.num_probes = vdev->num_probes;
+       sr_session_send(cb_data, packet);
+
        g_free(header);
        g_free(packet);