import math from gnuradio import gr import qam class qam_corr_demod(gr.hier_block): def __init__(self, fg, fs, fc, amplitude, decim): self.sampling_freq = int(fs) self.carrier_freq = int(fc) self.amplitude = int(amplitude) self.decimation = int(decim) self.carrier_inphase = gr.sig_source_c(sampling_freq, gr.GR_COS_WAVE, carrier_freq, amplitude) self.carrier_quadrature = gr.sig_source_c(sampling_freq, gr.GR_SIN_WAVE, carrier_freq, amplitude) self.qam_corr = qam.demodulate_cf(decimation) self.kludge_out = gr.kludge_copy() # wire the block together fg.connect((self.qam_corr,0), (self.kludge_out,0)) fg.connect((self.qam_corr,1), (self.kludge_out,1)) fg.connect(self.carrier_inphase, (self.qam_corr,1)) fg.connect((self.carrier_quadrature, (self.qam_corr,2)) gr.hier_block.__init__(self, fg, self.qam_corr , self.kludge_out)