def __init__(self): gr.top_block.__init__(self, "Ber Curve Gen") Qt.QWidget.__init__(self) self.setWindowTitle("Ber Curve Gen") qtgui.util.check_set_qss() try: self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc')) except: pass self.top_scroll_layout = Qt.QVBoxLayout() self.setLayout(self.top_scroll_layout) self.top_scroll = Qt.QScrollArea() self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame) self.top_scroll_layout.addWidget(self.top_scroll) self.top_scroll.setWidgetResizable(True) self.top_widget = Qt.QWidget() self.top_scroll.setWidget(self.top_widget) self.top_layout = Qt.QVBoxLayout(self.top_widget) self.top_grid_layout = Qt.QGridLayout() self.top_layout.addLayout(self.top_grid_layout) self.settings = Qt.QSettings("GNU Radio", "ber_curve_gen") self.restoreGeometry(self.settings.value("geometry").toByteArray()) ################################################## # Variables ################################################## self.rate = rate = 2 self.polys = polys = [79, 109] self.k = k = 7 self.framebits = framebits = 4096 self.esno_0 = esno_0 = numpy.arange(0, 8, .5) self.samp_rate_0 = samp_rate_0 = 35000000 self.enc_tpc = enc_tpc = map((lambda b: map( (lambda a: fec.tpc_encoder_make( ([3]), ([43]), 26, 6, 9, 3)), range(0, 1))), range(0, len(esno_0))) self.enc_rep = enc_rep = map((lambda b: map( (lambda a: fec.repetition_encoder_make(framebits, 3)), range(0, 1)) ), range(0, len(esno_0))) self.enc_ldpc = enc_ldpc = map((lambda b: map( (lambda a: fec.ldpc_encoder_make( '/usr/share/gnuradio/fec/ldpc/271.127.3.112')), range(0, 1))), range(0, len(esno_0))) self.enc_dummy = enc_dummy = map((lambda b: map( (lambda a: fec.dummy_encoder_make(framebits)), range(0, 1))), range(0, len(esno_0))) self.enc_cc = enc_cc = map((lambda b: map( (lambda a: fec.cc_encoder_make(framebits, k, rate, ( polys), 0, fec.CC_STREAMING, False)), range(0, 1))), range(0, len(esno_0))) self.dec_tpc = dec_tpc = map((lambda b: map( (lambda a: fec.tpc_decoder_make( ([3]), ([43]), 26, 6, 9, 3, 6, 1)), range(0, 1))), range(0, len(esno_0))) self.dec_rep = dec_rep = map((lambda b: map( (lambda a: fec.repetition_decoder.make(framebits, 3, 0.5)), range(0, 1))), range(0, len(esno_0))) self.dec_ldpc = dec_ldpc = map((lambda b: map( (lambda a: fec.ldpc_decoder.make( '/usr/share/gnuradio/fec/ldpc/271.127.3.112', 0.5, 50)), range(0, 1))), range(0, len(esno_0))) self.dec_dummy = dec_dummy = map((lambda b: map( (lambda a: fec.dummy_decoder.make(framebits)), range(0, 1))), range(0, len(esno_0))) self.dec_cc = dec_cc = map((lambda b: map( (lambda a: fec.cc_decoder.make(framebits, k, rate, ( polys), 0, -1, fec.CC_STREAMING, False)), range(0, 1))), range(0, len(esno_0))) ################################################## # Blocks ################################################## self.qtgui_bercurve_sink_0 = qtgui.ber_sink_b( esno_0, #range of esnos 5, #number of curves 1000, #ensure at least -10, #cutoff [], #indiv. curve names ) self.qtgui_bercurve_sink_0.set_update_time(0.10) self.qtgui_bercurve_sink_0.set_y_axis(-10, 0) self.qtgui_bercurve_sink_0.set_x_axis(esno_0[0], esno_0[-1]) labels = [ 'None', 'Rep. (Rate=3)', 'CC (K=7, Rate=2)', 'LDPC', 'TPC', '', '', '', '', '' ] widths = [2, 2, 2, 2, 2, 1, 1, 1, 1, 1] colors = [ "blue", "red", "magenta", "dark red", "Dark Blue", "red", "red", "red", "red", "red" ] styles = [1, 2, 5, 5, 4, 0, 0, 0, 0, 0] markers = [0, 1, 0, 0, 0, 0, 0, 0, 0, 0] alphas = [1, 1, 1, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0] for i in xrange(5): if len(labels[i]) == 0: self.qtgui_bercurve_sink_0.set_line_label( i, "Data {0}".format(i)) else: self.qtgui_bercurve_sink_0.set_line_label(i, labels[i]) self.qtgui_bercurve_sink_0.set_line_width(i, widths[i]) self.qtgui_bercurve_sink_0.set_line_color(i, colors[i]) self.qtgui_bercurve_sink_0.set_line_style(i, styles[i]) self.qtgui_bercurve_sink_0.set_line_marker(i, markers[i]) self.qtgui_bercurve_sink_0.set_line_alpha(i, alphas[i]) self._qtgui_bercurve_sink_0_win = sip.wrapinstance( self.qtgui_bercurve_sink_0.pyqwidget(), Qt.QWidget) self.top_grid_layout.addWidget(self._qtgui_bercurve_sink_0_win) self.fec_bercurve_generator_0_1_0 = fec.bercurve_generator( enc_tpc, #size dec_tpc, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_1 = fec.bercurve_generator( enc_ldpc, #size dec_ldpc, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_0_0 = fec.bercurve_generator( enc_dummy, #size dec_dummy, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_0 = fec.bercurve_generator( enc_rep, #size dec_rep, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0 = fec.bercurve_generator( enc_cc, #size dec_cc, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) ################################################## # Connections ################################################## self.connect((self.fec_bercurve_generator_0, 0), (self.qtgui_bercurve_sink_0, 64)) self.connect((self.fec_bercurve_generator_0, 1), (self.qtgui_bercurve_sink_0, 65)) self.connect((self.fec_bercurve_generator_0, 2), (self.qtgui_bercurve_sink_0, 66)) self.connect((self.fec_bercurve_generator_0, 3), (self.qtgui_bercurve_sink_0, 67)) self.connect((self.fec_bercurve_generator_0, 4), (self.qtgui_bercurve_sink_0, 68)) self.connect((self.fec_bercurve_generator_0, 5), (self.qtgui_bercurve_sink_0, 69)) self.connect((self.fec_bercurve_generator_0, 6), (self.qtgui_bercurve_sink_0, 70)) self.connect((self.fec_bercurve_generator_0, 7), (self.qtgui_bercurve_sink_0, 71)) self.connect((self.fec_bercurve_generator_0, 8), (self.qtgui_bercurve_sink_0, 72)) self.connect((self.fec_bercurve_generator_0, 9), (self.qtgui_bercurve_sink_0, 73)) self.connect((self.fec_bercurve_generator_0, 10), (self.qtgui_bercurve_sink_0, 74)) self.connect((self.fec_bercurve_generator_0, 11), (self.qtgui_bercurve_sink_0, 75)) self.connect((self.fec_bercurve_generator_0, 12), (self.qtgui_bercurve_sink_0, 76)) self.connect((self.fec_bercurve_generator_0, 13), (self.qtgui_bercurve_sink_0, 77)) self.connect((self.fec_bercurve_generator_0, 14), (self.qtgui_bercurve_sink_0, 78)) self.connect((self.fec_bercurve_generator_0, 15), (self.qtgui_bercurve_sink_0, 79)) self.connect((self.fec_bercurve_generator_0, 16), (self.qtgui_bercurve_sink_0, 80)) self.connect((self.fec_bercurve_generator_0, 17), (self.qtgui_bercurve_sink_0, 81)) self.connect((self.fec_bercurve_generator_0, 18), (self.qtgui_bercurve_sink_0, 82)) self.connect((self.fec_bercurve_generator_0, 19), (self.qtgui_bercurve_sink_0, 83)) self.connect((self.fec_bercurve_generator_0, 20), (self.qtgui_bercurve_sink_0, 84)) self.connect((self.fec_bercurve_generator_0, 21), (self.qtgui_bercurve_sink_0, 85)) self.connect((self.fec_bercurve_generator_0, 22), (self.qtgui_bercurve_sink_0, 86)) self.connect((self.fec_bercurve_generator_0, 23), (self.qtgui_bercurve_sink_0, 87)) self.connect((self.fec_bercurve_generator_0, 24), (self.qtgui_bercurve_sink_0, 88)) self.connect((self.fec_bercurve_generator_0, 25), (self.qtgui_bercurve_sink_0, 89)) self.connect((self.fec_bercurve_generator_0, 26), (self.qtgui_bercurve_sink_0, 90)) self.connect((self.fec_bercurve_generator_0, 27), (self.qtgui_bercurve_sink_0, 91)) self.connect((self.fec_bercurve_generator_0, 28), (self.qtgui_bercurve_sink_0, 92)) self.connect((self.fec_bercurve_generator_0, 29), (self.qtgui_bercurve_sink_0, 93)) self.connect((self.fec_bercurve_generator_0, 30), (self.qtgui_bercurve_sink_0, 94)) self.connect((self.fec_bercurve_generator_0, 31), (self.qtgui_bercurve_sink_0, 95)) self.connect((self.fec_bercurve_generator_0_0, 0), (self.qtgui_bercurve_sink_0, 32)) self.connect((self.fec_bercurve_generator_0_0, 1), (self.qtgui_bercurve_sink_0, 33)) self.connect((self.fec_bercurve_generator_0_0, 2), (self.qtgui_bercurve_sink_0, 34)) self.connect((self.fec_bercurve_generator_0_0, 3), (self.qtgui_bercurve_sink_0, 35)) self.connect((self.fec_bercurve_generator_0_0, 4), (self.qtgui_bercurve_sink_0, 36)) self.connect((self.fec_bercurve_generator_0_0, 5), (self.qtgui_bercurve_sink_0, 37)) self.connect((self.fec_bercurve_generator_0_0, 6), (self.qtgui_bercurve_sink_0, 38)) self.connect((self.fec_bercurve_generator_0_0, 7), (self.qtgui_bercurve_sink_0, 39)) self.connect((self.fec_bercurve_generator_0_0, 8), (self.qtgui_bercurve_sink_0, 40)) self.connect((self.fec_bercurve_generator_0_0, 9), (self.qtgui_bercurve_sink_0, 41)) self.connect((self.fec_bercurve_generator_0_0, 10), (self.qtgui_bercurve_sink_0, 42)) self.connect((self.fec_bercurve_generator_0_0, 11), (self.qtgui_bercurve_sink_0, 43)) self.connect((self.fec_bercurve_generator_0_0, 12), (self.qtgui_bercurve_sink_0, 44)) self.connect((self.fec_bercurve_generator_0_0, 13), (self.qtgui_bercurve_sink_0, 45)) self.connect((self.fec_bercurve_generator_0_0, 14), (self.qtgui_bercurve_sink_0, 46)) self.connect((self.fec_bercurve_generator_0_0, 15), (self.qtgui_bercurve_sink_0, 47)) self.connect((self.fec_bercurve_generator_0_0, 16), (self.qtgui_bercurve_sink_0, 48)) self.connect((self.fec_bercurve_generator_0_0, 17), (self.qtgui_bercurve_sink_0, 49)) self.connect((self.fec_bercurve_generator_0_0, 18), (self.qtgui_bercurve_sink_0, 50)) self.connect((self.fec_bercurve_generator_0_0, 19), (self.qtgui_bercurve_sink_0, 51)) self.connect((self.fec_bercurve_generator_0_0, 20), (self.qtgui_bercurve_sink_0, 52)) self.connect((self.fec_bercurve_generator_0_0, 21), (self.qtgui_bercurve_sink_0, 53)) self.connect((self.fec_bercurve_generator_0_0, 22), (self.qtgui_bercurve_sink_0, 54)) self.connect((self.fec_bercurve_generator_0_0, 23), (self.qtgui_bercurve_sink_0, 55)) self.connect((self.fec_bercurve_generator_0_0, 24), (self.qtgui_bercurve_sink_0, 56)) self.connect((self.fec_bercurve_generator_0_0, 25), (self.qtgui_bercurve_sink_0, 57)) self.connect((self.fec_bercurve_generator_0_0, 26), (self.qtgui_bercurve_sink_0, 58)) self.connect((self.fec_bercurve_generator_0_0, 27), (self.qtgui_bercurve_sink_0, 59)) self.connect((self.fec_bercurve_generator_0_0, 28), (self.qtgui_bercurve_sink_0, 60)) self.connect((self.fec_bercurve_generator_0_0, 29), (self.qtgui_bercurve_sink_0, 61)) self.connect((self.fec_bercurve_generator_0_0, 30), (self.qtgui_bercurve_sink_0, 62)) self.connect((self.fec_bercurve_generator_0_0, 31), (self.qtgui_bercurve_sink_0, 63)) self.connect((self.fec_bercurve_generator_0_0_0, 0), (self.qtgui_bercurve_sink_0, 0)) self.connect((self.fec_bercurve_generator_0_0_0, 1), (self.qtgui_bercurve_sink_0, 1)) self.connect((self.fec_bercurve_generator_0_0_0, 2), (self.qtgui_bercurve_sink_0, 2)) self.connect((self.fec_bercurve_generator_0_0_0, 3), (self.qtgui_bercurve_sink_0, 3)) self.connect((self.fec_bercurve_generator_0_0_0, 4), (self.qtgui_bercurve_sink_0, 4)) self.connect((self.fec_bercurve_generator_0_0_0, 5), (self.qtgui_bercurve_sink_0, 5)) self.connect((self.fec_bercurve_generator_0_0_0, 6), (self.qtgui_bercurve_sink_0, 6)) self.connect((self.fec_bercurve_generator_0_0_0, 7), (self.qtgui_bercurve_sink_0, 7)) self.connect((self.fec_bercurve_generator_0_0_0, 8), (self.qtgui_bercurve_sink_0, 8)) self.connect((self.fec_bercurve_generator_0_0_0, 9), (self.qtgui_bercurve_sink_0, 9)) self.connect((self.fec_bercurve_generator_0_0_0, 10), (self.qtgui_bercurve_sink_0, 10)) self.connect((self.fec_bercurve_generator_0_0_0, 11), (self.qtgui_bercurve_sink_0, 11)) self.connect((self.fec_bercurve_generator_0_0_0, 12), (self.qtgui_bercurve_sink_0, 12)) self.connect((self.fec_bercurve_generator_0_0_0, 13), (self.qtgui_bercurve_sink_0, 13)) self.connect((self.fec_bercurve_generator_0_0_0, 14), (self.qtgui_bercurve_sink_0, 14)) self.connect((self.fec_bercurve_generator_0_0_0, 15), (self.qtgui_bercurve_sink_0, 15)) self.connect((self.fec_bercurve_generator_0_0_0, 16), (self.qtgui_bercurve_sink_0, 16)) self.connect((self.fec_bercurve_generator_0_0_0, 17), (self.qtgui_bercurve_sink_0, 17)) self.connect((self.fec_bercurve_generator_0_0_0, 18), (self.qtgui_bercurve_sink_0, 18)) self.connect((self.fec_bercurve_generator_0_0_0, 19), (self.qtgui_bercurve_sink_0, 19)) self.connect((self.fec_bercurve_generator_0_0_0, 20), (self.qtgui_bercurve_sink_0, 20)) self.connect((self.fec_bercurve_generator_0_0_0, 21), (self.qtgui_bercurve_sink_0, 21)) self.connect((self.fec_bercurve_generator_0_0_0, 22), (self.qtgui_bercurve_sink_0, 22)) self.connect((self.fec_bercurve_generator_0_0_0, 23), (self.qtgui_bercurve_sink_0, 23)) self.connect((self.fec_bercurve_generator_0_0_0, 24), (self.qtgui_bercurve_sink_0, 24)) self.connect((self.fec_bercurve_generator_0_0_0, 25), (self.qtgui_bercurve_sink_0, 25)) self.connect((self.fec_bercurve_generator_0_0_0, 26), (self.qtgui_bercurve_sink_0, 26)) self.connect((self.fec_bercurve_generator_0_0_0, 27), (self.qtgui_bercurve_sink_0, 27)) self.connect((self.fec_bercurve_generator_0_0_0, 28), (self.qtgui_bercurve_sink_0, 28)) self.connect((self.fec_bercurve_generator_0_0_0, 29), (self.qtgui_bercurve_sink_0, 29)) self.connect((self.fec_bercurve_generator_0_0_0, 30), (self.qtgui_bercurve_sink_0, 30)) self.connect((self.fec_bercurve_generator_0_0_0, 31), (self.qtgui_bercurve_sink_0, 31)) self.connect((self.fec_bercurve_generator_0_1, 0), (self.qtgui_bercurve_sink_0, 96)) self.connect((self.fec_bercurve_generator_0_1, 1), (self.qtgui_bercurve_sink_0, 97)) self.connect((self.fec_bercurve_generator_0_1, 2), (self.qtgui_bercurve_sink_0, 98)) self.connect((self.fec_bercurve_generator_0_1, 3), (self.qtgui_bercurve_sink_0, 99)) self.connect((self.fec_bercurve_generator_0_1, 4), (self.qtgui_bercurve_sink_0, 100)) self.connect((self.fec_bercurve_generator_0_1, 5), (self.qtgui_bercurve_sink_0, 101)) self.connect((self.fec_bercurve_generator_0_1, 6), (self.qtgui_bercurve_sink_0, 102)) self.connect((self.fec_bercurve_generator_0_1, 7), (self.qtgui_bercurve_sink_0, 103)) self.connect((self.fec_bercurve_generator_0_1, 8), (self.qtgui_bercurve_sink_0, 104)) self.connect((self.fec_bercurve_generator_0_1, 9), (self.qtgui_bercurve_sink_0, 105)) self.connect((self.fec_bercurve_generator_0_1, 10), (self.qtgui_bercurve_sink_0, 106)) self.connect((self.fec_bercurve_generator_0_1, 11), (self.qtgui_bercurve_sink_0, 107)) self.connect((self.fec_bercurve_generator_0_1, 12), (self.qtgui_bercurve_sink_0, 108)) self.connect((self.fec_bercurve_generator_0_1, 13), (self.qtgui_bercurve_sink_0, 109)) self.connect((self.fec_bercurve_generator_0_1, 14), (self.qtgui_bercurve_sink_0, 110)) self.connect((self.fec_bercurve_generator_0_1, 15), (self.qtgui_bercurve_sink_0, 111)) self.connect((self.fec_bercurve_generator_0_1, 16), (self.qtgui_bercurve_sink_0, 112)) self.connect((self.fec_bercurve_generator_0_1, 17), (self.qtgui_bercurve_sink_0, 113)) self.connect((self.fec_bercurve_generator_0_1, 18), (self.qtgui_bercurve_sink_0, 114)) self.connect((self.fec_bercurve_generator_0_1, 19), (self.qtgui_bercurve_sink_0, 115)) self.connect((self.fec_bercurve_generator_0_1, 20), (self.qtgui_bercurve_sink_0, 116)) self.connect((self.fec_bercurve_generator_0_1, 21), (self.qtgui_bercurve_sink_0, 117)) self.connect((self.fec_bercurve_generator_0_1, 22), (self.qtgui_bercurve_sink_0, 118)) self.connect((self.fec_bercurve_generator_0_1, 23), (self.qtgui_bercurve_sink_0, 119)) self.connect((self.fec_bercurve_generator_0_1, 24), (self.qtgui_bercurve_sink_0, 120)) self.connect((self.fec_bercurve_generator_0_1, 25), (self.qtgui_bercurve_sink_0, 121)) self.connect((self.fec_bercurve_generator_0_1, 26), (self.qtgui_bercurve_sink_0, 122)) self.connect((self.fec_bercurve_generator_0_1, 27), (self.qtgui_bercurve_sink_0, 123)) self.connect((self.fec_bercurve_generator_0_1, 28), (self.qtgui_bercurve_sink_0, 124)) self.connect((self.fec_bercurve_generator_0_1, 29), (self.qtgui_bercurve_sink_0, 125)) self.connect((self.fec_bercurve_generator_0_1, 30), (self.qtgui_bercurve_sink_0, 126)) self.connect((self.fec_bercurve_generator_0_1, 31), (self.qtgui_bercurve_sink_0, 127)) self.connect((self.fec_bercurve_generator_0_1_0, 0), (self.qtgui_bercurve_sink_0, 128)) self.connect((self.fec_bercurve_generator_0_1_0, 1), (self.qtgui_bercurve_sink_0, 129)) self.connect((self.fec_bercurve_generator_0_1_0, 2), (self.qtgui_bercurve_sink_0, 130)) self.connect((self.fec_bercurve_generator_0_1_0, 3), (self.qtgui_bercurve_sink_0, 131)) self.connect((self.fec_bercurve_generator_0_1_0, 4), (self.qtgui_bercurve_sink_0, 132)) self.connect((self.fec_bercurve_generator_0_1_0, 5), (self.qtgui_bercurve_sink_0, 133)) self.connect((self.fec_bercurve_generator_0_1_0, 6), (self.qtgui_bercurve_sink_0, 134)) self.connect((self.fec_bercurve_generator_0_1_0, 7), (self.qtgui_bercurve_sink_0, 135)) self.connect((self.fec_bercurve_generator_0_1_0, 8), (self.qtgui_bercurve_sink_0, 136)) self.connect((self.fec_bercurve_generator_0_1_0, 9), (self.qtgui_bercurve_sink_0, 137)) self.connect((self.fec_bercurve_generator_0_1_0, 10), (self.qtgui_bercurve_sink_0, 138)) self.connect((self.fec_bercurve_generator_0_1_0, 11), (self.qtgui_bercurve_sink_0, 139)) self.connect((self.fec_bercurve_generator_0_1_0, 12), (self.qtgui_bercurve_sink_0, 140)) self.connect((self.fec_bercurve_generator_0_1_0, 13), (self.qtgui_bercurve_sink_0, 141)) self.connect((self.fec_bercurve_generator_0_1_0, 14), (self.qtgui_bercurve_sink_0, 142)) self.connect((self.fec_bercurve_generator_0_1_0, 15), (self.qtgui_bercurve_sink_0, 143)) self.connect((self.fec_bercurve_generator_0_1_0, 16), (self.qtgui_bercurve_sink_0, 144)) self.connect((self.fec_bercurve_generator_0_1_0, 17), (self.qtgui_bercurve_sink_0, 145)) self.connect((self.fec_bercurve_generator_0_1_0, 18), (self.qtgui_bercurve_sink_0, 146)) self.connect((self.fec_bercurve_generator_0_1_0, 19), (self.qtgui_bercurve_sink_0, 147)) self.connect((self.fec_bercurve_generator_0_1_0, 20), (self.qtgui_bercurve_sink_0, 148)) self.connect((self.fec_bercurve_generator_0_1_0, 21), (self.qtgui_bercurve_sink_0, 149)) self.connect((self.fec_bercurve_generator_0_1_0, 22), (self.qtgui_bercurve_sink_0, 150)) self.connect((self.fec_bercurve_generator_0_1_0, 23), (self.qtgui_bercurve_sink_0, 151)) self.connect((self.fec_bercurve_generator_0_1_0, 24), (self.qtgui_bercurve_sink_0, 152)) self.connect((self.fec_bercurve_generator_0_1_0, 25), (self.qtgui_bercurve_sink_0, 153)) self.connect((self.fec_bercurve_generator_0_1_0, 26), (self.qtgui_bercurve_sink_0, 154)) self.connect((self.fec_bercurve_generator_0_1_0, 27), (self.qtgui_bercurve_sink_0, 155)) self.connect((self.fec_bercurve_generator_0_1_0, 28), (self.qtgui_bercurve_sink_0, 156)) self.connect((self.fec_bercurve_generator_0_1_0, 29), (self.qtgui_bercurve_sink_0, 157)) self.connect((self.fec_bercurve_generator_0_1_0, 30), (self.qtgui_bercurve_sink_0, 158)) self.connect((self.fec_bercurve_generator_0_1_0, 31), (self.qtgui_bercurve_sink_0, 159))
def __init__(self): gr.top_block.__init__(self, "Tpc Ber Curve Gen") Qt.QWidget.__init__(self) self.setWindowTitle("Tpc Ber Curve Gen") try: self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc')) except: pass self.top_scroll_layout = Qt.QVBoxLayout() self.setLayout(self.top_scroll_layout) self.top_scroll = Qt.QScrollArea() self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame) self.top_scroll_layout.addWidget(self.top_scroll) self.top_scroll.setWidgetResizable(True) self.top_widget = Qt.QWidget() self.top_scroll.setWidget(self.top_widget) self.top_layout = Qt.QVBoxLayout(self.top_widget) self.top_grid_layout = Qt.QGridLayout() self.top_layout.addLayout(self.top_grid_layout) self.settings = Qt.QSettings("GNU Radio", "tpc_ber_curve_gen") self.restoreGeometry(self.settings.value("geometry").toByteArray()) ################################################## # Variables ################################################## self.esno_0 = esno_0 = numpy.arange(0, 8, .5) self.samp_rate_0 = samp_rate_0 = 35000000 self.rate = rate = 2 self.polys = polys = [79, 109] self.k = k = 7 self.framebits = framebits = 4096 self.enc_tpc_4 = enc_tpc_4 = map( (lambda b: map( ( lambda a: fec.tpc_encoder_make(([3]), ([43]), 26, 6, 9, 3)), range(0,1) ) ), range(0,len(esno_0))); self.enc_tpc_3 = enc_tpc_3 = map( (lambda b: map( ( lambda a: fec.tpc_encoder_make(([3]), ([43]), 26, 6, 9, 3)), range(0,1) ) ), range(0,len(esno_0))); self.enc_tpc_2 = enc_tpc_2 = map( (lambda b: map( ( lambda a: fec.tpc_encoder_make(([3]), ([43]), 26, 6, 9, 3)), range(0,1) ) ), range(0,len(esno_0))); self.enc_tpc_1 = enc_tpc_1 = map( (lambda b: map( ( lambda a: fec.tpc_encoder_make(([3]), ([43]), 26, 6, 9, 3)), range(0,1) ) ), range(0,len(esno_0))); self.enc_tpc_0 = enc_tpc_0 = map( (lambda b: map( ( lambda a: fec.tpc_encoder_make(([3]), ([43]), 26, 6, 9, 3)), range(0,1) ) ), range(0,len(esno_0))); self.dec_tpc_4 = dec_tpc_4 = map( (lambda b: map( ( lambda a: fec.tpc_decoder_make(([3]), ([43]), 26, 6, 9, 3, 6, 4)), range(0,1) ) ), range(0,len(esno_0))); self.dec_tpc_3 = dec_tpc_3 = map( (lambda b: map( ( lambda a: fec.tpc_decoder_make(([3]), ([43]), 26, 6, 9, 3, 6, 3)), range(0,1) ) ), range(0,len(esno_0))); self.dec_tpc_2 = dec_tpc_2 = map( (lambda b: map( ( lambda a: fec.tpc_decoder_make(([3]), ([43]), 26, 6, 9, 3, 6, 2)), range(0,1) ) ), range(0,len(esno_0))); self.dec_tpc_1 = dec_tpc_1 = map( (lambda b: map( ( lambda a: fec.tpc_decoder_make(([3]), ([43]), 26, 6, 9, 3, 6, 1)), range(0,1) ) ), range(0,len(esno_0))); self.dec_tpc_0 = dec_tpc_0 = map( (lambda b: map( ( lambda a: fec.tpc_decoder_make(([3]), ([43]), 26, 6, 9, 3, 6, 0)), range(0,1) ) ), range(0,len(esno_0))); ################################################## # Blocks ################################################## self.qtgui_bercurve_sink_0 = qtgui.ber_sink_b( esno_0, #range of esnos 5, #number of curves 1000, #ensure at least -10, #cutoff [], #indiv. curve names ) self.qtgui_bercurve_sink_0.set_update_time(0.10) self.qtgui_bercurve_sink_0.set_y_axis(-10, 0) self.qtgui_bercurve_sink_0.set_x_axis(esno_0[0], esno_0[-1]) labels = ["Linear LOG-MAP", "MAX LOG-MAP", "Constant LOG-MAP", "LOG-MAP (LUT)", "LOG-MAP (C Correction)", "", "", "", "", ""] widths = [2, 2, 2, 2, 2, 1, 1, 1, 1, 1] colors = ["blue", "red", "magenta", "dark red", "Dark Blue", "red", "red", "red", "red", "red"] styles = [1, 2, 5, 5, 4, 0, 0, 0, 0, 0] markers = [0, 1, 0, 0, 0, 0, 0, 0, 0, 0] alphas = [1, 1, 1, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0] for i in xrange(5): if len(labels[i]) == 0: self.qtgui_bercurve_sink_0.set_line_label(i, "Data {0}".format(i)) else: self.qtgui_bercurve_sink_0.set_line_label(i, labels[i]) self.qtgui_bercurve_sink_0.set_line_width(i, widths[i]) self.qtgui_bercurve_sink_0.set_line_color(i, colors[i]) self.qtgui_bercurve_sink_0.set_line_style(i, styles[i]) self.qtgui_bercurve_sink_0.set_line_marker(i, markers[i]) self.qtgui_bercurve_sink_0.set_line_alpha(i, alphas[i]) self._qtgui_bercurve_sink_0_win = sip.wrapinstance(self.qtgui_bercurve_sink_0.pyqwidget(), Qt.QWidget) self.top_layout.addWidget(self._qtgui_bercurve_sink_0_win) self.fec_bercurve_generator_0_1_0 = fec.bercurve_generator( enc_tpc_4, #size dec_tpc_4, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_1 = fec.bercurve_generator( enc_tpc_3, #size dec_tpc_3, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_0_0 = fec.bercurve_generator( enc_tpc_0, #size dec_tpc_0, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_0 = fec.bercurve_generator( enc_tpc_1, #size dec_tpc_1, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0 = fec.bercurve_generator( enc_tpc_2, #size dec_tpc_2, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) ################################################## # Connections ################################################## self.connect((self.fec_bercurve_generator_0, 0), (self.qtgui_bercurve_sink_0, 64)) self.connect((self.fec_bercurve_generator_0, 1), (self.qtgui_bercurve_sink_0, 65)) self.connect((self.fec_bercurve_generator_0, 2), (self.qtgui_bercurve_sink_0, 66)) self.connect((self.fec_bercurve_generator_0, 3), (self.qtgui_bercurve_sink_0, 67)) self.connect((self.fec_bercurve_generator_0, 4), (self.qtgui_bercurve_sink_0, 68)) self.connect((self.fec_bercurve_generator_0, 5), (self.qtgui_bercurve_sink_0, 69)) self.connect((self.fec_bercurve_generator_0, 6), (self.qtgui_bercurve_sink_0, 70)) self.connect((self.fec_bercurve_generator_0, 7), (self.qtgui_bercurve_sink_0, 71)) self.connect((self.fec_bercurve_generator_0, 8), (self.qtgui_bercurve_sink_0, 72)) self.connect((self.fec_bercurve_generator_0, 9), (self.qtgui_bercurve_sink_0, 73)) self.connect((self.fec_bercurve_generator_0, 10), (self.qtgui_bercurve_sink_0, 74)) self.connect((self.fec_bercurve_generator_0, 11), (self.qtgui_bercurve_sink_0, 75)) self.connect((self.fec_bercurve_generator_0, 12), (self.qtgui_bercurve_sink_0, 76)) self.connect((self.fec_bercurve_generator_0, 13), (self.qtgui_bercurve_sink_0, 77)) self.connect((self.fec_bercurve_generator_0, 14), (self.qtgui_bercurve_sink_0, 78)) self.connect((self.fec_bercurve_generator_0, 15), (self.qtgui_bercurve_sink_0, 79)) self.connect((self.fec_bercurve_generator_0, 16), (self.qtgui_bercurve_sink_0, 80)) self.connect((self.fec_bercurve_generator_0, 17), (self.qtgui_bercurve_sink_0, 81)) self.connect((self.fec_bercurve_generator_0, 18), (self.qtgui_bercurve_sink_0, 82)) self.connect((self.fec_bercurve_generator_0, 19), (self.qtgui_bercurve_sink_0, 83)) self.connect((self.fec_bercurve_generator_0, 20), (self.qtgui_bercurve_sink_0, 84)) self.connect((self.fec_bercurve_generator_0, 21), (self.qtgui_bercurve_sink_0, 85)) self.connect((self.fec_bercurve_generator_0, 22), (self.qtgui_bercurve_sink_0, 86)) self.connect((self.fec_bercurve_generator_0, 23), (self.qtgui_bercurve_sink_0, 87)) self.connect((self.fec_bercurve_generator_0, 24), (self.qtgui_bercurve_sink_0, 88)) self.connect((self.fec_bercurve_generator_0, 25), (self.qtgui_bercurve_sink_0, 89)) self.connect((self.fec_bercurve_generator_0, 26), (self.qtgui_bercurve_sink_0, 90)) self.connect((self.fec_bercurve_generator_0, 27), (self.qtgui_bercurve_sink_0, 91)) self.connect((self.fec_bercurve_generator_0, 28), (self.qtgui_bercurve_sink_0, 92)) self.connect((self.fec_bercurve_generator_0, 29), (self.qtgui_bercurve_sink_0, 93)) self.connect((self.fec_bercurve_generator_0, 30), (self.qtgui_bercurve_sink_0, 94)) self.connect((self.fec_bercurve_generator_0, 31), (self.qtgui_bercurve_sink_0, 95)) self.connect((self.fec_bercurve_generator_0_0, 0), (self.qtgui_bercurve_sink_0, 32)) self.connect((self.fec_bercurve_generator_0_0, 1), (self.qtgui_bercurve_sink_0, 33)) self.connect((self.fec_bercurve_generator_0_0, 2), (self.qtgui_bercurve_sink_0, 34)) self.connect((self.fec_bercurve_generator_0_0, 3), (self.qtgui_bercurve_sink_0, 35)) self.connect((self.fec_bercurve_generator_0_0, 4), (self.qtgui_bercurve_sink_0, 36)) self.connect((self.fec_bercurve_generator_0_0, 5), (self.qtgui_bercurve_sink_0, 37)) self.connect((self.fec_bercurve_generator_0_0, 6), (self.qtgui_bercurve_sink_0, 38)) self.connect((self.fec_bercurve_generator_0_0, 7), (self.qtgui_bercurve_sink_0, 39)) self.connect((self.fec_bercurve_generator_0_0, 8), (self.qtgui_bercurve_sink_0, 40)) self.connect((self.fec_bercurve_generator_0_0, 9), (self.qtgui_bercurve_sink_0, 41)) self.connect((self.fec_bercurve_generator_0_0, 10), (self.qtgui_bercurve_sink_0, 42)) self.connect((self.fec_bercurve_generator_0_0, 11), (self.qtgui_bercurve_sink_0, 43)) self.connect((self.fec_bercurve_generator_0_0, 12), (self.qtgui_bercurve_sink_0, 44)) self.connect((self.fec_bercurve_generator_0_0, 13), (self.qtgui_bercurve_sink_0, 45)) self.connect((self.fec_bercurve_generator_0_0, 14), (self.qtgui_bercurve_sink_0, 46)) self.connect((self.fec_bercurve_generator_0_0, 15), (self.qtgui_bercurve_sink_0, 47)) self.connect((self.fec_bercurve_generator_0_0, 16), (self.qtgui_bercurve_sink_0, 48)) self.connect((self.fec_bercurve_generator_0_0, 17), (self.qtgui_bercurve_sink_0, 49)) self.connect((self.fec_bercurve_generator_0_0, 18), (self.qtgui_bercurve_sink_0, 50)) self.connect((self.fec_bercurve_generator_0_0, 19), (self.qtgui_bercurve_sink_0, 51)) self.connect((self.fec_bercurve_generator_0_0, 20), (self.qtgui_bercurve_sink_0, 52)) self.connect((self.fec_bercurve_generator_0_0, 21), (self.qtgui_bercurve_sink_0, 53)) self.connect((self.fec_bercurve_generator_0_0, 22), (self.qtgui_bercurve_sink_0, 54)) self.connect((self.fec_bercurve_generator_0_0, 23), (self.qtgui_bercurve_sink_0, 55)) self.connect((self.fec_bercurve_generator_0_0, 24), (self.qtgui_bercurve_sink_0, 56)) self.connect((self.fec_bercurve_generator_0_0, 25), (self.qtgui_bercurve_sink_0, 57)) self.connect((self.fec_bercurve_generator_0_0, 26), (self.qtgui_bercurve_sink_0, 58)) self.connect((self.fec_bercurve_generator_0_0, 27), (self.qtgui_bercurve_sink_0, 59)) self.connect((self.fec_bercurve_generator_0_0, 28), (self.qtgui_bercurve_sink_0, 60)) self.connect((self.fec_bercurve_generator_0_0, 29), (self.qtgui_bercurve_sink_0, 61)) self.connect((self.fec_bercurve_generator_0_0, 30), (self.qtgui_bercurve_sink_0, 62)) self.connect((self.fec_bercurve_generator_0_0, 31), (self.qtgui_bercurve_sink_0, 63)) self.connect((self.fec_bercurve_generator_0_0_0, 0), (self.qtgui_bercurve_sink_0, 0)) self.connect((self.fec_bercurve_generator_0_0_0, 1), (self.qtgui_bercurve_sink_0, 1)) self.connect((self.fec_bercurve_generator_0_0_0, 2), (self.qtgui_bercurve_sink_0, 2)) self.connect((self.fec_bercurve_generator_0_0_0, 3), (self.qtgui_bercurve_sink_0, 3)) self.connect((self.fec_bercurve_generator_0_0_0, 4), (self.qtgui_bercurve_sink_0, 4)) self.connect((self.fec_bercurve_generator_0_0_0, 5), (self.qtgui_bercurve_sink_0, 5)) self.connect((self.fec_bercurve_generator_0_0_0, 6), (self.qtgui_bercurve_sink_0, 6)) self.connect((self.fec_bercurve_generator_0_0_0, 7), (self.qtgui_bercurve_sink_0, 7)) self.connect((self.fec_bercurve_generator_0_0_0, 8), (self.qtgui_bercurve_sink_0, 8)) self.connect((self.fec_bercurve_generator_0_0_0, 9), (self.qtgui_bercurve_sink_0, 9)) self.connect((self.fec_bercurve_generator_0_0_0, 10), (self.qtgui_bercurve_sink_0, 10)) self.connect((self.fec_bercurve_generator_0_0_0, 11), (self.qtgui_bercurve_sink_0, 11)) self.connect((self.fec_bercurve_generator_0_0_0, 12), (self.qtgui_bercurve_sink_0, 12)) self.connect((self.fec_bercurve_generator_0_0_0, 13), (self.qtgui_bercurve_sink_0, 13)) self.connect((self.fec_bercurve_generator_0_0_0, 14), (self.qtgui_bercurve_sink_0, 14)) self.connect((self.fec_bercurve_generator_0_0_0, 15), (self.qtgui_bercurve_sink_0, 15)) self.connect((self.fec_bercurve_generator_0_0_0, 16), (self.qtgui_bercurve_sink_0, 16)) self.connect((self.fec_bercurve_generator_0_0_0, 17), (self.qtgui_bercurve_sink_0, 17)) self.connect((self.fec_bercurve_generator_0_0_0, 18), (self.qtgui_bercurve_sink_0, 18)) self.connect((self.fec_bercurve_generator_0_0_0, 19), (self.qtgui_bercurve_sink_0, 19)) self.connect((self.fec_bercurve_generator_0_0_0, 20), (self.qtgui_bercurve_sink_0, 20)) self.connect((self.fec_bercurve_generator_0_0_0, 21), (self.qtgui_bercurve_sink_0, 21)) self.connect((self.fec_bercurve_generator_0_0_0, 22), (self.qtgui_bercurve_sink_0, 22)) self.connect((self.fec_bercurve_generator_0_0_0, 23), (self.qtgui_bercurve_sink_0, 23)) self.connect((self.fec_bercurve_generator_0_0_0, 24), (self.qtgui_bercurve_sink_0, 24)) self.connect((self.fec_bercurve_generator_0_0_0, 25), (self.qtgui_bercurve_sink_0, 25)) self.connect((self.fec_bercurve_generator_0_0_0, 26), (self.qtgui_bercurve_sink_0, 26)) self.connect((self.fec_bercurve_generator_0_0_0, 27), (self.qtgui_bercurve_sink_0, 27)) self.connect((self.fec_bercurve_generator_0_0_0, 28), (self.qtgui_bercurve_sink_0, 28)) self.connect((self.fec_bercurve_generator_0_0_0, 29), (self.qtgui_bercurve_sink_0, 29)) self.connect((self.fec_bercurve_generator_0_0_0, 30), (self.qtgui_bercurve_sink_0, 30)) self.connect((self.fec_bercurve_generator_0_0_0, 31), (self.qtgui_bercurve_sink_0, 31)) self.connect((self.fec_bercurve_generator_0_1, 0), (self.qtgui_bercurve_sink_0, 96)) self.connect((self.fec_bercurve_generator_0_1, 1), (self.qtgui_bercurve_sink_0, 97)) self.connect((self.fec_bercurve_generator_0_1, 2), (self.qtgui_bercurve_sink_0, 98)) self.connect((self.fec_bercurve_generator_0_1, 3), (self.qtgui_bercurve_sink_0, 99)) self.connect((self.fec_bercurve_generator_0_1, 4), (self.qtgui_bercurve_sink_0, 100)) self.connect((self.fec_bercurve_generator_0_1, 5), (self.qtgui_bercurve_sink_0, 101)) self.connect((self.fec_bercurve_generator_0_1, 6), (self.qtgui_bercurve_sink_0, 102)) self.connect((self.fec_bercurve_generator_0_1, 7), (self.qtgui_bercurve_sink_0, 103)) self.connect((self.fec_bercurve_generator_0_1, 8), (self.qtgui_bercurve_sink_0, 104)) self.connect((self.fec_bercurve_generator_0_1, 9), (self.qtgui_bercurve_sink_0, 105)) self.connect((self.fec_bercurve_generator_0_1, 10), (self.qtgui_bercurve_sink_0, 106)) self.connect((self.fec_bercurve_generator_0_1, 11), (self.qtgui_bercurve_sink_0, 107)) self.connect((self.fec_bercurve_generator_0_1, 12), (self.qtgui_bercurve_sink_0, 108)) self.connect((self.fec_bercurve_generator_0_1, 13), (self.qtgui_bercurve_sink_0, 109)) self.connect((self.fec_bercurve_generator_0_1, 14), (self.qtgui_bercurve_sink_0, 110)) self.connect((self.fec_bercurve_generator_0_1, 15), (self.qtgui_bercurve_sink_0, 111)) self.connect((self.fec_bercurve_generator_0_1, 16), (self.qtgui_bercurve_sink_0, 112)) self.connect((self.fec_bercurve_generator_0_1, 17), (self.qtgui_bercurve_sink_0, 113)) self.connect((self.fec_bercurve_generator_0_1, 18), (self.qtgui_bercurve_sink_0, 114)) self.connect((self.fec_bercurve_generator_0_1, 19), (self.qtgui_bercurve_sink_0, 115)) self.connect((self.fec_bercurve_generator_0_1, 20), (self.qtgui_bercurve_sink_0, 116)) self.connect((self.fec_bercurve_generator_0_1, 21), (self.qtgui_bercurve_sink_0, 117)) self.connect((self.fec_bercurve_generator_0_1, 22), (self.qtgui_bercurve_sink_0, 118)) self.connect((self.fec_bercurve_generator_0_1, 23), (self.qtgui_bercurve_sink_0, 119)) self.connect((self.fec_bercurve_generator_0_1, 24), (self.qtgui_bercurve_sink_0, 120)) self.connect((self.fec_bercurve_generator_0_1, 25), (self.qtgui_bercurve_sink_0, 121)) self.connect((self.fec_bercurve_generator_0_1, 26), (self.qtgui_bercurve_sink_0, 122)) self.connect((self.fec_bercurve_generator_0_1, 27), (self.qtgui_bercurve_sink_0, 123)) self.connect((self.fec_bercurve_generator_0_1, 28), (self.qtgui_bercurve_sink_0, 124)) self.connect((self.fec_bercurve_generator_0_1, 29), (self.qtgui_bercurve_sink_0, 125)) self.connect((self.fec_bercurve_generator_0_1, 30), (self.qtgui_bercurve_sink_0, 126)) self.connect((self.fec_bercurve_generator_0_1, 31), (self.qtgui_bercurve_sink_0, 127)) self.connect((self.fec_bercurve_generator_0_1_0, 0), (self.qtgui_bercurve_sink_0, 128)) self.connect((self.fec_bercurve_generator_0_1_0, 1), (self.qtgui_bercurve_sink_0, 129)) self.connect((self.fec_bercurve_generator_0_1_0, 2), (self.qtgui_bercurve_sink_0, 130)) self.connect((self.fec_bercurve_generator_0_1_0, 3), (self.qtgui_bercurve_sink_0, 131)) self.connect((self.fec_bercurve_generator_0_1_0, 4), (self.qtgui_bercurve_sink_0, 132)) self.connect((self.fec_bercurve_generator_0_1_0, 5), (self.qtgui_bercurve_sink_0, 133)) self.connect((self.fec_bercurve_generator_0_1_0, 6), (self.qtgui_bercurve_sink_0, 134)) self.connect((self.fec_bercurve_generator_0_1_0, 7), (self.qtgui_bercurve_sink_0, 135)) self.connect((self.fec_bercurve_generator_0_1_0, 8), (self.qtgui_bercurve_sink_0, 136)) self.connect((self.fec_bercurve_generator_0_1_0, 9), (self.qtgui_bercurve_sink_0, 137)) self.connect((self.fec_bercurve_generator_0_1_0, 10), (self.qtgui_bercurve_sink_0, 138)) self.connect((self.fec_bercurve_generator_0_1_0, 11), (self.qtgui_bercurve_sink_0, 139)) self.connect((self.fec_bercurve_generator_0_1_0, 12), (self.qtgui_bercurve_sink_0, 140)) self.connect((self.fec_bercurve_generator_0_1_0, 13), (self.qtgui_bercurve_sink_0, 141)) self.connect((self.fec_bercurve_generator_0_1_0, 14), (self.qtgui_bercurve_sink_0, 142)) self.connect((self.fec_bercurve_generator_0_1_0, 15), (self.qtgui_bercurve_sink_0, 143)) self.connect((self.fec_bercurve_generator_0_1_0, 16), (self.qtgui_bercurve_sink_0, 144)) self.connect((self.fec_bercurve_generator_0_1_0, 17), (self.qtgui_bercurve_sink_0, 145)) self.connect((self.fec_bercurve_generator_0_1_0, 18), (self.qtgui_bercurve_sink_0, 146)) self.connect((self.fec_bercurve_generator_0_1_0, 19), (self.qtgui_bercurve_sink_0, 147)) self.connect((self.fec_bercurve_generator_0_1_0, 20), (self.qtgui_bercurve_sink_0, 148)) self.connect((self.fec_bercurve_generator_0_1_0, 21), (self.qtgui_bercurve_sink_0, 149)) self.connect((self.fec_bercurve_generator_0_1_0, 22), (self.qtgui_bercurve_sink_0, 150)) self.connect((self.fec_bercurve_generator_0_1_0, 23), (self.qtgui_bercurve_sink_0, 151)) self.connect((self.fec_bercurve_generator_0_1_0, 24), (self.qtgui_bercurve_sink_0, 152)) self.connect((self.fec_bercurve_generator_0_1_0, 25), (self.qtgui_bercurve_sink_0, 153)) self.connect((self.fec_bercurve_generator_0_1_0, 26), (self.qtgui_bercurve_sink_0, 154)) self.connect((self.fec_bercurve_generator_0_1_0, 27), (self.qtgui_bercurve_sink_0, 155)) self.connect((self.fec_bercurve_generator_0_1_0, 28), (self.qtgui_bercurve_sink_0, 156)) self.connect((self.fec_bercurve_generator_0_1_0, 29), (self.qtgui_bercurve_sink_0, 157)) self.connect((self.fec_bercurve_generator_0_1_0, 30), (self.qtgui_bercurve_sink_0, 158)) self.connect((self.fec_bercurve_generator_0_1_0, 31), (self.qtgui_bercurve_sink_0, 159))
def __init__(self): gr.top_block.__init__(self, "Ber Curve Gen Ldpc") Qt.QWidget.__init__(self) self.setWindowTitle("Ber Curve Gen Ldpc") qtgui.util.check_set_qss() try: self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc')) except: pass self.top_scroll_layout = Qt.QVBoxLayout() self.setLayout(self.top_scroll_layout) self.top_scroll = Qt.QScrollArea() self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame) self.top_scroll_layout.addWidget(self.top_scroll) self.top_scroll.setWidgetResizable(True) self.top_widget = Qt.QWidget() self.top_scroll.setWidget(self.top_widget) self.top_layout = Qt.QVBoxLayout(self.top_widget) self.top_grid_layout = Qt.QGridLayout() self.top_layout.addLayout(self.top_grid_layout) self.settings = Qt.QSettings("GNU Radio", "ber_curve_gen_ldpc") self.restoreGeometry(self.settings.value("geometry").toByteArray()) ################################################## # Variables ################################################## self.framebits = framebits = 4096 self.esno_0 = esno_0 = numpy.arange(0, 8.1, .5) self.H = H = fec.ldpc_H_matrix( gr.prefix() + "/share/gnuradio/fec/ldpc/n_1800_k_0902_gap_28.alist", 28) self.G = G = fec.ldpc_G_matrix( gr.prefix() + "/share/gnuradio/fec/ldpc/simple_g_matrix.alist") self.samp_rate_0 = samp_rate_0 = 35000000 self.k = k = 7 self.enc_rep = enc_rep = map((lambda b: map( (lambda a: fec.repetition_encoder_make(framebits, 3)), range(0, 1)) ), range(0, len(esno_0))) self.enc_ldpc_G = enc_ldpc_G = map((lambda b: map( (lambda a: fec.ldpc_gen_mtrx_encoder_make(G)), range(0, 1))), range(0, len(esno_0))) self.enc_ldpc = enc_ldpc = map((lambda b: map( (lambda a: fec.ldpc_par_mtrx_encoder_make_H(H)), range(0, 1))), range(0, len(esno_0))) self.enc_dummy = enc_dummy = map((lambda b: map( (lambda a: fec.dummy_encoder_make(framebits)), range(0, 1))), range(0, len(esno_0))) self.dec_rep = dec_rep = map((lambda b: map( (lambda a: fec.repetition_decoder.make(framebits, 3, 0.5)), range(0, 1))), range(0, len(esno_0))) self.dec_ldpc_G = dec_ldpc_G = map((lambda b: map( (lambda a: fec.ldpc_bit_flip_decoder.make(G.get_base_sptr(), 100)), range(0, 1))), range(0, len(esno_0))) self.dec_ldpc = dec_ldpc = map((lambda b: map( (lambda a: fec.ldpc_bit_flip_decoder.make(H.get_base_sptr(), 100)), range(0, 1))), range(0, len(esno_0))) self.dec_dummy = dec_dummy = map((lambda b: map( (lambda a: fec.dummy_decoder.make(framebits)), range(0, 1))), range(0, len(esno_0))) ################################################## # Blocks ################################################## self.qtgui_bercurve_sink_0 = qtgui.ber_sink_b( esno_0, #range of esnos 4, #number of curves 1000, #ensure at least -10, #cutoff [], #indiv. curve names ) self.qtgui_bercurve_sink_0.set_update_time(0.10) self.qtgui_bercurve_sink_0.set_y_axis(-10, 0) self.qtgui_bercurve_sink_0.set_x_axis(esno_0[0], esno_0[-1]) labels = [ 'None', 'Rep. (Rate=3)', 'LDPC (H matrix)', 'LDPC (Gen. matrix)', '', '', '', '', '', '' ] widths = [2, 2, 2, 2, 1, 1, 1, 1, 1, 1] colors = [ "black", "blue", "green", "red", "red", "red", "red", "red", "red", "red" ] styles = [3, 2, 4, 1, 0, 0, 0, 0, 0, 0] markers = [8, 1, 2, 0, 0, 0, 0, 0, 0, 0] alphas = [1, 1, 1, 1, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0] for i in xrange(4): if len(labels[i]) == 0: self.qtgui_bercurve_sink_0.set_line_label( i, "Data {0}".format(i)) else: self.qtgui_bercurve_sink_0.set_line_label(i, labels[i]) self.qtgui_bercurve_sink_0.set_line_width(i, widths[i]) self.qtgui_bercurve_sink_0.set_line_color(i, colors[i]) self.qtgui_bercurve_sink_0.set_line_style(i, styles[i]) self.qtgui_bercurve_sink_0.set_line_marker(i, markers[i]) self.qtgui_bercurve_sink_0.set_line_alpha(i, alphas[i]) self._qtgui_bercurve_sink_0_win = sip.wrapinstance( self.qtgui_bercurve_sink_0.pyqwidget(), Qt.QWidget) self.top_grid_layout.addWidget(self._qtgui_bercurve_sink_0_win) self.fec_bercurve_generator_1 = fec.bercurve_generator( enc_ldpc, #size dec_ldpc, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_0_0 = fec.bercurve_generator( enc_dummy, #size dec_dummy, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_0 = fec.bercurve_generator( enc_rep, #size dec_rep, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0 = fec.bercurve_generator( enc_ldpc_G, #size dec_ldpc_G, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) ################################################## # Connections ################################################## self.connect((self.fec_bercurve_generator_0, 0), (self.qtgui_bercurve_sink_0, 102)) self.connect((self.fec_bercurve_generator_0, 1), (self.qtgui_bercurve_sink_0, 103)) self.connect((self.fec_bercurve_generator_0, 2), (self.qtgui_bercurve_sink_0, 104)) self.connect((self.fec_bercurve_generator_0, 3), (self.qtgui_bercurve_sink_0, 105)) self.connect((self.fec_bercurve_generator_0, 4), (self.qtgui_bercurve_sink_0, 106)) self.connect((self.fec_bercurve_generator_0, 5), (self.qtgui_bercurve_sink_0, 107)) self.connect((self.fec_bercurve_generator_0, 6), (self.qtgui_bercurve_sink_0, 108)) self.connect((self.fec_bercurve_generator_0, 7), (self.qtgui_bercurve_sink_0, 109)) self.connect((self.fec_bercurve_generator_0, 8), (self.qtgui_bercurve_sink_0, 110)) self.connect((self.fec_bercurve_generator_0, 9), (self.qtgui_bercurve_sink_0, 111)) self.connect((self.fec_bercurve_generator_0, 10), (self.qtgui_bercurve_sink_0, 112)) self.connect((self.fec_bercurve_generator_0, 11), (self.qtgui_bercurve_sink_0, 113)) self.connect((self.fec_bercurve_generator_0, 12), (self.qtgui_bercurve_sink_0, 114)) self.connect((self.fec_bercurve_generator_0, 13), (self.qtgui_bercurve_sink_0, 115)) self.connect((self.fec_bercurve_generator_0, 14), (self.qtgui_bercurve_sink_0, 116)) self.connect((self.fec_bercurve_generator_0, 15), (self.qtgui_bercurve_sink_0, 117)) self.connect((self.fec_bercurve_generator_0, 16), (self.qtgui_bercurve_sink_0, 118)) self.connect((self.fec_bercurve_generator_0, 17), (self.qtgui_bercurve_sink_0, 119)) self.connect((self.fec_bercurve_generator_0, 18), (self.qtgui_bercurve_sink_0, 120)) self.connect((self.fec_bercurve_generator_0, 19), (self.qtgui_bercurve_sink_0, 121)) self.connect((self.fec_bercurve_generator_0, 20), (self.qtgui_bercurve_sink_0, 122)) self.connect((self.fec_bercurve_generator_0, 21), (self.qtgui_bercurve_sink_0, 123)) self.connect((self.fec_bercurve_generator_0, 22), (self.qtgui_bercurve_sink_0, 124)) self.connect((self.fec_bercurve_generator_0, 23), (self.qtgui_bercurve_sink_0, 125)) self.connect((self.fec_bercurve_generator_0, 24), (self.qtgui_bercurve_sink_0, 126)) self.connect((self.fec_bercurve_generator_0, 25), (self.qtgui_bercurve_sink_0, 127)) self.connect((self.fec_bercurve_generator_0, 26), (self.qtgui_bercurve_sink_0, 128)) self.connect((self.fec_bercurve_generator_0, 27), (self.qtgui_bercurve_sink_0, 129)) self.connect((self.fec_bercurve_generator_0, 28), (self.qtgui_bercurve_sink_0, 130)) self.connect((self.fec_bercurve_generator_0, 29), (self.qtgui_bercurve_sink_0, 131)) self.connect((self.fec_bercurve_generator_0, 30), (self.qtgui_bercurve_sink_0, 132)) self.connect((self.fec_bercurve_generator_0, 31), (self.qtgui_bercurve_sink_0, 133)) self.connect((self.fec_bercurve_generator_0, 32), (self.qtgui_bercurve_sink_0, 134)) self.connect((self.fec_bercurve_generator_0, 33), (self.qtgui_bercurve_sink_0, 135)) self.connect((self.fec_bercurve_generator_0_0, 0), (self.qtgui_bercurve_sink_0, 34)) self.connect((self.fec_bercurve_generator_0_0, 1), (self.qtgui_bercurve_sink_0, 35)) self.connect((self.fec_bercurve_generator_0_0, 2), (self.qtgui_bercurve_sink_0, 36)) self.connect((self.fec_bercurve_generator_0_0, 3), (self.qtgui_bercurve_sink_0, 37)) self.connect((self.fec_bercurve_generator_0_0, 4), (self.qtgui_bercurve_sink_0, 38)) self.connect((self.fec_bercurve_generator_0_0, 5), (self.qtgui_bercurve_sink_0, 39)) self.connect((self.fec_bercurve_generator_0_0, 6), (self.qtgui_bercurve_sink_0, 40)) self.connect((self.fec_bercurve_generator_0_0, 7), (self.qtgui_bercurve_sink_0, 41)) self.connect((self.fec_bercurve_generator_0_0, 8), (self.qtgui_bercurve_sink_0, 42)) self.connect((self.fec_bercurve_generator_0_0, 9), (self.qtgui_bercurve_sink_0, 43)) self.connect((self.fec_bercurve_generator_0_0, 10), (self.qtgui_bercurve_sink_0, 44)) self.connect((self.fec_bercurve_generator_0_0, 11), (self.qtgui_bercurve_sink_0, 45)) self.connect((self.fec_bercurve_generator_0_0, 12), (self.qtgui_bercurve_sink_0, 46)) self.connect((self.fec_bercurve_generator_0_0, 13), (self.qtgui_bercurve_sink_0, 47)) self.connect((self.fec_bercurve_generator_0_0, 14), (self.qtgui_bercurve_sink_0, 48)) self.connect((self.fec_bercurve_generator_0_0, 15), (self.qtgui_bercurve_sink_0, 49)) self.connect((self.fec_bercurve_generator_0_0, 16), (self.qtgui_bercurve_sink_0, 50)) self.connect((self.fec_bercurve_generator_0_0, 17), (self.qtgui_bercurve_sink_0, 51)) self.connect((self.fec_bercurve_generator_0_0, 18), (self.qtgui_bercurve_sink_0, 52)) self.connect((self.fec_bercurve_generator_0_0, 19), (self.qtgui_bercurve_sink_0, 53)) self.connect((self.fec_bercurve_generator_0_0, 20), (self.qtgui_bercurve_sink_0, 54)) self.connect((self.fec_bercurve_generator_0_0, 21), (self.qtgui_bercurve_sink_0, 55)) self.connect((self.fec_bercurve_generator_0_0, 22), (self.qtgui_bercurve_sink_0, 56)) self.connect((self.fec_bercurve_generator_0_0, 23), (self.qtgui_bercurve_sink_0, 57)) self.connect((self.fec_bercurve_generator_0_0, 24), (self.qtgui_bercurve_sink_0, 58)) self.connect((self.fec_bercurve_generator_0_0, 25), (self.qtgui_bercurve_sink_0, 59)) self.connect((self.fec_bercurve_generator_0_0, 26), (self.qtgui_bercurve_sink_0, 60)) self.connect((self.fec_bercurve_generator_0_0, 27), (self.qtgui_bercurve_sink_0, 61)) self.connect((self.fec_bercurve_generator_0_0, 28), (self.qtgui_bercurve_sink_0, 62)) self.connect((self.fec_bercurve_generator_0_0, 29), (self.qtgui_bercurve_sink_0, 63)) self.connect((self.fec_bercurve_generator_0_0, 30), (self.qtgui_bercurve_sink_0, 64)) self.connect((self.fec_bercurve_generator_0_0, 31), (self.qtgui_bercurve_sink_0, 65)) self.connect((self.fec_bercurve_generator_0_0, 32), (self.qtgui_bercurve_sink_0, 66)) self.connect((self.fec_bercurve_generator_0_0, 33), (self.qtgui_bercurve_sink_0, 67)) self.connect((self.fec_bercurve_generator_0_0_0, 0), (self.qtgui_bercurve_sink_0, 0)) self.connect((self.fec_bercurve_generator_0_0_0, 1), (self.qtgui_bercurve_sink_0, 1)) self.connect((self.fec_bercurve_generator_0_0_0, 2), (self.qtgui_bercurve_sink_0, 2)) self.connect((self.fec_bercurve_generator_0_0_0, 3), (self.qtgui_bercurve_sink_0, 3)) self.connect((self.fec_bercurve_generator_0_0_0, 4), (self.qtgui_bercurve_sink_0, 4)) self.connect((self.fec_bercurve_generator_0_0_0, 5), (self.qtgui_bercurve_sink_0, 5)) self.connect((self.fec_bercurve_generator_0_0_0, 6), (self.qtgui_bercurve_sink_0, 6)) self.connect((self.fec_bercurve_generator_0_0_0, 7), (self.qtgui_bercurve_sink_0, 7)) self.connect((self.fec_bercurve_generator_0_0_0, 8), (self.qtgui_bercurve_sink_0, 8)) self.connect((self.fec_bercurve_generator_0_0_0, 9), (self.qtgui_bercurve_sink_0, 9)) self.connect((self.fec_bercurve_generator_0_0_0, 10), (self.qtgui_bercurve_sink_0, 10)) self.connect((self.fec_bercurve_generator_0_0_0, 11), (self.qtgui_bercurve_sink_0, 11)) self.connect((self.fec_bercurve_generator_0_0_0, 12), (self.qtgui_bercurve_sink_0, 12)) self.connect((self.fec_bercurve_generator_0_0_0, 13), (self.qtgui_bercurve_sink_0, 13)) self.connect((self.fec_bercurve_generator_0_0_0, 14), (self.qtgui_bercurve_sink_0, 14)) self.connect((self.fec_bercurve_generator_0_0_0, 15), (self.qtgui_bercurve_sink_0, 15)) self.connect((self.fec_bercurve_generator_0_0_0, 16), (self.qtgui_bercurve_sink_0, 16)) self.connect((self.fec_bercurve_generator_0_0_0, 17), (self.qtgui_bercurve_sink_0, 17)) self.connect((self.fec_bercurve_generator_0_0_0, 18), (self.qtgui_bercurve_sink_0, 18)) self.connect((self.fec_bercurve_generator_0_0_0, 19), (self.qtgui_bercurve_sink_0, 19)) self.connect((self.fec_bercurve_generator_0_0_0, 20), (self.qtgui_bercurve_sink_0, 20)) self.connect((self.fec_bercurve_generator_0_0_0, 21), (self.qtgui_bercurve_sink_0, 21)) self.connect((self.fec_bercurve_generator_0_0_0, 22), (self.qtgui_bercurve_sink_0, 22)) self.connect((self.fec_bercurve_generator_0_0_0, 23), (self.qtgui_bercurve_sink_0, 23)) self.connect((self.fec_bercurve_generator_0_0_0, 24), (self.qtgui_bercurve_sink_0, 24)) self.connect((self.fec_bercurve_generator_0_0_0, 25), (self.qtgui_bercurve_sink_0, 25)) self.connect((self.fec_bercurve_generator_0_0_0, 26), (self.qtgui_bercurve_sink_0, 26)) self.connect((self.fec_bercurve_generator_0_0_0, 27), (self.qtgui_bercurve_sink_0, 27)) self.connect((self.fec_bercurve_generator_0_0_0, 28), (self.qtgui_bercurve_sink_0, 28)) self.connect((self.fec_bercurve_generator_0_0_0, 29), (self.qtgui_bercurve_sink_0, 29)) self.connect((self.fec_bercurve_generator_0_0_0, 30), (self.qtgui_bercurve_sink_0, 30)) self.connect((self.fec_bercurve_generator_0_0_0, 31), (self.qtgui_bercurve_sink_0, 31)) self.connect((self.fec_bercurve_generator_0_0_0, 32), (self.qtgui_bercurve_sink_0, 32)) self.connect((self.fec_bercurve_generator_0_0_0, 33), (self.qtgui_bercurve_sink_0, 33)) self.connect((self.fec_bercurve_generator_1, 0), (self.qtgui_bercurve_sink_0, 68)) self.connect((self.fec_bercurve_generator_1, 1), (self.qtgui_bercurve_sink_0, 69)) self.connect((self.fec_bercurve_generator_1, 2), (self.qtgui_bercurve_sink_0, 70)) self.connect((self.fec_bercurve_generator_1, 3), (self.qtgui_bercurve_sink_0, 71)) self.connect((self.fec_bercurve_generator_1, 4), (self.qtgui_bercurve_sink_0, 72)) self.connect((self.fec_bercurve_generator_1, 5), (self.qtgui_bercurve_sink_0, 73)) self.connect((self.fec_bercurve_generator_1, 6), (self.qtgui_bercurve_sink_0, 74)) self.connect((self.fec_bercurve_generator_1, 7), (self.qtgui_bercurve_sink_0, 75)) self.connect((self.fec_bercurve_generator_1, 8), (self.qtgui_bercurve_sink_0, 76)) self.connect((self.fec_bercurve_generator_1, 9), (self.qtgui_bercurve_sink_0, 77)) self.connect((self.fec_bercurve_generator_1, 10), (self.qtgui_bercurve_sink_0, 78)) self.connect((self.fec_bercurve_generator_1, 11), (self.qtgui_bercurve_sink_0, 79)) self.connect((self.fec_bercurve_generator_1, 12), (self.qtgui_bercurve_sink_0, 80)) self.connect((self.fec_bercurve_generator_1, 13), (self.qtgui_bercurve_sink_0, 81)) self.connect((self.fec_bercurve_generator_1, 14), (self.qtgui_bercurve_sink_0, 82)) self.connect((self.fec_bercurve_generator_1, 15), (self.qtgui_bercurve_sink_0, 83)) self.connect((self.fec_bercurve_generator_1, 16), (self.qtgui_bercurve_sink_0, 84)) self.connect((self.fec_bercurve_generator_1, 17), (self.qtgui_bercurve_sink_0, 85)) self.connect((self.fec_bercurve_generator_1, 18), (self.qtgui_bercurve_sink_0, 86)) self.connect((self.fec_bercurve_generator_1, 19), (self.qtgui_bercurve_sink_0, 87)) self.connect((self.fec_bercurve_generator_1, 20), (self.qtgui_bercurve_sink_0, 88)) self.connect((self.fec_bercurve_generator_1, 21), (self.qtgui_bercurve_sink_0, 89)) self.connect((self.fec_bercurve_generator_1, 22), (self.qtgui_bercurve_sink_0, 90)) self.connect((self.fec_bercurve_generator_1, 23), (self.qtgui_bercurve_sink_0, 91)) self.connect((self.fec_bercurve_generator_1, 24), (self.qtgui_bercurve_sink_0, 92)) self.connect((self.fec_bercurve_generator_1, 25), (self.qtgui_bercurve_sink_0, 93)) self.connect((self.fec_bercurve_generator_1, 26), (self.qtgui_bercurve_sink_0, 94)) self.connect((self.fec_bercurve_generator_1, 27), (self.qtgui_bercurve_sink_0, 95)) self.connect((self.fec_bercurve_generator_1, 28), (self.qtgui_bercurve_sink_0, 96)) self.connect((self.fec_bercurve_generator_1, 29), (self.qtgui_bercurve_sink_0, 97)) self.connect((self.fec_bercurve_generator_1, 30), (self.qtgui_bercurve_sink_0, 98)) self.connect((self.fec_bercurve_generator_1, 31), (self.qtgui_bercurve_sink_0, 99)) self.connect((self.fec_bercurve_generator_1, 32), (self.qtgui_bercurve_sink_0, 100)) self.connect((self.fec_bercurve_generator_1, 33), (self.qtgui_bercurve_sink_0, 101))
def __init__(self): gr.top_block.__init__(self, "Ber Curve Gen") Qt.QWidget.__init__(self) self.setWindowTitle("Ber Curve Gen") try: self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc')) except: pass self.top_scroll_layout = Qt.QVBoxLayout() self.setLayout(self.top_scroll_layout) self.top_scroll = Qt.QScrollArea() self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame) self.top_scroll_layout.addWidget(self.top_scroll) self.top_scroll.setWidgetResizable(True) self.top_widget = Qt.QWidget() self.top_scroll.setWidget(self.top_widget) self.top_layout = Qt.QVBoxLayout(self.top_widget) self.top_grid_layout = Qt.QGridLayout() self.top_layout.addLayout(self.top_grid_layout) self.settings = Qt.QSettings("GNU Radio", "ber_curve_gen") self.restoreGeometry(self.settings.value("geometry").toByteArray()) ################################################## # Variables ################################################## self.framebits = framebits = 4096 self.samp_rate_0 = samp_rate_0 = 35000000 self.rate = rate = 2 self.polys = polys = [79, 109] self.k = k = 7 self.esno_0 = esno_0 = numpy.arange(0, 8, .5) self.enc_ldpc = enc_ldpc = map((lambda b: map( (lambda a: ldpc.ldpc_encoder( "/home/john/gnuradio/gnuradio-ldpc/examples/408.pmat")), range(0, 1))), range(0, 16)) self.enc_dummy = enc_dummy = map((lambda b: map( (lambda a: fec.dummy_encoder_make(framebits)), range(0, 1))), range(0, 16)) self.dec_ldpc = dec_ldpc = map((lambda b: map( (lambda a: ldpc.ldpc_decoder( "/home/john/gnuradio/gnuradio-ldpc/examples/408.pcmat", 50, 0) ), range(0, 1))), range(0, 16)) self.dec_dummy = dec_dummy = map((lambda b: map( (lambda a: fec.dummy_decoder.make(framebits)), range(0, 1))), range(0, 16)) ################################################## # Blocks ################################################## self.qtgui_bercurve_sink_0 = qtgui.ber_sink_b( esno_0, #range of esnos 2, #number of curves 1000, #ensure at least -10, #cutoff [], #indiv. curve names ) self.qtgui_bercurve_sink_0.set_update_time(0.10) self.qtgui_bercurve_sink_0.set_y_axis(-10, 0) self.qtgui_bercurve_sink_0.set_x_axis(esno_0[0], esno_0[-1]) labels = [ "None", "LDPC", "CC (K=7, Rate=2)", "", "", "", "", "", "", "" ] widths = [2, 2, 2, 1, 1, 1, 1, 1, 1, 1] colors = [ "blue", "red", "magenta", "red", "red", "red", "red", "red", "red", "red" ] styles = [1, 2, 5, 0, 0, 0, 0, 0, 0, 0] markers = [0, 1, 0, 0, 0, 0, 0, 0, 0, 0] alphas = [1, 1, 1, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0] for i in xrange(2): if len(labels[i]) == 0: self.qtgui_bercurve_sink_0.set_line_label( i, "Data {0}".format(i)) else: self.qtgui_bercurve_sink_0.set_line_label(i, labels[i]) self.qtgui_bercurve_sink_0.set_line_width(i, widths[i]) self.qtgui_bercurve_sink_0.set_line_color(i, colors[i]) self.qtgui_bercurve_sink_0.set_line_style(i, styles[i]) self.qtgui_bercurve_sink_0.set_line_marker(i, markers[i]) self.qtgui_bercurve_sink_0.set_line_alpha(i, alphas[i]) self._qtgui_bercurve_sink_0_win = sip.wrapinstance( self.qtgui_bercurve_sink_0.pyqwidget(), Qt.QWidget) self.top_layout.addWidget(self._qtgui_bercurve_sink_0_win) self.fec_bercurve_generator_0_0_0 = fec.bercurve_generator( enc_dummy, #size dec_dummy, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) self.fec_bercurve_generator_0_0 = fec.bercurve_generator( enc_ldpc, #size dec_ldpc, #name esno_0, #range of esnos samp_rate_0, #throttle "capillary", #threading mode '11', #puncture pattern -100 # noise gen. seed ) ################################################## # Connections ################################################## self.connect((self.fec_bercurve_generator_0_0, 0), (self.qtgui_bercurve_sink_0, 32)) self.connect((self.fec_bercurve_generator_0_0, 1), (self.qtgui_bercurve_sink_0, 33)) self.connect((self.fec_bercurve_generator_0_0, 2), (self.qtgui_bercurve_sink_0, 34)) self.connect((self.fec_bercurve_generator_0_0, 3), (self.qtgui_bercurve_sink_0, 35)) self.connect((self.fec_bercurve_generator_0_0, 4), (self.qtgui_bercurve_sink_0, 36)) self.connect((self.fec_bercurve_generator_0_0, 5), (self.qtgui_bercurve_sink_0, 37)) self.connect((self.fec_bercurve_generator_0_0, 6), (self.qtgui_bercurve_sink_0, 38)) self.connect((self.fec_bercurve_generator_0_0, 7), (self.qtgui_bercurve_sink_0, 39)) self.connect((self.fec_bercurve_generator_0_0, 8), (self.qtgui_bercurve_sink_0, 40)) self.connect((self.fec_bercurve_generator_0_0, 9), (self.qtgui_bercurve_sink_0, 41)) self.connect((self.fec_bercurve_generator_0_0, 10), (self.qtgui_bercurve_sink_0, 42)) self.connect((self.fec_bercurve_generator_0_0, 11), (self.qtgui_bercurve_sink_0, 43)) self.connect((self.fec_bercurve_generator_0_0, 12), (self.qtgui_bercurve_sink_0, 44)) self.connect((self.fec_bercurve_generator_0_0, 13), (self.qtgui_bercurve_sink_0, 45)) self.connect((self.fec_bercurve_generator_0_0, 14), (self.qtgui_bercurve_sink_0, 46)) self.connect((self.fec_bercurve_generator_0_0, 15), (self.qtgui_bercurve_sink_0, 47)) self.connect((self.fec_bercurve_generator_0_0, 16), (self.qtgui_bercurve_sink_0, 48)) self.connect((self.fec_bercurve_generator_0_0, 17), (self.qtgui_bercurve_sink_0, 49)) self.connect((self.fec_bercurve_generator_0_0, 18), (self.qtgui_bercurve_sink_0, 50)) self.connect((self.fec_bercurve_generator_0_0, 19), (self.qtgui_bercurve_sink_0, 51)) self.connect((self.fec_bercurve_generator_0_0, 20), (self.qtgui_bercurve_sink_0, 52)) self.connect((self.fec_bercurve_generator_0_0, 21), (self.qtgui_bercurve_sink_0, 53)) self.connect((self.fec_bercurve_generator_0_0, 22), (self.qtgui_bercurve_sink_0, 54)) self.connect((self.fec_bercurve_generator_0_0, 23), (self.qtgui_bercurve_sink_0, 55)) self.connect((self.fec_bercurve_generator_0_0, 24), (self.qtgui_bercurve_sink_0, 56)) self.connect((self.fec_bercurve_generator_0_0, 25), (self.qtgui_bercurve_sink_0, 57)) self.connect((self.fec_bercurve_generator_0_0, 26), (self.qtgui_bercurve_sink_0, 58)) self.connect((self.fec_bercurve_generator_0_0, 27), (self.qtgui_bercurve_sink_0, 59)) self.connect((self.fec_bercurve_generator_0_0, 28), (self.qtgui_bercurve_sink_0, 60)) self.connect((self.fec_bercurve_generator_0_0, 29), (self.qtgui_bercurve_sink_0, 61)) self.connect((self.fec_bercurve_generator_0_0, 30), (self.qtgui_bercurve_sink_0, 62)) self.connect((self.fec_bercurve_generator_0_0, 31), (self.qtgui_bercurve_sink_0, 63)) self.connect((self.fec_bercurve_generator_0_0_0, 0), (self.qtgui_bercurve_sink_0, 0)) self.connect((self.fec_bercurve_generator_0_0_0, 1), (self.qtgui_bercurve_sink_0, 1)) self.connect((self.fec_bercurve_generator_0_0_0, 2), (self.qtgui_bercurve_sink_0, 2)) self.connect((self.fec_bercurve_generator_0_0_0, 3), (self.qtgui_bercurve_sink_0, 3)) self.connect((self.fec_bercurve_generator_0_0_0, 4), (self.qtgui_bercurve_sink_0, 4)) self.connect((self.fec_bercurve_generator_0_0_0, 5), (self.qtgui_bercurve_sink_0, 5)) self.connect((self.fec_bercurve_generator_0_0_0, 6), (self.qtgui_bercurve_sink_0, 6)) self.connect((self.fec_bercurve_generator_0_0_0, 7), (self.qtgui_bercurve_sink_0, 7)) self.connect((self.fec_bercurve_generator_0_0_0, 8), (self.qtgui_bercurve_sink_0, 8)) self.connect((self.fec_bercurve_generator_0_0_0, 9), (self.qtgui_bercurve_sink_0, 9)) self.connect((self.fec_bercurve_generator_0_0_0, 10), (self.qtgui_bercurve_sink_0, 10)) self.connect((self.fec_bercurve_generator_0_0_0, 11), (self.qtgui_bercurve_sink_0, 11)) self.connect((self.fec_bercurve_generator_0_0_0, 12), (self.qtgui_bercurve_sink_0, 12)) self.connect((self.fec_bercurve_generator_0_0_0, 13), (self.qtgui_bercurve_sink_0, 13)) self.connect((self.fec_bercurve_generator_0_0_0, 14), (self.qtgui_bercurve_sink_0, 14)) self.connect((self.fec_bercurve_generator_0_0_0, 15), (self.qtgui_bercurve_sink_0, 15)) self.connect((self.fec_bercurve_generator_0_0_0, 16), (self.qtgui_bercurve_sink_0, 16)) self.connect((self.fec_bercurve_generator_0_0_0, 17), (self.qtgui_bercurve_sink_0, 17)) self.connect((self.fec_bercurve_generator_0_0_0, 18), (self.qtgui_bercurve_sink_0, 18)) self.connect((self.fec_bercurve_generator_0_0_0, 19), (self.qtgui_bercurve_sink_0, 19)) self.connect((self.fec_bercurve_generator_0_0_0, 20), (self.qtgui_bercurve_sink_0, 20)) self.connect((self.fec_bercurve_generator_0_0_0, 21), (self.qtgui_bercurve_sink_0, 21)) self.connect((self.fec_bercurve_generator_0_0_0, 22), (self.qtgui_bercurve_sink_0, 22)) self.connect((self.fec_bercurve_generator_0_0_0, 23), (self.qtgui_bercurve_sink_0, 23)) self.connect((self.fec_bercurve_generator_0_0_0, 24), (self.qtgui_bercurve_sink_0, 24)) self.connect((self.fec_bercurve_generator_0_0_0, 25), (self.qtgui_bercurve_sink_0, 25)) self.connect((self.fec_bercurve_generator_0_0_0, 26), (self.qtgui_bercurve_sink_0, 26)) self.connect((self.fec_bercurve_generator_0_0_0, 27), (self.qtgui_bercurve_sink_0, 27)) self.connect((self.fec_bercurve_generator_0_0_0, 28), (self.qtgui_bercurve_sink_0, 28)) self.connect((self.fec_bercurve_generator_0_0_0, 29), (self.qtgui_bercurve_sink_0, 29)) self.connect((self.fec_bercurve_generator_0_0_0, 30), (self.qtgui_bercurve_sink_0, 30)) self.connect((self.fec_bercurve_generator_0_0_0, 31), (self.qtgui_bercurve_sink_0, 31))