]> sigrok.org Git - sigrok-cli.git/blobdiff - session.c
Use sr_trigger_stage_add().
[sigrok-cli.git] / session.c
index 598ef003dfb9a39c2e0de0d257553f562f0d3fd7..27fa262135d757dec7235c89e546bc1d975ae3d0 100644 (file)
--- a/session.c
+++ b/session.c
@@ -155,7 +155,7 @@ void datafeed_in(const struct sr_dev_inst *sdi,
 
        switch (packet->type) {
        case SR_DF_HEADER:
-               g_debug("cli: Received SR_DF_HEADER");
+               g_debug("cli: Received SR_DF_HEADER.");
                o = setup_output_format(sdi);
 
                /* Prepare non-stdout output. */
@@ -195,14 +195,14 @@ void datafeed_in(const struct sr_dev_inst *sdi,
                break;
 
        case SR_DF_META:
-               g_debug("cli: received SR_DF_META");
+               g_debug("cli: Received SR_DF_META.");
                meta = packet->payload;
                for (l = meta->config; l; l = l->next) {
                        src = l->data;
                        switch (src->key) {
                        case SR_CONF_SAMPLERATE:
                                samplerate = g_variant_get_uint64(src->data);
-                               g_debug("cli: got samplerate %"PRIu64" Hz", samplerate);
+                               g_debug("cli: Got samplerate %"PRIu64" Hz.", samplerate);
 #ifdef HAVE_SRD
                                if (opt_pds) {
                                        if (srd_session_metadata_set(srd_sess, SRD_CONF_SAMPLERATE,
@@ -214,7 +214,7 @@ void datafeed_in(const struct sr_dev_inst *sdi,
                                break;
                        case SR_CONF_SAMPLE_INTERVAL:
                                samplerate = g_variant_get_uint64(src->data);
-                               g_debug("cli: got sample interval %"PRIu64" ms", samplerate);
+                               g_debug("cli: Got sample interval %"PRIu64" ms.", samplerate);
                                break;
                        default:
                                /* Unknown metadata is not an error. */
@@ -224,13 +224,14 @@ void datafeed_in(const struct sr_dev_inst *sdi,
                break;
 
        case SR_DF_TRIGGER:
-               g_debug("cli: received SR_DF_TRIGGER");
+               g_debug("cli: Received SR_DF_TRIGGER.");
                triggered = 1;
                break;
 
        case SR_DF_LOGIC:
                logic = packet->payload;
-               g_message("cli: received SR_DF_LOGIC, %"PRIu64" bytes", logic->length);
+               g_message("cli: Received SR_DF_LOGIC (%"PRIu64" bytes, unitsize = %d).",
+                               logic->length, logic->unitsize);
                if (logic->length == 0)
                        break;
 
@@ -278,7 +279,7 @@ void datafeed_in(const struct sr_dev_inst *sdi,
 
        case SR_DF_ANALOG:
                analog = packet->payload;
-               g_message("cli: received SR_DF_ANALOG, %d samples", analog->num_samples);
+               g_message("cli: Received SR_DF_ANALOG (%d samples).", analog->num_samples);
                if (analog->num_samples == 0)
                        break;
 
@@ -289,11 +290,11 @@ void datafeed_in(const struct sr_dev_inst *sdi,
                break;
 
        case SR_DF_FRAME_BEGIN:
-               g_debug("cli: received SR_DF_FRAME_BEGIN");
+               g_debug("cli: Received SR_DF_FRAME_BEGIN.");
                break;
 
        case SR_DF_FRAME_END:
-               g_debug("cli: received SR_DF_FRAME_END");
+               g_debug("cli: Received SR_DF_FRAME_END.");
                break;
 
        default:
@@ -311,7 +312,7 @@ void datafeed_in(const struct sr_dev_inst *sdi,
        /* SR_DF_END needs to be handled after the output module's receive()
         * is called, so it can properly clean up that module. */
        if (packet->type == SR_DF_END) {
-               g_debug("cli: Received SR_DF_END");
+               g_debug("cli: Received SR_DF_END.");
 
                if (o)
                        sr_output_free(o);
@@ -371,7 +372,7 @@ int opt_to_gvar(char *key, char *value, struct sr_config *src)
                        break;
                src->data = g_variant_new_int32(tmp_u64);
                break;
-       case SR_T_CHAR:
+       case SR_T_STRING:
                src->data = g_variant_new_string(value);
                break;
        case SR_T_BOOL:
@@ -456,8 +457,6 @@ void run_session(void)
        GVariant *gvar;
        struct sr_dev_inst *sdi;
        uint64_t min_samples, max_samples;
-       int max_channels, i;
-       char **triggerlist;
 
        devices = device_scan();
        if (!devices) {
@@ -499,18 +498,10 @@ void run_session(void)
        }
 
        if (opt_triggers) {
-               if (!(triggerlist = sr_parse_triggerstring(sdi, opt_triggers))) {
+               if (!parse_triggerstring(sdi, opt_triggers)) {
                        sr_session_destroy();
                        return;
                }
-               max_channels = g_slist_length(sdi->channels);
-               for (i = 0; i < max_channels; i++) {
-                       if (triggerlist[i]) {
-                               sr_dev_trigger_set(sdi, i, triggerlist[i]);
-                               g_free(triggerlist[i]);
-                       }
-               }
-               g_free(triggerlist);
        }
 
        if (opt_continuous) {