diff options
Diffstat (limited to 'gr-fec/python')
-rw-r--r-- | gr-fec/python/fec/bercurve_generator.py | 5 | ||||
-rw-r--r-- | gr-fec/python/fec/extended_decoder.py | 8 | ||||
-rw-r--r-- | gr-fec/python/fec/extended_encoder.py | 8 | ||||
-rw-r--r-- | gr-fec/python/fec/fec_test.py | 17 |
4 files changed, 28 insertions, 10 deletions
diff --git a/gr-fec/python/fec/bercurve_generator.py b/gr-fec/python/fec/bercurve_generator.py index ee51493152..e67d1e17c2 100644 --- a/gr-fec/python/fec/bercurve_generator.py +++ b/gr-fec/python/fec/bercurve_generator.py @@ -28,7 +28,7 @@ from fec_test import fec_test class bercurve_generator(gr.hier_block2): def __init__(self, encoder_list, decoder_list, esno=numpy.arange(0.0, 3.0, .25), - samp_rate=3200000, threading='capillary', puncpat='11'): + samp_rate=3200000, threading='capillary', puncpat='11', seed=0): gr.hier_block2.__init__( self, "ber_curve_generator", gr.io_signature(0, 0, 0), @@ -51,7 +51,8 @@ class bercurve_generator(gr.hier_block2): esno=esno[i], samp_rate=samp_rate, threading=threading, - puncpat=puncpat) + puncpat=puncpat, + seed=seed) self.ber_generators.append(ber_generator_temp); for i in range(0, len(esno)): diff --git a/gr-fec/python/fec/extended_decoder.py b/gr-fec/python/fec/extended_decoder.py index 17c9810013..072adcde07 100644 --- a/gr-fec/python/fec/extended_decoder.py +++ b/gr-fec/python/fec/extended_decoder.py @@ -86,10 +86,18 @@ class extended_decoder(gr.hier_block2): self.puncpat=puncpat self.flush=flush + if(type(decoder_obj_list[0]) == list): + gr.log.info("fec.extended_decoder: Parallelism must be 1.") + raise AttributeError + if type(lentagname) == str: if(lentagname.lower() == 'none'): lentagname = None + if lentagname and threading: + gr.log.info("fec.extended_decoder: Cannot use threading with tagged_stream mode.") + raise AttributeError + message_collector_connected=False ##anything going through the annihilator needs shifted, uchar vals diff --git a/gr-fec/python/fec/extended_encoder.py b/gr-fec/python/fec/extended_encoder.py index 01b9e09f2e..f511b53a2b 100644 --- a/gr-fec/python/fec/extended_encoder.py +++ b/gr-fec/python/fec/extended_encoder.py @@ -37,10 +37,18 @@ class extended_encoder(gr.hier_block2): self.blocks=[] self.puncpat=puncpat + if(type(encoder_obj_list[0]) == list): + gr.log.info("fec.extended_encoder: Parallelism must be 1.") + raise AttributeError + if type(lentagname) == str: if(lentagname.lower() == 'none'): lentagname = None + if lentagname and threading: + gr.log.info("fec.extended_decoder: Cannot use threading with tagged_stream mode.") + raise AttributeError + if fec.get_encoder_input_conversion(encoder_obj_list[0]) == "pack": self.blocks.append(blocks.pack_k_bits_bb(8)) diff --git a/gr-fec/python/fec/fec_test.py b/gr-fec/python/fec/fec_test.py index cacbb35f5e..0a7524af74 100644 --- a/gr-fec/python/fec/fec_test.py +++ b/gr-fec/python/fec/fec_test.py @@ -30,11 +30,11 @@ from extended_decoder import extended_decoder class fec_test(gr.hier_block2): def __init__(self, generic_encoder=0, generic_decoder=0, esno=0, - samp_rate=3200000, threading="capillary", puncpat='11'): - gr.hier_block2.__init__( - self, "fec_test", - gr.io_signature(1, 1, gr.sizeof_char*1), - gr.io_signature(2, 2, gr.sizeof_char*1)) + samp_rate=3200000, threading="capillary", puncpat='11', + seed=0): + gr.hier_block2.__init__(self, "fec_test", + gr.io_signature(1, 1, gr.sizeof_char*1), + gr.io_signature(2, 2, gr.sizeof_char*1)) self.generic_encoder = generic_encoder self.generic_decoder = generic_decoder @@ -50,16 +50,17 @@ class fec_test(gr.hier_block2): self.pack8 = blocks.pack_k_bits_bb(8) self.encoder = extended_encoder(encoder_obj_list=generic_encoder, - threading='capillary', + threading=threading, puncpat=puncpat) self.decoder = extended_decoder(decoder_obj_list=generic_decoder, - threading='capillary', + threading=threading, ann=None, puncpat=puncpat, integration_period=10000, rotator=None) noise = math.sqrt((10.0**(-esno/10.0))/2.0) - self.fastnoise = analog.fastnoise_source_f(analog.GR_GAUSSIAN, noise, 0, 8192) + #self.fastnoise = analog.fastnoise_source_f(analog.GR_GAUSSIAN, noise, seed, 8192) + self.fastnoise = analog.noise_source_f(analog.GR_GAUSSIAN, noise, seed) self.addnoise = blocks.add_ff(1) # Send packed input directly to the second output |