summaryrefslogtreecommitdiff
path: root/gr-digital/include/digital
diff options
context:
space:
mode:
authorTom Rondeau <trondeau@vt.edu>2012-08-13 22:38:45 -0400
committerTom Rondeau <trondeau@vt.edu>2012-08-13 22:38:45 -0400
commit509fddb30a70862b31b0488acfbbdf523b48af0d (patch)
tree4a2394338c6f5d7681d45d30603d0a34510d8e9d /gr-digital/include/digital
parent719ebae8fb75635f1291e21b74af69cbdefe4837 (diff)
digital: converted scrambler code to new style.
Diffstat (limited to 'gr-digital/include/digital')
-rw-r--r--gr-digital/include/digital/CMakeLists.txt4
-rw-r--r--gr-digital/include/digital/additive_scrambler_bb.h2
-rw-r--r--gr-digital/include/digital/descrambler_bb.h55
-rw-r--r--gr-digital/include/digital/scrambler_bb.h56
4 files changed, 114 insertions, 3 deletions
diff --git a/gr-digital/include/digital/CMakeLists.txt b/gr-digital/include/digital/CMakeLists.txt
index 231c130034..7d8545b185 100644
--- a/gr-digital/include/digital/CMakeLists.txt
+++ b/gr-digital/include/digital/CMakeLists.txt
@@ -91,7 +91,7 @@ install(FILES
correlate_access_code_tag_bb.h
costas_loop_cc.h
# crc32.h
-# descrambler_bb.h
+ descrambler_bb.h
diff_decoder_bb.h
diff_encoder_bb.h
diff_phasor_cc.h
@@ -118,7 +118,7 @@ install(FILES
pn_correlator_cc.h
# probe_density_b.h
# probe_mpsk_snr_est_c.h
-# scrambler_bb.h
+ scrambler_bb.h
# simple_framer.h
# simple_framer_sync.h
DESTINATION ${GR_INCLUDE_DIR}/gnuradio/digital
diff --git a/gr-digital/include/digital/additive_scrambler_bb.h b/gr-digital/include/digital/additive_scrambler_bb.h
index b5689b2744..345bd45dc8 100644
--- a/gr-digital/include/digital/additive_scrambler_bb.h
+++ b/gr-digital/include/digital/additive_scrambler_bb.h
@@ -59,7 +59,7 @@ namespace gr {
* processed, the shift register is reset to the seed value.
* This allows processing fixed length vectors of samples.
*/
- static sptr make(int mask, int seed, int len, int count);
+ static sptr make(int mask, int seed, int len, int count=0);
virtual int mask() const = 0;
virtual int seed() const = 0;
diff --git a/gr-digital/include/digital/descrambler_bb.h b/gr-digital/include/digital/descrambler_bb.h
new file mode 100644
index 0000000000..225a06b3c8
--- /dev/null
+++ b/gr-digital/include/digital/descrambler_bb.h
@@ -0,0 +1,55 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2008,2012 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * GNU Radio is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3, or (at your option)
+ * any later version.
+ *
+ * GNU Radio is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Radio; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef INCLUDED_GR_DESCRAMBLER_BB_H
+#define INCLUDED_GR_DESCRAMBLER_BB_H
+
+#include <digital/api.h>
+#include <gr_sync_block.h>
+
+namespace gr {
+ namespace digital {
+
+ /*!
+ * Descramble 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.
+ *
+ * \param mask Polynomial mask for LFSR
+ * \param seed Initial shift register contents
+ * \param len Shift register length
+ *
+ * \ingroup coding_blk
+ */
+ class DIGITAL_API descrambler_bb : virtual public gr_sync_block
+ {
+ public:
+ // gr::digital::descrambler_bb::sptr
+ typedef boost::shared_ptr<descrambler_bb> sptr;
+
+ static sptr make(int mask, int seed, int len);
+ };
+
+ } /* namespace digital */
+} /* namespace gr */
+
+#endif /* INCLUDED_GR_DESCRAMBLER_BB_H */
diff --git a/gr-digital/include/digital/scrambler_bb.h b/gr-digital/include/digital/scrambler_bb.h
new file mode 100644
index 0000000000..78db6e4b39
--- /dev/null
+++ b/gr-digital/include/digital/scrambler_bb.h
@@ -0,0 +1,56 @@
+/* -*- c++ -*- */
+/*
+ * Copyright 2008,2012 Free Software Foundation, Inc.
+ *
+ * This file is part of GNU Radio
+ *
+ * GNU Radio is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3, or (at your option)
+ * any later version.
+ *
+ * GNU Radio is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with GNU Radio; see the file COPYING. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef INCLUDED_GR_SCRAMBLER_BB_H
+#define INCLUDED_GR_SCRAMBLER_BB_H
+
+#include <digital/api.h>
+#include <gr_sync_block.h>
+
+namespace gr {
+ namespace digital {
+
+ /*!
+ * 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.
+ *
+ * \param mask Polynomial mask for LFSR
+ * \param seed Initial shift register contents
+ * \param len Shift register length
+ *
+ * \ingroup coding_blk
+ */
+
+ class DIGITAL_API scrambler_bb : virtual public gr_sync_block
+ {
+ public:
+ // gr::digital::scrambler_bb::sptr
+ typedef boost::shared_ptr<scrambler_bb> sptr;
+
+ static sptr make(int mask, int seed, int len);
+ };
+
+ } /* namespace digital */
+} /* namespace gr */
+
+#endif /* INCLUDED_GR_SCRAMBLER_BB_H */