diff options
author | Solomon Tan <solomonbstoner@yahoo.com.au> | 2021-08-04 10:14:35 +0800 |
---|---|---|
committer | mormj <34754695+mormj@users.noreply.github.com> | 2021-08-23 06:56:49 -0400 |
commit | 0e7e21076f56aad0fed4816b6892f159c8f37190 (patch) | |
tree | ecd54095a45202d2ac39fe7471a9d575273e889b /gr-digital/python/digital | |
parent | 18689424bcb3581f29c5b18f85cd45107c6827b7 (diff) |
gr-digital: Make unpack optional for gmsk mod hier block
Allow the unpack option to be disabled for custom, non-byte-aligned bit
streams in gmsk mod, just like how it was done for gfsk in #4940.
Signed-off-by: Solomon Tan <solomonbstoner@yahoo.com.au>
Diffstat (limited to 'gr-digital/python/digital')
-rw-r--r-- | gr-digital/python/digital/gmsk.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gr-digital/python/digital/gmsk.py b/gr-digital/python/digital/gmsk.py index 5d41ea2d02..cf998391c6 100644 --- a/gr-digital/python/digital/gmsk.py +++ b/gr-digital/python/digital/gmsk.py @@ -28,6 +28,7 @@ _def_samples_per_symbol = 2 _def_bt = 0.35 _def_verbose = False _def_log = False +_def_do_unpack = True _def_gain_mu = None _def_mu = 0.5 @@ -62,7 +63,8 @@ class gmsk_mod(gr.hier_block2): samples_per_symbol=_def_samples_per_symbol, bt=_def_bt, verbose=_def_verbose, - log=_def_log): + log=_def_log, + do_unpack=_def_do_unpack): gr.hier_block2.__init__(self, "gmsk_mod", gr.io_signature(1, 1, gr.sizeof_char), # Input signature @@ -81,7 +83,6 @@ class gmsk_mod(gr.hier_block2): # Turn it into NRZ data. #self.nrz = digital.bytes_to_syms() - self.unpack = blocks.packed_to_unpacked_bb(1, gr.GR_MSB_FIRST) self.nrz = digital.chunks_to_symbols_bf([-1, 1], 1) # Form Gaussian filter @@ -107,7 +108,11 @@ class gmsk_mod(gr.hier_block2): self._setup_logging() # Connect & Initialize base class - self.connect(self, self.unpack, self.nrz, self.gaussian_filter, self.fmmod, self) + if do_unpack: + self.unpack = blocks.packed_to_unpacked_bb(1, gr.GR_MSB_FIRST) + self.connect(self, self.unpack, self.nrz, self.gaussian_filter, self.fmmod, self) + else: + self.connect(self, self.nrz, self.gaussian_filter, self.fmmod, self) def samples_per_symbol(self): return self._samples_per_symbol |