cem-dt-885x: Convert to SR_DF_ANALOG.

This commit is contained in:
Uwe Hermann 2016-05-27 17:33:46 +02:00
parent 3f5cf2a06a
commit 7f9932e8db
2 changed files with 21 additions and 15 deletions

View File

@ -66,7 +66,10 @@ static void process_mset(const struct sr_dev_inst *sdi)
{
struct dev_context *devc;
struct sr_datafeed_packet packet;
struct sr_datafeed_analog_old analog;
struct sr_datafeed_analog analog;
struct sr_analog_encoding encoding;
struct sr_analog_meaning meaning;
struct sr_analog_spec spec;
GString *dbg;
float fvalue;
int i;
@ -131,14 +134,14 @@ static void process_mset(const struct sr_dev_inst *sdi)
break;
}
}
memset(&analog, 0, sizeof(struct sr_datafeed_analog_old));
analog.mq = SR_MQ_SOUND_PRESSURE_LEVEL;
analog.mqflags = devc->cur_mqflags;
analog.unit = SR_UNIT_DECIBEL_SPL;
analog.channels = sdi->channels;
sr_analog_init(&analog, &encoding, &meaning, &spec, 0);
analog.meaning->mq = SR_MQ_SOUND_PRESSURE_LEVEL;
analog.meaning->mqflags = devc->cur_mqflags;
analog.meaning->unit = SR_UNIT_DECIBEL_SPL;
analog.meaning->channels = sdi->channels;
analog.num_samples = 1;
analog.data = &devc->last_spl;
packet.type = SR_DF_ANALOG_OLD;
packet.type = SR_DF_ANALOG;
packet.payload = &analog;
sr_session_send(sdi, &packet);
@ -177,7 +180,10 @@ static void send_data(const struct sr_dev_inst *sdi, unsigned char *data,
{
struct dev_context *devc;
struct sr_datafeed_packet packet;
struct sr_datafeed_analog_old analog;
struct sr_datafeed_analog analog;
struct sr_analog_encoding encoding;
struct sr_analog_meaning meaning;
struct sr_analog_spec spec;
float fbuf[SAMPLES_PER_PACKET];
unsigned int i;
@ -189,14 +195,14 @@ static void send_data(const struct sr_dev_inst *sdi, unsigned char *data,
fbuf[i] += ((data[i * 2 + 1] & 0xf0) >> 4);
fbuf[i] += (data[i * 2 + 1] & 0x0f) / 10.0;
}
memset(&analog, 0, sizeof(struct sr_datafeed_analog_old));
analog.mq = SR_MQ_SOUND_PRESSURE_LEVEL;
analog.mqflags = devc->cur_mqflags;
analog.unit = SR_UNIT_DECIBEL_SPL;
analog.channels = sdi->channels;
sr_analog_init(&analog, &encoding, &meaning, &spec, 0);
analog.meaning->mq = SR_MQ_SOUND_PRESSURE_LEVEL;
analog.meaning->mqflags = devc->cur_mqflags;
analog.meaning->unit = SR_UNIT_DECIBEL_SPL;
analog.meaning->channels = sdi->channels;
analog.num_samples = num_samples;
analog.data = fbuf;
packet.type = SR_DF_ANALOG_OLD;
packet.type = SR_DF_ANALOG;
packet.payload = &analog;
sr_session_send(sdi, &packet);

View File

@ -90,7 +90,7 @@ enum {
/** Private, per-device-instance driver context. */
struct dev_context {
/* Device state */
uint64_t cur_mqflags;
enum sr_mqflag cur_mqflags;
int recording;
int cur_meas_range;
int cur_data_source;