summaryrefslogtreecommitdiff
path: root/gr-analog/lib/ctcss_squelch_ff_impl.h
diff options
context:
space:
mode:
authorJon Szymaniak <jon.szymaniak@gmail.com>2015-03-24 11:52:45 -0400
committerJon Szymaniak <jon.szymaniak@gmail.com>2015-03-24 12:05:00 -0400
commit816eb840fd86000b12525ff28d128fe643a15a73 (patch)
treebc1406d2bce089cf452427dc224f1e44a8d5525f /gr-analog/lib/ctcss_squelch_ff_impl.h
parent0b8122391963e423ca4b291a49431ffc401cafd1 (diff)
analog: Wrapped squelch blocks' setter methods with lock
The setter methods of squelch_base and its children have been updated to hold d_setlock to avoid races. For example, updating the CTCSS frequency parameter requires updates to three separate fft::goertzel objects, which are used during the general_work().
Diffstat (limited to 'gr-analog/lib/ctcss_squelch_ff_impl.h')
-rw-r--r--gr-analog/lib/ctcss_squelch_ff_impl.h9
1 files changed, 2 insertions, 7 deletions
diff --git a/gr-analog/lib/ctcss_squelch_ff_impl.h b/gr-analog/lib/ctcss_squelch_ff_impl.h
index 67ce66c4ba..f6e12de766 100644
--- a/gr-analog/lib/ctcss_squelch_ff_impl.h
+++ b/gr-analog/lib/ctcss_squelch_ff_impl.h
@@ -59,15 +59,10 @@ namespace gr {
std::vector<float> squelch_range() const;
float level() const { return d_level; }
- void set_level(float level) { d_level = level; }
+ void set_level(float level);
int len() const { return d_len; }
float frequency() const { return d_freq; }
-
- void set_frequency(float frequency)
- {
- d_freq = frequency;
- update_fft_params();
- }
+ void set_frequency(float frequency);
int ramp() const { return squelch_base_ff_impl::ramp(); }
void set_ramp(int ramp) { squelch_base_ff_impl::set_ramp(ramp); }