diff options
Diffstat (limited to 'gr-digital/lib/additive_scrambler_bb_impl.h')
-rw-r--r-- | gr-digital/lib/additive_scrambler_bb_impl.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/gr-digital/lib/additive_scrambler_bb_impl.h b/gr-digital/lib/additive_scrambler_bb_impl.h index b621637e67..a3b31c02bc 100644 --- a/gr-digital/lib/additive_scrambler_bb_impl.h +++ b/gr-digital/lib/additive_scrambler_bb_impl.h @@ -34,21 +34,27 @@ namespace gr { { private: digital::lfsr d_lfsr; - int d_count; - int d_bits; + int d_count; //!< Reset the LFSR after this many bytes (not bits) + int d_bytes; //!< Count the processed bytes int d_len; int d_seed; + int d_bits_per_byte; + pmt::pmt_t d_reset_tag_key; //!< Reset the LFSR when this tag is received + + int _get_next_reset_index(int noutput_items, int last_reset_index=-1); public: additive_scrambler_bb_impl(int mask, int seed, - int len, int count=0); + int len, int count=0, + int bits_per_byte=1, const std::string &reset_tag_key=""); ~additive_scrambler_bb_impl(); int mask() const; int seed() const; int len() const; int count() const; - + int bits_per_byte() { return d_bits_per_byte; }; + int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items); |