diff options
Diffstat (limited to 'gr-trellis/lib/metrics_X_impl.cc.t')
-rw-r--r-- | gr-trellis/lib/metrics_X_impl.cc.t | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/gr-trellis/lib/metrics_X_impl.cc.t b/gr-trellis/lib/metrics_X_impl.cc.t index 499bd8b9cd..5e74e4b2fc 100644 --- a/gr-trellis/lib/metrics_X_impl.cc.t +++ b/gr-trellis/lib/metrics_X_impl.cc.t @@ -54,16 +54,40 @@ namespace gr { set_output_multiple ((int)d_O); } - @IMPL_NAME@::~@IMPL_NAME@() + void @IMPL_NAME@::set_O(int O) + { + gr::thread::scoped_lock guard(d_setlock); + d_O = O; + set_relative_rate (1.0 * d_O / ((double) d_D)); + set_output_multiple ((int)d_O); + } + + void @IMPL_NAME@::set_D(int D) + { + gr::thread::scoped_lock guard(d_setlock); + d_D = D; + set_relative_rate (1.0 * d_O / ((double) d_D)); + } + + void + @IMPL_NAME@::set_TYPE(digital::trellis_metric_type_t type) { + gr::thread::scoped_lock guard(d_setlock); + d_TYPE = type; } void @IMPL_NAME@::set_TABLE(const std::vector<@I_TYPE@> &table) { + gr::thread::scoped_lock guard(d_setlock); d_TABLE = table; } + @IMPL_NAME@::~@IMPL_NAME@() + { + } + + void @IMPL_NAME@::forecast(int noutput_items, gr_vector_int &ninput_items_required) { @@ -79,6 +103,7 @@ namespace gr { gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) { + gr::thread::scoped_lock guard(d_setlock); int nstreams = input_items.size(); for(int m = 0; m < nstreams; m++) { |