aboutsummaryrefslogtreecommitdiffstats
path: root/gr-fec
diff options
context:
space:
mode:
Diffstat (limited to 'gr-fec')
-rw-r--r--gr-fec/include/gnuradio/fec/polar_decoder_sc_list.h1
-rw-r--r--gr-fec/lib/decoder_impl.cc14
-rw-r--r--gr-fec/lib/depuncture_bb_impl.cc8
-rw-r--r--gr-fec/lib/encoder_impl.cc4
-rw-r--r--gr-fec/lib/puncture_bb_impl.cc8
-rw-r--r--gr-fec/lib/puncture_ff_impl.cc8
-rw-r--r--gr-fec/lib/tpc_decoder.cc2
7 files changed, 22 insertions, 23 deletions
diff --git a/gr-fec/include/gnuradio/fec/polar_decoder_sc_list.h b/gr-fec/include/gnuradio/fec/polar_decoder_sc_list.h
index 608992927..8f02dc537 100644
--- a/gr-fec/include/gnuradio/fec/polar_decoder_sc_list.h
+++ b/gr-fec/include/gnuradio/fec/polar_decoder_sc_list.h
@@ -33,7 +33,6 @@ namespace code {
namespace polar {
class scl_list;
-class path;
} // namespace polar
/*!
diff --git a/gr-fec/lib/decoder_impl.cc b/gr-fec/lib/decoder_impl.cc
index 5af897870..f4ad7a984 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);
diff --git a/gr-fec/lib/depuncture_bb_impl.cc b/gr-fec/lib/depuncture_bb_impl.cc
index 27d00bb5b..3cb065102 100644
--- a/gr-fec/lib/depuncture_bb_impl.cc
+++ b/gr-fec/lib/depuncture_bb_impl.cc
@@ -81,18 +81,18 @@ depuncture_bb_impl::~depuncture_bb_impl() {}
int depuncture_bb_impl::fixed_rate_ninput_to_noutput(int ninput)
{
- return (int)(((d_puncsize / (double)(d_puncsize - d_puncholes)) * ninput) + .5);
+ return std::lround((d_puncsize / (double)(d_puncsize - d_puncholes)) * ninput);
}
int depuncture_bb_impl::fixed_rate_noutput_to_ninput(int noutput)
{
- return (int)((((d_puncsize - d_puncholes) / (double)(d_puncsize)) * noutput) + .5);
+ return std::lround(((d_puncsize - d_puncholes) / (double)(d_puncsize)) * noutput);
}
void depuncture_bb_impl::forecast(int noutput_items, gr_vector_int& ninput_items_required)
{
ninput_items_required[0] =
- (int)((((d_puncsize - d_puncholes) / (double)(d_puncsize)) * noutput_items) + .5);
+ std::lround(((d_puncsize - d_puncholes) / (double)(d_puncsize)) * noutput_items);
}
/*
@@ -138,7 +138,7 @@ int depuncture_bb_impl::general_work(int noutput_items,
% ((int)(((1.0/relative_rate()) * noutput_items) + .5)));
*/
- consume_each((int)(((1.0 / relative_rate()) * noutput_items) + .5));
+ consume_each(std::lround((1.0 / relative_rate()) * noutput_items));
return noutput_items;
}
diff --git a/gr-fec/lib/encoder_impl.cc b/gr-fec/lib/encoder_impl.cc
index 21b71e5e9..d99454a98 100644
--- a/gr-fec/lib/encoder_impl.cc
+++ b/gr-fec/lib/encoder_impl.cc
@@ -62,12 +62,12 @@ encoder_impl::~encoder_impl() {}
int encoder_impl::fixed_rate_ninput_to_noutput(int ninput)
{
- return (int)(0.5 + ninput * relative_rate());
+ return std::lround(ninput * relative_rate());
}
int encoder_impl::fixed_rate_noutput_to_ninput(int noutput)
{
- return (int)(0.5 + noutput / relative_rate());
+ return std::lround(noutput / relative_rate());
}
void encoder_impl::forecast(int noutput_items, gr_vector_int& ninput_items_required)
diff --git a/gr-fec/lib/puncture_bb_impl.cc b/gr-fec/lib/puncture_bb_impl.cc
index a365d6a69..0bfc15518 100644
--- a/gr-fec/lib/puncture_bb_impl.cc
+++ b/gr-fec/lib/puncture_bb_impl.cc
@@ -79,18 +79,18 @@ puncture_bb_impl::~puncture_bb_impl() {}
int puncture_bb_impl::fixed_rate_ninput_to_noutput(int ninput)
{
- return (int)((((d_puncsize - d_puncholes) / (double)(d_puncsize)) * ninput) + .5);
+ return std::lround(((d_puncsize - d_puncholes) / (double)(d_puncsize)) * ninput);
}
int puncture_bb_impl::fixed_rate_noutput_to_ninput(int noutput)
{
- return (int)(((d_puncsize / (double)(d_puncsize - d_puncholes)) * noutput) + .5);
+ return std::lround((d_puncsize / (double)(d_puncsize - d_puncholes)) * noutput);
}
void puncture_bb_impl::forecast(int noutput_items, gr_vector_int& ninput_items_required)
{
ninput_items_required[0] =
- (int)(((d_puncsize / (double)(d_puncsize - d_puncholes)) * noutput_items) + .5);
+ std::lround((d_puncsize / (double)(d_puncsize - d_puncholes)) * noutput_items);
}
/*
@@ -138,7 +138,7 @@ int puncture_bb_impl::general_work(int noutput_items,
% ((int)(((1.0/relative_rate()) * noutput_items) + .5)));
*/
- consume_each((int)(((1.0 / relative_rate()) * noutput_items) + .5));
+ consume_each(std::lround((1.0 / relative_rate()) * noutput_items));
return noutput_items;
}
diff --git a/gr-fec/lib/puncture_ff_impl.cc b/gr-fec/lib/puncture_ff_impl.cc
index c95288d69..c2c9cb5ca 100644
--- a/gr-fec/lib/puncture_ff_impl.cc
+++ b/gr-fec/lib/puncture_ff_impl.cc
@@ -79,18 +79,18 @@ puncture_ff_impl::~puncture_ff_impl() {}
int puncture_ff_impl::fixed_rate_ninput_to_noutput(int ninput)
{
- return (int)((((d_puncsize - d_puncholes) / (double)(d_puncsize)) * ninput) + .5);
+ return std::lround(((d_puncsize - d_puncholes) / (double)(d_puncsize)) * ninput);
}
int puncture_ff_impl::fixed_rate_noutput_to_ninput(int noutput)
{
- return (int)(((d_puncsize / (double)(d_puncsize - d_puncholes)) * noutput) + .5);
+ return std::lround((d_puncsize / (double)(d_puncsize - d_puncholes)) * noutput);
}
void puncture_ff_impl::forecast(int noutput_items, gr_vector_int& ninput_items_required)
{
ninput_items_required[0] =
- (int)(((d_puncsize / (double)(d_puncsize - d_puncholes)) * noutput_items) + .5);
+ std::lround((d_puncsize / (double)(d_puncsize - d_puncholes)) * noutput_items);
}
/*
@@ -138,7 +138,7 @@ int puncture_ff_impl::general_work(int noutput_items,
% ((int)(((1.0/relative_rate()) * noutput_items) + .5)));
*/
- consume_each((int)(((1.0 / relative_rate()) * noutput_items) + .5));
+ consume_each(std::lround((1.0 / relative_rate()) * noutput_items));
return noutput_items;
}
diff --git a/gr-fec/lib/tpc_decoder.cc b/gr-fec/lib/tpc_decoder.cc
index b8a1e74e8..707442b1d 100644
--- a/gr-fec/lib/tpc_decoder.cc
+++ b/gr-fec/lib/tpc_decoder.cc
@@ -703,7 +703,7 @@ float tpc_decoder::constant_log_map(const float delta1, const float delta2)
{
// Return maximum of delta1 and delta2
// and in correction value if |delta1-delta2| < TVALUE
- register float diff;
+ float diff;
diff = delta2 - delta1;
if (diff > TVALUE)