From: Gerhard Sittig Date: Sun, 13 May 2018 17:27:51 +0000 (+0200) Subject: demo: data type nits in the device context (enum, unsigned int) X-Git-Url: https://sigrok.org/gitaction?a=commitdiff_plain;h=817e759ddc9a1c37b5cb044f8b2a99cb5465feb4;p=libsigrok.git demo: data type nits in the device context (enum, unsigned int) Move the declaration of codes for pattern types before the declaration of the context container such that the latter can reference the former. Add 'int' to an unsigned variable that omitted the base type. --- diff --git a/src/hardware/demo/protocol.h b/src/hardware/demo/protocol.h index f1c66711..e2934980 100644 --- a/src/hardware/demo/protocol.h +++ b/src/hardware/demo/protocol.h @@ -36,34 +36,8 @@ /* This is a development feature: it starts a new frame every n samples. */ #define SAMPLES_PER_FRAME 0 -struct dev_context { - uint64_t cur_samplerate; - uint64_t limit_samples; - uint64_t limit_msec; - uint64_t sent_samples; - uint64_t sent_frame_samples; /* Number of samples that were sent for current frame. */ - int64_t start_us; - int64_t spent_us; - uint64_t step; - /* Logic */ - int32_t num_logic_channels; - unsigned int logic_unitsize; - /* There is only ever one logic channel group, so its pattern goes here. */ - uint8_t logic_pattern; - unsigned char logic_data[LOGIC_BUFSIZE]; - /* Analog */ - int32_t num_analog_channels; - GHashTable *ch_ag; - gboolean avg; /* True if averaging is enabled */ - uint64_t avg_samples; - size_t enabled_logic_channels; - size_t enabled_analog_channels; - size_t first_partial_logic_index; - uint8_t first_partial_logic_mask; -}; - /* Logic patterns we can generate. */ -enum { +enum logic_pattern_type { /** * Spells "sigrok" across 8 channels using '0's (with '1's as * "background") when displayed using the 'bits' output format. @@ -106,13 +80,39 @@ enum { }; /* Analog patterns we can generate. */ -enum { +enum analog_pattern_type { PATTERN_SQUARE, PATTERN_SINE, PATTERN_TRIANGLE, PATTERN_SAWTOOTH, }; +struct dev_context { + uint64_t cur_samplerate; + uint64_t limit_samples; + uint64_t limit_msec; + uint64_t sent_samples; + uint64_t sent_frame_samples; /* Number of samples that were sent for current frame. */ + int64_t start_us; + int64_t spent_us; + uint64_t step; + /* Logic */ + int32_t num_logic_channels; + size_t logic_unitsize; + /* There is only ever one logic channel group, so its pattern goes here. */ + enum logic_pattern_type logic_pattern; + uint8_t logic_data[LOGIC_BUFSIZE]; + /* Analog */ + int32_t num_analog_channels; + GHashTable *ch_ag; + gboolean avg; /* True if averaging is enabled */ + uint64_t avg_samples; + size_t enabled_logic_channels; + size_t enabled_analog_channels; + size_t first_partial_logic_index; + uint8_t first_partial_logic_mask; +}; + static const char *analog_pattern_str[] = { "square", "sine", @@ -122,7 +122,7 @@ static const char *analog_pattern_str[] = { struct analog_gen { struct sr_channel *ch; - int pattern; + enum analog_pattern_type pattern; float amplitude; float pattern_data[ANALOG_BUFSIZE]; unsigned int num_samples; @@ -131,7 +131,7 @@ struct analog_gen { struct sr_analog_meaning meaning; struct sr_analog_spec spec; float avg_val; /* Average value */ - unsigned num_avgs; /* Number of samples averaged */ + unsigned int num_avgs; /* Number of samples averaged */ }; SR_PRIV void demo_generate_analog_pattern(struct analog_gen *ag, uint64_t sample_rate);