diff options
author | Mathias Rasmussen <mathiasvr@gmail.com> | 2019-10-22 22:26:05 +0200 |
---|---|---|
committer | Michael Dickens <michael.dickens@ettus.com> | 2019-11-17 18:17:03 -0500 |
commit | c750d104d938cc6f3c09417022f132676f6646e4 (patch) | |
tree | 48eca6126fae23f932ed03f91b672cd685c73582 /gr-fec/lib/decoder_impl.cc | |
parent | f78c95897ec696f208d2bc089c9fdc9e6367903d (diff) |
change rounding method to `lround`
Diffstat (limited to 'gr-fec/lib/decoder_impl.cc')
-rw-r--r-- | gr-fec/lib/decoder_impl.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/gr-fec/lib/decoder_impl.cc b/gr-fec/lib/decoder_impl.cc index 5af8978700..f4ad7a9846 100644 --- a/gr-fec/lib/decoder_impl.cc +++ b/gr-fec/lib/decoder_impl.cc @@ -63,17 +63,17 @@ decoder_impl::decoder_impl(generic_decoder::sptr my_decoder, int decoder_impl::fixed_rate_ninput_to_noutput(int ninput) { - return (int)(0.5 + ninput * relative_rate()); + return std::lround(ninput * relative_rate()); } int decoder_impl::fixed_rate_noutput_to_ninput(int noutput) { - return (int)(0.5 + noutput / relative_rate()); + return std::lround(noutput / relative_rate()); } void decoder_impl::forecast(int noutput_items, gr_vector_int& ninput_items_required) { - ninput_items_required[0] = 0.5 + fixed_rate_noutput_to_ninput(noutput_items); + ninput_items_required[0] = std::lround(fixed_rate_noutput_to_ninput(noutput_items)); } int decoder_impl::general_work(int noutput_items, @@ -84,9 +84,9 @@ int decoder_impl::general_work(int noutput_items, const unsigned char* in = (unsigned char*)input_items[0]; unsigned char* out = (unsigned char*)output_items[0]; - int outnum = (int)(((1.0 / relative_rate()) * noutput_items) + 0.5); + int outnum = std::lround((1.0 / relative_rate()) * noutput_items); int innum = - (int)(relative_rate() * (ninput_items[0] - d_decoder->get_history()) + 0.5) / + std::lround(relative_rate() * (ninput_items[0] - d_decoder->get_history())) / (output_multiple() - d_decoder->get_history()); int items = (outnum <= ninput_items[0] - d_decoder->get_history()) @@ -106,8 +106,8 @@ int decoder_impl::general_work(int noutput_items, pmt::intern(alias())); } - int consumed = static_cast<int>( - items / relative_rate() * (output_multiple() - d_decoder->get_history()) + 0.5); + int consumed = std::lround( + items / relative_rate() * (output_multiple() - d_decoder->get_history())); int returned = items * (output_multiple() - d_decoder->get_history()); consume_each(consumed); |