mirror of
https://github.com/DSheirer/sdrtrunk.git
synced 2026-11-13 09:07:27 -05:00
Changed FrequencyChangeListener interface to an event so that I could describe what event was causing the frequency change and to broadcast frequency and sample rate error values.
R820T - added a couple more sample rate settings to the enum and modified the periodic sample rate info logger.
This commit is contained in:
@@ -23,6 +23,8 @@ import settings.Setting;
|
||||
import settings.SettingChangeListener;
|
||||
import settings.SettingsManager;
|
||||
import source.Source.SampleType;
|
||||
import source.tuner.FrequencyChangeEvent;
|
||||
import source.tuner.FrequencyChangeEvent.Attribute;
|
||||
import spectrum.converter.DFTResultsConverter;
|
||||
import spectrum.converter.RealDecibelConverter;
|
||||
import spectrum.menu.AmplificationItem;
|
||||
@@ -86,7 +88,8 @@ public class ChannelSpectrumPanel extends JPanel
|
||||
mDecimatingSampleAssembler = new DecimatingSampleAssembler( mDFTProcessor );
|
||||
|
||||
/* Set the DFTProcessor to the decimated 24kHz sample rate */
|
||||
mDFTProcessor.frequencyChanged( 0, 24000 );
|
||||
mDFTProcessor.frequencyChanged(
|
||||
new FrequencyChangeEvent( Attribute.SAMPLE_RATE, 24000 ) );
|
||||
|
||||
initGui();
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ import org.slf4j.LoggerFactory;
|
||||
import sample.Listener;
|
||||
import source.Source;
|
||||
import source.Source.SampleType;
|
||||
import source.tuner.FrequencyChangeEvent;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
import spectrum.converter.DFTResultsConverter;
|
||||
import dsp.filter.Window;
|
||||
@@ -443,11 +444,19 @@ public class DFTProcessor implements Listener<Float[]>,
|
||||
}
|
||||
|
||||
@Override
|
||||
public void frequencyChanged( long frequency, int bandwidth )
|
||||
public void frequencyChanged( FrequencyChangeEvent event )
|
||||
{
|
||||
mSampleRate = bandwidth;
|
||||
|
||||
calculateConsumptionRate();
|
||||
switch( event.getAttribute() )
|
||||
{
|
||||
case SAMPLE_RATE_ERROR:
|
||||
break;
|
||||
case SAMPLE_RATE:
|
||||
mSampleRate = (int)event.getValue();
|
||||
calculateConsumptionRate();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -36,6 +36,7 @@ import settings.ColorSetting;
|
||||
import settings.ColorSetting.ColorSettingName;
|
||||
import settings.Setting;
|
||||
import settings.SettingChangeListener;
|
||||
import source.tuner.FrequencyChangeEvent;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
import source.tuner.TunerChannel;
|
||||
import controller.ResourceManager;
|
||||
@@ -523,10 +524,22 @@ public class OverlayPanel extends JPanel
|
||||
* Frequency change event handler
|
||||
*/
|
||||
@Override
|
||||
public void frequencyChanged( long frequency, int bandwidth )
|
||||
public void frequencyChanged( FrequencyChangeEvent event )
|
||||
{
|
||||
mBandwidth = bandwidth;
|
||||
mFrequency = frequency;
|
||||
switch( event.getAttribute() )
|
||||
{
|
||||
case SAMPLE_RATE_ERROR:
|
||||
// System.out.println( "OVerlay panel got a sample rate error update" );
|
||||
break;
|
||||
case SAMPLE_RATE:
|
||||
mBandwidth = (int)event.getValue();
|
||||
break;
|
||||
case FREQUENCY:
|
||||
mFrequency = (int)event.getValue();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
/**
|
||||
* Reset the visible channel configs list
|
||||
|
||||
@@ -55,9 +55,11 @@ import settings.SettingChangeListener;
|
||||
import settings.SettingsManager;
|
||||
import source.Source.SampleType;
|
||||
import source.SourceException;
|
||||
import source.tuner.FrequencyChangeEvent;
|
||||
import source.tuner.FrequencyChangeListener;
|
||||
import source.tuner.Tuner;
|
||||
import source.tuner.TunerSelectionListener;
|
||||
import source.tuner.FrequencyChangeEvent.Attribute;
|
||||
import spectrum.converter.ComplexDecibelConverter;
|
||||
import spectrum.converter.DFTResultsConverter;
|
||||
import spectrum.menu.AmplificationItem;
|
||||
@@ -340,10 +342,10 @@ public class SpectralDisplayPanel extends JPanel
|
||||
* Receives frequency change events -- primarily from tuner components.
|
||||
*/
|
||||
@Override
|
||||
public void frequencyChanged( long frequency, int bandwidth )
|
||||
public void frequencyChanged( FrequencyChangeEvent event )
|
||||
{
|
||||
mOverlayPanel.frequencyChanged( frequency, bandwidth );
|
||||
mDFTProcessor.frequencyChanged( frequency, bandwidth );
|
||||
mOverlayPanel.frequencyChanged( event );
|
||||
mDFTProcessor.frequencyChanged( event );
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -381,11 +383,15 @@ public class SpectralDisplayPanel extends JPanel
|
||||
//Register the dft processor to receive samples from the tuner
|
||||
mTuner.addListener( (Listener<Float[]>)mDFTProcessor );
|
||||
|
||||
//Fire a frequency change event so that everyone can init
|
||||
//Fire frequency and sample rate change events so that everyone
|
||||
//can init
|
||||
try
|
||||
{
|
||||
frequencyChanged( mTuner.getFrequency(),
|
||||
mTuner.getSampleRate() );
|
||||
frequencyChanged( new FrequencyChangeEvent(
|
||||
Attribute.FREQUENCY, mTuner.getFrequency() ) );
|
||||
|
||||
frequencyChanged( new FrequencyChangeEvent(
|
||||
Attribute.SAMPLE_RATE, mTuner.getSampleRate() ) );
|
||||
}
|
||||
catch ( SourceException e )
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user