#!/usr/bin/env python2 # -*- coding: utf-8 -*- # # SPDX-License-Identifier: GPL-3.0 # ################################################## # GNU Radio Python Flow Graph # Title: Testindeterminate # Generated: Wed Oct 3 13:46:04 2018 # GNU Radio version: 3.7.12.0 ################################################## from gnuradio import blocks from gnuradio import eng_notation from gnuradio import gr from gnuradio.eng_option import eng_option from gnuradio.filter import firdes from optparse import OptionParser class testindeterminate(gr.top_block): def __init__(self, number_of_samples=1000000, output_file="out.bin"): gr.top_block.__init__(self, "Testindeterminate") ################################################## # Parameters ################################################## self.number_of_samples = number_of_samples self.output_file = output_file ################################################## # Variables ################################################## self.samp_rate = samp_rate = 2e6 ################################################## # Blocks ################################################## self.blocks_vector_source_x_0_0 = blocks.vector_source_c((0.1,)*number_of_samples, False, 1, []) self.blocks_vector_source_x_0 = blocks.vector_source_c((1.0,)*number_of_samples, False, 1, []) self.blocks_file_sink_0_0 = blocks.file_sink(gr.sizeof_gr_complex*1, output_file, False) self.blocks_file_sink_0_0.set_unbuffered(False) self.blocks_divide_xx_0_0 = blocks.divide_cc(1) ################################################## # Connections ################################################## self.connect((self.blocks_divide_xx_0_0, 0), (self.blocks_file_sink_0_0, 0)) self.connect((self.blocks_vector_source_x_0, 0), (self.blocks_divide_xx_0_0, 0)) self.connect((self.blocks_vector_source_x_0_0, 0), (self.blocks_divide_xx_0_0, 1)) def get_number_of_samples(self): return self.number_of_samples def set_number_of_samples(self, number_of_samples): self.number_of_samples = number_of_samples self.blocks_vector_source_x_0_0.set_data((0.1,)*self.number_of_samples, []) self.blocks_vector_source_x_0.set_data((1.0,)*self.number_of_samples, []) def get_output_file(self): return self.output_file def set_output_file(self, output_file): self.output_file = output_file self.blocks_file_sink_0_0.open(self.output_file) def get_samp_rate(self): return self.samp_rate def set_samp_rate(self, samp_rate): self.samp_rate = samp_rate def argument_parser(): parser = OptionParser(usage="%prog: [options]", option_class=eng_option) parser.add_option( "-N", "--number-of-samples", dest="number_of_samples", type="intx", default=1000000, help="Set number_of_samples [default=%default]") parser.add_option( "-o", "--output-file", dest="output_file", type="string", default="out.bin", help="Set out.bin [default=%default]") return parser def main(top_block_cls=testindeterminate, options=None): if options is None: options, _ = argument_parser().parse_args() tb = top_block_cls(number_of_samples=options.number_of_samples, output_file=options.output_file) tb.start() tb.wait() if __name__ == '__main__': main()