GNU Radio 3.5.1 C++ API
|
#include <gr_additive_scrambler_bb.h>
Public Member Functions | |
int | work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) |
just like gr_block::general_work, only this arranges to call consume_each for you | |
Friends | |
GR_CORE_API gr_additive_scrambler_bb_sptr | gr_make_additive_scrambler_bb (int mask, int seed, int len, int count) |
Scramble an input stream using an LFSR. This block works on the LSB only of the input data stream, i.e., on an "unpacked binary" stream, and produces the same format on its output.
mask | Polynomial mask for LFSR |
seed | Initial shift register contents |
len | Shift register length |
count | Number of bits after which shift register is reset, 0=never |
The scrambler works by XORing the incoming bit stream by the output of the LFSR. Optionally, after 'count' bits have been processed, the shift register is reset to the seed value. This allows processing fixed length vectors of samples.
int gr_additive_scrambler_bb::work | ( | int | noutput_items, |
gr_vector_const_void_star & | input_items, | ||
gr_vector_void_star & | output_items | ||
) | [virtual] |
just like gr_block::general_work, only this arranges to call consume_each for you
The user must override work to define the signal processing code
Implements gr_sync_block.
GR_CORE_API gr_additive_scrambler_bb_sptr gr_make_additive_scrambler_bb | ( | int | mask, |
int | seed, | ||
int | len, | ||
int | count | ||
) | [friend] |