summaryrefslogtreecommitdiff
path: root/gr-trellis/lib/permutation_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gr-trellis/lib/permutation_impl.cc')
-rw-r--r--gr-trellis/lib/permutation_impl.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/gr-trellis/lib/permutation_impl.cc b/gr-trellis/lib/permutation_impl.cc
index 0d9d3593bf..2fe0ea8cb8 100644
--- a/gr-trellis/lib/permutation_impl.cc
+++ b/gr-trellis/lib/permutation_impl.cc
@@ -55,12 +55,20 @@ namespace gr {
void permutation_impl::set_K(int K)
{
+ gr::thread::scoped_lock guard(d_setlock);
d_K=K;
set_output_multiple(d_K*d_SYMS_PER_BLOCK);
}
+ void permutation_impl::set_TABLE (const std::vector<int> &table)
+ {
+ gr::thread::scoped_lock guard(d_setlock);
+ d_TABLE = table;
+ }
+
void permutation_impl::set_SYMS_PER_BLOCK(int spb)
{
+ gr::thread::scoped_lock guard(d_setlock);
d_SYMS_PER_BLOCK=spb;
set_output_multiple(d_K*d_SYMS_PER_BLOCK);
}
@@ -74,6 +82,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++) {