mirror of
https://github.com/DSheirer/sdrtrunk.git
synced 2026-11-14 01:27:34 -05:00
Updates test tuner to cleanup the buffer reuse settings
This commit is contained in:
@@ -381,6 +381,9 @@ public class ChannelizerViewer extends JFrame
|
|||||||
{
|
{
|
||||||
TestTuner tuner = new TestTuner();
|
TestTuner tuner = new TestTuner();
|
||||||
|
|
||||||
|
//Turn on buffer reuse since we're simply profiling data flow/throughput
|
||||||
|
tuner.getTunerController().setReuseBuffers(true);
|
||||||
|
|
||||||
List<TunerChannel> tunerChannels = getTunerChannels(tuner);
|
List<TunerChannel> tunerChannels = getTunerChannels(tuner);
|
||||||
|
|
||||||
List<TunerChannelSource> sources = new ArrayList<>();
|
List<TunerChannelSource> sources = new ArrayList<>();
|
||||||
@@ -424,5 +427,4 @@ public class ChannelizerViewer extends JFrame
|
|||||||
while(true);
|
while(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -50,7 +50,7 @@ public class SampleGenerator
|
|||||||
* @param sweepUpdateRate to turn on sweeping of the tone frequency where the frequency is incremented by the
|
* @param sweepUpdateRate to turn on sweeping of the tone frequency where the frequency is incremented by the
|
||||||
* rate specified at each interval, resetting to 1 Hz after reaching/exceeding the highest frequency.
|
* rate specified at each interval, resetting to 1 Hz after reaching/exceeding the highest frequency.
|
||||||
*/
|
*/
|
||||||
public SampleGenerator(int sampleRate, long frequency, long interval, int sweepUpdateRate, boolean reuseBuffers)
|
public SampleGenerator(int sampleRate, long frequency, long interval, int sweepUpdateRate)
|
||||||
{
|
{
|
||||||
if(Math.abs(sweepUpdateRate) >= sampleRate)
|
if(Math.abs(sweepUpdateRate) >= sampleRate)
|
||||||
{
|
{
|
||||||
@@ -60,7 +60,6 @@ public class SampleGenerator
|
|||||||
mOscillator = new LowPhaseNoiseOscillator(sampleRate, frequency);
|
mOscillator = new LowPhaseNoiseOscillator(sampleRate, frequency);
|
||||||
mInterval = interval;
|
mInterval = interval;
|
||||||
mSweepUpdateInterval = sweepUpdateRate;
|
mSweepUpdateInterval = sweepUpdateRate;
|
||||||
mReuseBuffers = reuseBuffers;
|
|
||||||
|
|
||||||
updateSamplesPerInterval();
|
updateSamplesPerInterval();
|
||||||
}
|
}
|
||||||
@@ -74,9 +73,24 @@ public class SampleGenerator
|
|||||||
* @param frequency of the tone produced by the generator
|
* @param frequency of the tone produced by the generator
|
||||||
* @param interval in milliseconds for generating samples
|
* @param interval in milliseconds for generating samples
|
||||||
*/
|
*/
|
||||||
public SampleGenerator(int sampleRate, long frequency, long interval, boolean reuseBuffers)
|
public SampleGenerator(int sampleRate, long frequency, long interval)
|
||||||
{
|
{
|
||||||
this(sampleRate, frequency, interval, 0, reuseBuffers);
|
this(sampleRate, frequency, interval, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Instructs the sample generator to reuse the same sample buffer each time instead of generating new samples for
|
||||||
|
* each and every buffer. This is useful when you simply want to generate data to test or profile data flows and
|
||||||
|
* are not concerned about the content of the buffers.
|
||||||
|
*
|
||||||
|
* The generator will create a new buffer of data each time that it detects that the sample size changes or when
|
||||||
|
* the tone frequency changes.
|
||||||
|
*
|
||||||
|
* @param reuseBuffers set to true to turn on buffer reuse
|
||||||
|
*/
|
||||||
|
public void setReuseBuffers(boolean reuseBuffers)
|
||||||
|
{
|
||||||
|
mReuseBuffers = reuseBuffers;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -40,7 +40,6 @@ public class TestTunerController extends TunerController
|
|||||||
public static final long SAMPLE_GENERATION_INTERVAL = 1000 / SPECTRAL_FRAME_RATE;
|
public static final long SAMPLE_GENERATION_INTERVAL = 1000 / SPECTRAL_FRAME_RATE;
|
||||||
|
|
||||||
private SampleGenerator mSampleGenerator;
|
private SampleGenerator mSampleGenerator;
|
||||||
private boolean mReuseBuffers = true;
|
|
||||||
private long mFrequency = 100000000l;
|
private long mFrequency = 100000000l;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -53,7 +52,7 @@ public class TestTunerController extends TunerController
|
|||||||
int sweepRate = 0; //Hz per interval
|
int sweepRate = 0; //Hz per interval
|
||||||
long initialToneFrequency = SAMPLE_RATE / 2 + 100;
|
long initialToneFrequency = SAMPLE_RATE / 2 + 100;
|
||||||
mSampleGenerator = new SampleGenerator(SAMPLE_RATE, initialToneFrequency, SAMPLE_GENERATION_INTERVAL,
|
mSampleGenerator = new SampleGenerator(SAMPLE_RATE, initialToneFrequency, SAMPLE_GENERATION_INTERVAL,
|
||||||
sweepRate, mReuseBuffers);
|
sweepRate);
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
@@ -66,6 +65,17 @@ public class TestTunerController extends TunerController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the sample generator to reuse buffers instead of generating new buffers each time. Enable this setting
|
||||||
|
* when you simply want to test/profile buffer data flows for consumer processes.
|
||||||
|
*
|
||||||
|
* @param reuseBuffers set to true to turn on buffer reuse
|
||||||
|
*/
|
||||||
|
public void setReuseBuffers(boolean reuseBuffers)
|
||||||
|
{
|
||||||
|
mSampleGenerator.setReuseBuffers(reuseBuffers);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addComplexBufferListener(Listener<ComplexBuffer> listener)
|
public void addComplexBufferListener(Listener<ComplexBuffer> listener)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user