コード例 #1
0
ファイル: VirtualReceiver.cs プロジェクト: jeztek/spectrum
 public VirtualReceiver(VirtualTransmitter transmitter, double sampleRate)
 {
     m_BufferNumSamples = 16384;
     m_SampleRate = sampleRate;
     m_SampleBuffer = new Complex[m_BufferNumSamples];
     m_CopyBuffer = Marshal.AllocHGlobal(m_BufferNumSamples * 8 * 2);
     m_Transmitter = transmitter;
 }
コード例 #2
0
ファイル: Form1.cs プロジェクト: jeztek/spectrum
        private void Form1_Load(object sender, EventArgs e)
        {
            #if NOTTRUE
            m_Source = new USRPReceiver();
            if (!m_Source.Init())
            {
                MessageBox.Show("Unable to initialize radio!");
                Close();
                return;
            }
            if (!m_Source.SetFrequency(m_Frequency))
            {
                MessageBox.Show("Unable to tune radio!");
                Close();
                return;
            }

            m_ReceiveQueue = new ReceiveQueue();
            m_Source.SetSampleRate(m_SampleRate);
            m_Source.SetGain(m_Gain);
            m_Source.StartReceiving(m_ReceiveQueue.Handler);
            #else
            m_ReceiveQueue = new ReceiveQueue();
            VirtualTransmitter virtualTransmitter = new VirtualTransmitter(m_SampleRate);
            virtualTransmitter.StartTransmitting(SinTransmitHandler);

            VirtualReceiver virtualReceiver = new VirtualReceiver(virtualTransmitter, m_SampleRate);
            virtualReceiver.StartReceiving(m_ReceiveQueue.Handler);
            #endif
            m_FFTTask = Task.Factory.StartNew(FFTHandler, TaskCreationOptions.LongRunning);
            m_FFT = new LomontFFT();
            timer1.Interval = (int)m_FFTRate;
        }