output/analog: Display META packets
This commit is contained in:
parent
2472271e08
commit
688e44ae06
|
@ -75,6 +75,9 @@ static int receive(const struct sr_output *o, const struct sr_datafeed_packet *p
|
||||||
{
|
{
|
||||||
struct context *ctx;
|
struct context *ctx;
|
||||||
const struct sr_datafeed_analog *analog;
|
const struct sr_datafeed_analog *analog;
|
||||||
|
const struct sr_datafeed_meta *meta;
|
||||||
|
const struct sr_config *src;
|
||||||
|
const struct sr_key_info *srci;
|
||||||
struct sr_channel *ch;
|
struct sr_channel *ch;
|
||||||
GSList *l;
|
GSList *l;
|
||||||
float *fdata;
|
float *fdata;
|
||||||
|
@ -94,6 +97,28 @@ static int receive(const struct sr_output *o, const struct sr_datafeed_packet *p
|
||||||
case SR_DF_FRAME_END:
|
case SR_DF_FRAME_END:
|
||||||
*out = g_string_new("FRAME-END\n");
|
*out = g_string_new("FRAME-END\n");
|
||||||
break;
|
break;
|
||||||
|
case SR_DF_META:
|
||||||
|
meta = packet->payload;
|
||||||
|
for (l = meta->config; l; l = l->next) {
|
||||||
|
src = l->data;
|
||||||
|
if (!(srci = sr_key_info_get(SR_KEY_CONFIG, src->key)))
|
||||||
|
return SR_ERR;
|
||||||
|
*out = g_string_sized_new(512);
|
||||||
|
g_string_append(*out, "META ");
|
||||||
|
g_string_append_printf(*out, "%s: ", srci->id);
|
||||||
|
if (srci->datatype == SR_T_BOOL) {
|
||||||
|
g_string_append_printf(*out, "%u",
|
||||||
|
g_variant_get_boolean(src->data));
|
||||||
|
} else if (srci->datatype == SR_T_FLOAT) {
|
||||||
|
g_string_append_printf(*out, "%f",
|
||||||
|
g_variant_get_double(src->data));
|
||||||
|
} else if (srci->datatype == SR_T_UINT64) {
|
||||||
|
g_string_append_printf(*out, "%" PRIu64,
|
||||||
|
g_variant_get_uint64(src->data));
|
||||||
|
}
|
||||||
|
g_string_append(*out, "\n");
|
||||||
|
}
|
||||||
|
break;
|
||||||
case SR_DF_ANALOG:
|
case SR_DF_ANALOG:
|
||||||
analog = packet->payload;
|
analog = packet->payload;
|
||||||
num_channels = g_slist_length(analog->meaning->channels);
|
num_channels = g_slist_length(analog->meaning->channels);
|
||||||
|
|
Loading…
Reference in New Issue