summaryrefslogtreecommitdiff
path: root/gr-digital/lib/additive_scrambler_bb_impl.cc
diff options
context:
space:
mode:
authorMarcus Müller <mmueller@gnuradio.org>2019-08-07 21:45:12 +0200
committerMarcus Müller <marcus@hostalia.de>2019-08-09 23:04:28 +0200
commitf7bbf2c1d8d780294f3e016aff239ca35eb6516e (patch)
treee09ab6112e02b2215b2d59ac24d3d6ea2edac745 /gr-digital/lib/additive_scrambler_bb_impl.cc
parent78431dc6941e3acc67c858277dfe4a0ed583643c (diff)
Tree: clang-format without the include sorting
Diffstat (limited to 'gr-digital/lib/additive_scrambler_bb_impl.cc')
-rw-r--r--gr-digital/lib/additive_scrambler_bb_impl.cc219
1 files changed, 103 insertions, 116 deletions
diff --git a/gr-digital/lib/additive_scrambler_bb_impl.cc b/gr-digital/lib/additive_scrambler_bb_impl.cc
index 2d49126541..af87ebc6bb 100644
--- a/gr-digital/lib/additive_scrambler_bb_impl.cc
+++ b/gr-digital/lib/additive_scrambler_bb_impl.cc
@@ -28,133 +28,120 @@
#include <gnuradio/io_signature.h>
namespace gr {
- namespace digital {
-
- additive_scrambler_bb::sptr
- additive_scrambler_bb::make (int mask, int seed,
- int len, int count,
- int bits_per_byte,
- const std::string &reset_tag_key)
- {
- return gnuradio::get_initial_sptr(new additive_scrambler_bb_impl
- (mask, seed, len, count, bits_per_byte, reset_tag_key));
+namespace digital {
+
+additive_scrambler_bb::sptr additive_scrambler_bb::make(int mask,
+ int seed,
+ int len,
+ int count,
+ int bits_per_byte,
+ const std::string& reset_tag_key)
+{
+ return gnuradio::get_initial_sptr(new additive_scrambler_bb_impl(
+ mask, seed, len, count, bits_per_byte, reset_tag_key));
+}
+
+additive_scrambler_bb_impl::additive_scrambler_bb_impl(int mask,
+ int seed,
+ int len,
+ int count,
+ int bits_per_byte,
+ const std::string& reset_tag_key)
+ : sync_block("additive_scrambler_bb",
+ io_signature::make(1, 1, sizeof(unsigned char)),
+ io_signature::make(1, 1, sizeof(unsigned char))),
+ d_lfsr(mask, seed, len),
+ d_count(reset_tag_key.empty() ? count : -1),
+ d_bytes(0),
+ d_len(len),
+ d_seed(seed),
+ d_bits_per_byte(bits_per_byte),
+ d_reset_tag_key(pmt::string_to_symbol(reset_tag_key))
+{
+ if (d_count < -1) {
+ throw std::invalid_argument("count must be non-negative!");
}
-
- additive_scrambler_bb_impl::additive_scrambler_bb_impl(int mask,
- int seed,
- int len,
- int count,
- int bits_per_byte,
- const std::string &reset_tag_key)
- : sync_block("additive_scrambler_bb",
- io_signature::make(1, 1, sizeof(unsigned char)),
- io_signature::make(1, 1, sizeof(unsigned char))),
- d_lfsr(mask, seed, len),
- d_count(reset_tag_key.empty() ? count : -1),
- d_bytes(0), d_len(len), d_seed(seed),
- d_bits_per_byte(bits_per_byte), d_reset_tag_key(pmt::string_to_symbol(reset_tag_key))
- {
- if (d_count < -1) {
- throw std::invalid_argument("count must be non-negative!");
- }
- if (d_bits_per_byte < 1 || d_bits_per_byte > 8) {
- throw std::invalid_argument("bits_per_byte must be in [1, 8]");
- }
+ if (d_bits_per_byte < 1 || d_bits_per_byte > 8) {
+ throw std::invalid_argument("bits_per_byte must be in [1, 8]");
}
+}
- additive_scrambler_bb_impl::~additive_scrambler_bb_impl()
- {
- }
+additive_scrambler_bb_impl::~additive_scrambler_bb_impl() {}
- int
- additive_scrambler_bb_impl::mask() const
- {
- return d_lfsr.mask();
- }
+int additive_scrambler_bb_impl::mask() const { return d_lfsr.mask(); }
- int
- additive_scrambler_bb_impl::seed() const
- {
- return d_seed;
- }
+int additive_scrambler_bb_impl::seed() const { return d_seed; }
- int
- additive_scrambler_bb_impl::len() const
- {
- return d_len;
- }
+int additive_scrambler_bb_impl::len() const { return d_len; }
- int
- additive_scrambler_bb_impl::count() const
- {
- return d_count;
- }
+int additive_scrambler_bb_impl::count() const { return d_count; }
- int additive_scrambler_bb_impl::_get_next_reset_index(int noutput_items, int last_reset_index /* = -1 */)
- {
- int reset_index = noutput_items; // This is a value that gets never reached in the for loop
- if (d_count == -1) {
- std::vector<gr::tag_t> tags;
- get_tags_in_range(tags, 0, nitems_read(0), nitems_read(0)+noutput_items, d_reset_tag_key);
- for (unsigned i = 0; i < tags.size(); i++) {
- int reset_pos = tags[i].offset - nitems_read(0);
- if (reset_pos < reset_index && reset_pos > last_reset_index) {
- reset_index = reset_pos;
- }
- }
- } else {
- if (last_reset_index == -1) {
- reset_index = d_count - d_bytes;
- } else {
- reset_index = last_reset_index + d_count;
- }
- }
- return reset_index;
+int additive_scrambler_bb_impl::_get_next_reset_index(int noutput_items,
+ int last_reset_index /* = -1 */)
+{
+ int reset_index =
+ noutput_items; // This is a value that gets never reached in the for loop
+ if (d_count == -1) {
+ std::vector<gr::tag_t> tags;
+ get_tags_in_range(
+ tags, 0, nitems_read(0), nitems_read(0) + noutput_items, d_reset_tag_key);
+ for (unsigned i = 0; i < tags.size(); i++) {
+ int reset_pos = tags[i].offset - nitems_read(0);
+ if (reset_pos < reset_index && reset_pos > last_reset_index) {
+ reset_index = reset_pos;
+ }
+ }
+ } else {
+ if (last_reset_index == -1) {
+ reset_index = d_count - d_bytes;
+ } else {
+ reset_index = last_reset_index + d_count;
+ }
}
-
- int
- additive_scrambler_bb_impl::work(int noutput_items,
- gr_vector_const_void_star &input_items,
- gr_vector_void_star &output_items)
- {
- const unsigned char *in = (const unsigned char *)input_items[0];
- unsigned char *out = (unsigned char *)output_items[0];
- int reset_index = _get_next_reset_index(noutput_items);
-
- if (d_count >= 0) {
- for(int i = 0; i < noutput_items; i++) {
- unsigned char scramble_byte = 0x00;
- for (int k = 0; k < d_bits_per_byte; k++) {
- scramble_byte ^= (d_lfsr.next_bit() << k);
- }
- out[i] = in[i] ^ scramble_byte;
- d_bytes++;
- if (i == reset_index) {
- d_lfsr.reset();
- d_bytes = 0;
- reset_index = _get_next_reset_index(noutput_items, reset_index);
- }
+ return reset_index;
+}
+
+int additive_scrambler_bb_impl::work(int noutput_items,
+ gr_vector_const_void_star& input_items,
+ gr_vector_void_star& output_items)
+{
+ const unsigned char* in = (const unsigned char*)input_items[0];
+ unsigned char* out = (unsigned char*)output_items[0];
+ int reset_index = _get_next_reset_index(noutput_items);
+
+ if (d_count >= 0) {
+ for (int i = 0; i < noutput_items; i++) {
+ unsigned char scramble_byte = 0x00;
+ for (int k = 0; k < d_bits_per_byte; k++) {
+ scramble_byte ^= (d_lfsr.next_bit() << k);
+ }
+ out[i] = in[i] ^ scramble_byte;
+ d_bytes++;
+ if (i == reset_index) {
+ d_lfsr.reset();
+ d_bytes = 0;
+ reset_index = _get_next_reset_index(noutput_items, reset_index);
+ }
}
- } else {
- for(int i = 0; i < noutput_items; i++) {
- // Reset should occur at/before the item associated with the tag.
- if (i == reset_index) {
- d_lfsr.reset();
- d_bytes = 0;
- reset_index = _get_next_reset_index(noutput_items, reset_index);
- }
- unsigned char scramble_byte = 0x00;
- for (int k = 0; k < d_bits_per_byte; k++) {
- scramble_byte ^= (d_lfsr.next_bit() << k);
- }
- out[i] = in[i] ^ scramble_byte;
- d_bytes++;
+ } else {
+ for (int i = 0; i < noutput_items; i++) {
+ // Reset should occur at/before the item associated with the tag.
+ if (i == reset_index) {
+ d_lfsr.reset();
+ d_bytes = 0;
+ reset_index = _get_next_reset_index(noutput_items, reset_index);
+ }
+ unsigned char scramble_byte = 0x00;
+ for (int k = 0; k < d_bits_per_byte; k++) {
+ scramble_byte ^= (d_lfsr.next_bit() << k);
+ }
+ out[i] = in[i] ^ scramble_byte;
+ d_bytes++;
}
- }
-
- return noutput_items;
}
- } /* namespace digital */
-} /* namespace gr */
+ return noutput_items;
+}
+} /* namespace digital */
+} /* namespace gr */