GNU Radio 3.7.1 C++ API
|
Scramble an input stream using an LFSR. More...
#include <additive_scrambler_bb.h>
Public Types | |
typedef boost::shared_ptr < additive_scrambler_bb > | sptr |
Public Member Functions | |
virtual int | mask () const =0 |
virtual int | seed () const =0 |
virtual int | len () const =0 |
virtual int | count () const =0 |
Static Public Member Functions | |
static sptr | make (int mask, int seed, int len, int count=0) |
Create additive scrambler. |
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.
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.
virtual int gr::digital::additive_scrambler_bb::count | ( | ) | const [pure virtual] |
virtual int gr::digital::additive_scrambler_bb::len | ( | ) | const [pure virtual] |
static sptr gr::digital::additive_scrambler_bb::make | ( | int | mask, |
int | seed, | ||
int | len, | ||
int | count = 0 |
||
) | [static] |
Create additive scrambler.
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 |
virtual int gr::digital::additive_scrambler_bb::mask | ( | ) | const [pure virtual] |
virtual int gr::digital::additive_scrambler_bb::seed | ( | ) | const [pure virtual] |