summaryrefslogtreecommitdiff
path: root/gr-blocks/lib/deinterleave_impl.cc
diff options
context:
space:
mode:
authorTom Rondeau <tom@trondeau.com>2014-05-13 17:36:10 -0400
committerTom Rondeau <tom@trondeau.com>2014-05-17 17:45:15 -0400
commit5f0247e7cdb7e63e970f009530944e29fb99913c (patch)
tree69a91cb2635aea8c43841f8797ca8918e4c0d0ab /gr-blocks/lib/deinterleave_impl.cc
parentcf84d24e7792aefe8ae7b24536bde23d2ae00770 (diff)
Revert "blocks: add optional argument to deinterleave and interleave ctors to not set relative rate."
This reverts commit 0c589a7d8f18c9b6f7daf06ecfe2a90e84a004d2. Not necessary.
Diffstat (limited to 'gr-blocks/lib/deinterleave_impl.cc')
-rw-r--r--gr-blocks/lib/deinterleave_impl.cc27
1 files changed, 11 insertions, 16 deletions
diff --git a/gr-blocks/lib/deinterleave_impl.cc b/gr-blocks/lib/deinterleave_impl.cc
index 025e2b62c5..5e1cc5221d 100644
--- a/gr-blocks/lib/deinterleave_impl.cc
+++ b/gr-blocks/lib/deinterleave_impl.cc
@@ -1,6 +1,6 @@
/* -*- c++ -*- */
/*
- * Copyright 2012,2014 Free Software Foundation, Inc.
+ * Copyright 2012 Free Software Foundation, Inc.
*
* This file is part of GNU Radio
*
@@ -30,20 +30,16 @@
namespace gr {
namespace blocks {
- deinterleave::sptr deinterleave::make(size_t itemsize, unsigned int blocksize,
- bool set_rel_rate)
+ deinterleave::sptr deinterleave::make(size_t itemsize, unsigned int blocksize)
{
- return gnuradio::get_initial_sptr
- (new deinterleave_impl(itemsize, blocksize, set_rel_rate));
+ return gnuradio::get_initial_sptr(new deinterleave_impl(itemsize, blocksize));
}
-
- deinterleave_impl::deinterleave_impl(size_t itemsize, unsigned int blocksize,
- bool set_rel_rate)
+
+ deinterleave_impl::deinterleave_impl(size_t itemsize, unsigned int blocksize)
: block("deinterleave",
io_signature::make (1, 1, itemsize),
io_signature::make (1, io_signature::IO_INFINITE, itemsize)),
- d_itemsize(itemsize), d_blocksize(blocksize), d_current_output(0),
- d_set_rel_rate(set_rel_rate)
+ d_itemsize(itemsize), d_blocksize(blocksize), d_current_output(0)
{
set_output_multiple(blocksize);
}
@@ -51,12 +47,11 @@ namespace gr {
bool
deinterleave_impl::check_topology(int ninputs, int noutputs)
{
- if(d_set_rel_rate)
- set_relative_rate(1.0/static_cast<double>(noutputs));
+ set_relative_rate((double)noutputs);
d_noutputs = noutputs;
return true;
}
-
+
int
deinterleave_impl::general_work(int noutput_items,
gr_vector_int& ninput_items,
@@ -65,14 +60,14 @@ namespace gr {
{
const char *in = (const char*)input_items[0];
char **out = (char**)&output_items[0];
-
+
memcpy(out[d_current_output], in, d_itemsize * d_blocksize);
consume_each(d_blocksize);
produce(d_current_output, d_blocksize);
d_current_output = (d_current_output + 1) % d_noutputs;
return WORK_CALLED_PRODUCE;
}
-
-
+
+
} /* namespace blocks */
} /* namespace gr */