sr: SR_DF_ANALOG type, and meta types for analog+logic
This commit is contained in:
parent
7e41e319d9
commit
ee7489d234
12
session.c
12
session.c
|
@ -400,6 +400,7 @@ SR_API int sr_session_stop(void)
|
||||||
static void datafeed_dump(struct sr_datafeed_packet *packet)
|
static void datafeed_dump(struct sr_datafeed_packet *packet)
|
||||||
{
|
{
|
||||||
struct sr_datafeed_logic *logic;
|
struct sr_datafeed_logic *logic;
|
||||||
|
struct sr_datafeed_analog *analog;
|
||||||
|
|
||||||
switch (packet->type) {
|
switch (packet->type) {
|
||||||
case SR_DF_HEADER:
|
case SR_DF_HEADER:
|
||||||
|
@ -408,11 +409,22 @@ static void datafeed_dump(struct sr_datafeed_packet *packet)
|
||||||
case SR_DF_TRIGGER:
|
case SR_DF_TRIGGER:
|
||||||
sr_dbg("bus: received SR_DF_TRIGGER");
|
sr_dbg("bus: received SR_DF_TRIGGER");
|
||||||
break;
|
break;
|
||||||
|
case SR_DF_META_LOGIC:
|
||||||
|
sr_dbg("bus: received SR_DF_META_LOGIC");
|
||||||
|
break;
|
||||||
case SR_DF_LOGIC:
|
case SR_DF_LOGIC:
|
||||||
logic = packet->payload;
|
logic = packet->payload;
|
||||||
/* TODO: Check for logic != NULL. */
|
/* TODO: Check for logic != NULL. */
|
||||||
sr_dbg("bus: received SR_DF_LOGIC %" PRIu64 " bytes", logic->length);
|
sr_dbg("bus: received SR_DF_LOGIC %" PRIu64 " bytes", logic->length);
|
||||||
break;
|
break;
|
||||||
|
case SR_DF_META_ANALOG:
|
||||||
|
sr_dbg("bus: received SR_DF_META_LOGIC");
|
||||||
|
break;
|
||||||
|
case SR_DF_ANALOG:
|
||||||
|
analog = packet->payload;
|
||||||
|
/* TODO: Check for analog != NULL. */
|
||||||
|
sr_dbg("bus: received SR_DF_ANALOG %d samples", analog->num_samples);
|
||||||
|
break;
|
||||||
case SR_DF_END:
|
case SR_DF_END:
|
||||||
sr_dbg("bus: received SR_DF_END");
|
sr_dbg("bus: received SR_DF_END");
|
||||||
break;
|
break;
|
||||||
|
|
25
sigrok.h.in
25
sigrok.h.in
|
@ -150,7 +150,9 @@ enum {
|
||||||
SR_DF_END,
|
SR_DF_END,
|
||||||
SR_DF_TRIGGER,
|
SR_DF_TRIGGER,
|
||||||
SR_DF_LOGIC,
|
SR_DF_LOGIC,
|
||||||
SR_DF_PD,
|
SR_DF_META_LOGIC,
|
||||||
|
SR_DF_ANALOG,
|
||||||
|
SR_DF_META_ANALOG,
|
||||||
};
|
};
|
||||||
|
|
||||||
struct sr_datafeed_packet {
|
struct sr_datafeed_packet {
|
||||||
|
@ -161,8 +163,11 @@ struct sr_datafeed_packet {
|
||||||
struct sr_datafeed_header {
|
struct sr_datafeed_header {
|
||||||
int feed_version;
|
int feed_version;
|
||||||
struct timeval starttime;
|
struct timeval starttime;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct sr_datafeed_meta_logic {
|
||||||
|
int num_probes;
|
||||||
uint64_t samplerate;
|
uint64_t samplerate;
|
||||||
int num_logic_probes;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct sr_datafeed_logic {
|
struct sr_datafeed_logic {
|
||||||
|
@ -171,6 +176,15 @@ struct sr_datafeed_logic {
|
||||||
void *data;
|
void *data;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct sr_datafeed_meta_analog {
|
||||||
|
int num_probes;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct sr_datafeed_analog {
|
||||||
|
int num_samples;
|
||||||
|
float *data;
|
||||||
|
};
|
||||||
|
|
||||||
struct sr_input {
|
struct sr_input {
|
||||||
struct sr_input_format *format;
|
struct sr_input_format *format;
|
||||||
char *param;
|
char *param;
|
||||||
|
@ -249,7 +263,8 @@ enum {
|
||||||
/** The device can act as logic analyzer. */
|
/** The device can act as logic analyzer. */
|
||||||
SR_HWCAP_LOGIC_ANALYZER,
|
SR_HWCAP_LOGIC_ANALYZER,
|
||||||
|
|
||||||
/* TODO: SR_HWCAP_SCOPE, SW_HWCAP_PATTERN_GENERATOR, etc.? */
|
/** The device can act as an oscilloscope. */
|
||||||
|
SR_HWCAP_OSCILLOSCOPE,
|
||||||
|
|
||||||
/*--- Device types --------------------------------------------------*/
|
/*--- Device types --------------------------------------------------*/
|
||||||
|
|
||||||
|
@ -275,6 +290,9 @@ enum {
|
||||||
/** The device supports Run Length Encoding. */
|
/** The device supports Run Length Encoding. */
|
||||||
SR_HWCAP_RLE,
|
SR_HWCAP_RLE,
|
||||||
|
|
||||||
|
/** The device supports setting trigger slope. */
|
||||||
|
SR_HWCAP_TRIGGERSLOPE,
|
||||||
|
|
||||||
/*--- Special stuff -------------------------------------------------*/
|
/*--- Special stuff -------------------------------------------------*/
|
||||||
|
|
||||||
/* TODO: Better description. */
|
/* TODO: Better description. */
|
||||||
|
@ -310,7 +328,6 @@ enum {
|
||||||
*/
|
*/
|
||||||
SR_HWCAP_CONTINUOUS,
|
SR_HWCAP_CONTINUOUS,
|
||||||
|
|
||||||
/* TODO: SR_HWCAP_JUST_SAMPLE or similar. */
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct sr_hwcap_option {
|
struct sr_hwcap_option {
|
||||||
|
|
Loading…
Reference in New Issue