diff --git a/src/main/java/io/github/dsheirer/audio/AudioModule.java b/src/main/java/io/github/dsheirer/audio/AudioModule.java index 960ad21e..b11f8cb0 100644 --- a/src/main/java/io/github/dsheirer/audio/AudioModule.java +++ b/src/main/java/io/github/dsheirer/audio/AudioModule.java @@ -148,7 +148,6 @@ public class AudioModule extends Module implements IAudioPacketProvider, IReusab ReusableAudioPacket audioPacket = mAudioPacketQueue.getBuffer(highPassFiltered.getSampleCount()); audioPacket.loadAudioFrom(highPassFiltered); audioPacket.setMetadata(mMetadata.copyOf()); - audioPacket.incrementUserCount(); mAudioPacketListener.receive(audioPacket); diff --git a/src/main/java/io/github/dsheirer/audio/convert/MP3SilenceGenerator.java b/src/main/java/io/github/dsheirer/audio/convert/MP3SilenceGenerator.java index 05dad8d2..6329db42 100644 --- a/src/main/java/io/github/dsheirer/audio/convert/MP3SilenceGenerator.java +++ b/src/main/java/io/github/dsheirer/audio/convert/MP3SilenceGenerator.java @@ -48,7 +48,6 @@ public class MP3SilenceGenerator implements ISilenceGenerator int length = (int)(duration * 8); //8000 Hz sample rate ReusableAudioPacket silencePacket = mAudioPacketQueue.getBuffer(length); Arrays.fill(silencePacket.getAudioSamples(), 0.0f); - silencePacket.incrementUserCount(); List silencePackets = new ArrayList<>(); silencePackets.add(silencePacket); diff --git a/src/main/java/io/github/dsheirer/dsp/am/AMDemodulator.java b/src/main/java/io/github/dsheirer/dsp/am/AMDemodulator.java index 029d4c3e..0ca45fb3 100644 --- a/src/main/java/io/github/dsheirer/dsp/am/AMDemodulator.java +++ b/src/main/java/io/github/dsheirer/dsp/am/AMDemodulator.java @@ -76,7 +76,6 @@ public class AMDemodulator } complexBuffer.decrementUserCount(); - reusableBuffer.incrementUserCount(); return reusableBuffer; } diff --git a/src/main/java/io/github/dsheirer/dsp/filter/channelizer/ComplexPolyphaseChannelizerM2.java b/src/main/java/io/github/dsheirer/dsp/filter/channelizer/ComplexPolyphaseChannelizerM2.java index f1742359..df7685a3 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/channelizer/ComplexPolyphaseChannelizerM2.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/channelizer/ComplexPolyphaseChannelizerM2.java @@ -225,8 +225,6 @@ public class ComplexPolyphaseChannelizerM2 extends AbstractComplexPolyphaseChann } } - channelResultsBuffer.incrementUserCount(); - //Enqueue the channel results buffer for IFFT processing and distribution on a different thread mIFFTProcessor.receive(channelResultsBuffer); diff --git a/src/main/java/io/github/dsheirer/dsp/filter/channelizer/TwoChannelSynthesizerM2.java b/src/main/java/io/github/dsheirer/dsp/filter/channelizer/TwoChannelSynthesizerM2.java index acc74239..a8bbc02c 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/channelizer/TwoChannelSynthesizerM2.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/channelizer/TwoChannelSynthesizerM2.java @@ -156,8 +156,6 @@ public class TwoChannelSynthesizerM2 channelBuffer1.decrementUserCount(); channelBuffer2.decrementUserCount(); - synthesizedComplexBuffer.incrementUserCount(); - return synthesizedComplexBuffer; } diff --git a/src/main/java/io/github/dsheirer/dsp/filter/correction/IQCorrectionFilter.java b/src/main/java/io/github/dsheirer/dsp/filter/correction/IQCorrectionFilter.java index 1264201a..03224bc2 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/correction/IQCorrectionFilter.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/correction/IQCorrectionFilter.java @@ -42,7 +42,6 @@ public class IQCorrectionFilter float[] samples = buffer.getSamples(); ReusableComplexBuffer filtered = mReusableComplexBufferQueue.getBuffer(samples.length); - filtered.incrementUserCount(); float[] filteredSamples = filtered.getSamples(); for(int x = 0; x < samples.length; x += 2) diff --git a/src/main/java/io/github/dsheirer/dsp/filter/dc/BufferDCFilter.java b/src/main/java/io/github/dsheirer/dsp/filter/dc/BufferDCFilter.java index 8236b6b1..d9f2d25c 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/dc/BufferDCFilter.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/dc/BufferDCFilter.java @@ -92,7 +92,6 @@ public class BufferDCFilter } unfilteredBuffer.decrementUserCount(); - filteredBuffer.incrementUserCount(); return filteredBuffer; } diff --git a/src/main/java/io/github/dsheirer/dsp/filter/dc/DCRemovalFilter.java b/src/main/java/io/github/dsheirer/dsp/filter/dc/DCRemovalFilter.java index 5e5e9a47..4f7f2be4 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/dc/DCRemovalFilter.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/dc/DCRemovalFilter.java @@ -90,7 +90,6 @@ public class DCRemovalFilter } unfilteredBuffer.decrementUserCount(); - filteredBuffer.incrementUserCount(); return filteredBuffer; } diff --git a/src/main/java/io/github/dsheirer/dsp/filter/dc/IIRSinglePoleDCRemovalFilter.java b/src/main/java/io/github/dsheirer/dsp/filter/dc/IIRSinglePoleDCRemovalFilter.java index 202c83f0..d11d8035 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/dc/IIRSinglePoleDCRemovalFilter.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/dc/IIRSinglePoleDCRemovalFilter.java @@ -79,7 +79,6 @@ public class IIRSinglePoleDCRemovalFilter implements RealSampleListener } inputBuffer.decrementUserCount(); - outputBuffer.incrementUserCount(); return outputBuffer; } diff --git a/src/main/java/io/github/dsheirer/dsp/filter/fir/complex/ComplexFIRFilter2.java b/src/main/java/io/github/dsheirer/dsp/filter/fir/complex/ComplexFIRFilter2.java index 30dd818e..7c618c00 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/fir/complex/ComplexFIRFilter2.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/fir/complex/ComplexFIRFilter2.java @@ -124,7 +124,6 @@ public class ComplexFIRFilter2 extends FIRFilter } originalBuffer.decrementUserCount(); - filteredBuffer.incrementUserCount(); return filteredBuffer; } diff --git a/src/main/java/io/github/dsheirer/dsp/filter/fir/real/RealFIRFilter2.java b/src/main/java/io/github/dsheirer/dsp/filter/fir/real/RealFIRFilter2.java index 7023debb..67f5a7e3 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/fir/real/RealFIRFilter2.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/fir/real/RealFIRFilter2.java @@ -125,7 +125,6 @@ public class RealFIRFilter2 extends FIRFilter filteredSamples[x] = filter(unfilteredSamples[x]); } - filteredBuffer.incrementUserCount(); unfilteredBuffer.decrementUserCount(); return filteredBuffer; diff --git a/src/main/java/io/github/dsheirer/dsp/filter/halfband/real/HalfBandFilter.java b/src/main/java/io/github/dsheirer/dsp/filter/halfband/real/HalfBandFilter.java index 21255f08..da71b64c 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/halfband/real/HalfBandFilter.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/halfband/real/HalfBandFilter.java @@ -95,7 +95,6 @@ public class HalfBandFilter outputSamples[x] = filter(inputSamples[x]); } - output.incrementUserCount(); input.decrementUserCount(); return output; diff --git a/src/main/java/io/github/dsheirer/dsp/filter/resample/RealResampler.java b/src/main/java/io/github/dsheirer/dsp/filter/resample/RealResampler.java index 496c786c..3565b094 100644 --- a/src/main/java/io/github/dsheirer/dsp/filter/resample/RealResampler.java +++ b/src/main/java/io/github/dsheirer/dsp/filter/resample/RealResampler.java @@ -129,7 +129,6 @@ public class RealResampler while(mOutputBuffer.position() > mOutputBufferSize) { ReusableBuffer outputBuffer = mReusableBufferQueue.getBuffer(mOutputBufferSize); - outputBuffer.incrementUserCount(); mOutputBuffer.flip(); mOutputBuffer.get(outputBuffer.getSamples()); diff --git a/src/main/java/io/github/dsheirer/dsp/fm/FMDemodulator.java b/src/main/java/io/github/dsheirer/dsp/fm/FMDemodulator.java index 9a46e9dd..642f5d87 100644 --- a/src/main/java/io/github/dsheirer/dsp/fm/FMDemodulator.java +++ b/src/main/java/io/github/dsheirer/dsp/fm/FMDemodulator.java @@ -142,7 +142,6 @@ public class FMDemodulator } basebandSampleBuffer.decrementUserCount(); - demodulatedBuffer.incrementUserCount(); return demodulatedBuffer; } diff --git a/src/main/java/io/github/dsheirer/dsp/gain/AutomaticGainControl.java b/src/main/java/io/github/dsheirer/dsp/gain/AutomaticGainControl.java index 1ce76e71..63ef04e6 100644 --- a/src/main/java/io/github/dsheirer/dsp/gain/AutomaticGainControl.java +++ b/src/main/java/io/github/dsheirer/dsp/gain/AutomaticGainControl.java @@ -160,7 +160,6 @@ public class AutomaticGainControl } input.decrementUserCount(); - output.incrementUserCount(); return output; } diff --git a/src/main/java/io/github/dsheirer/dsp/gain/ComplexFeedForwardGainControl.java b/src/main/java/io/github/dsheirer/dsp/gain/ComplexFeedForwardGainControl.java index 48f2bf4b..3ae83bdd 100644 --- a/src/main/java/io/github/dsheirer/dsp/gain/ComplexFeedForwardGainControl.java +++ b/src/main/java/io/github/dsheirer/dsp/gain/ComplexFeedForwardGainControl.java @@ -173,7 +173,6 @@ public class ComplexFeedForwardGainControl implements ComplexSampleListener } buffer.decrementUserCount(); - filteredBuffer.incrementUserCount(); return filteredBuffer; } diff --git a/src/main/java/io/github/dsheirer/gui/channelizer/SynthesizerViewer.java b/src/main/java/io/github/dsheirer/gui/channelizer/SynthesizerViewer.java index 5875990c..bd23790d 100644 --- a/src/main/java/io/github/dsheirer/gui/channelizer/SynthesizerViewer.java +++ b/src/main/java/io/github/dsheirer/gui/channelizer/SynthesizerViewer.java @@ -300,8 +300,6 @@ public class SynthesizerViewer extends JFrame getChannel2ControlPanel().getOscillator().generateComplex(channel2Buffer); channel1Buffer.incrementUserCount(); - channel1Buffer.incrementUserCount(); - channel2Buffer.incrementUserCount(); channel2Buffer.incrementUserCount(); ReusableComplexBuffer synthesizedBuffer = mSynthesizer.process(channel1Buffer, channel2Buffer); diff --git a/src/main/java/io/github/dsheirer/module/decode/p25/audio/P25AudioModule.java b/src/main/java/io/github/dsheirer/module/decode/p25/audio/P25AudioModule.java index 8c3851ac..8578745c 100644 --- a/src/main/java/io/github/dsheirer/module/decode/p25/audio/P25AudioModule.java +++ b/src/main/java/io/github/dsheirer/module/decode/p25/audio/P25AudioModule.java @@ -162,7 +162,6 @@ public class P25AudioModule extends Module implements Listener, IAudioP ReusableAudioPacket audioPacket = mAudioPacketQueue.getBuffer(audio.length); audioPacket.setMetadata(mMetadata.copyOf()); audioPacket.loadAudioFrom(audio); - audioPacket.incrementUserCount(); mAudioPacketListener.receive(audioPacket); } diff --git a/src/main/java/io/github/dsheirer/sample/adapter/ComplexShortAdapter.java b/src/main/java/io/github/dsheirer/sample/adapter/ComplexShortAdapter.java index 254af929..6530694d 100644 --- a/src/main/java/io/github/dsheirer/sample/adapter/ComplexShortAdapter.java +++ b/src/main/java/io/github/dsheirer/sample/adapter/ComplexShortAdapter.java @@ -61,7 +61,6 @@ public class ComplexShortAdapter extends ComplexSampleAdapter pointer++; } - reusableBuffer.incrementUserCount(); return reusableBuffer; } diff --git a/src/main/java/io/github/dsheirer/sample/adapter/RealChannelShortAdapter.java b/src/main/java/io/github/dsheirer/sample/adapter/RealChannelShortAdapter.java index 77b528e3..b7f685fc 100644 --- a/src/main/java/io/github/dsheirer/sample/adapter/RealChannelShortAdapter.java +++ b/src/main/java/io/github/dsheirer/sample/adapter/RealChannelShortAdapter.java @@ -76,7 +76,6 @@ public class RealChannelShortAdapter extends RealSampleAdapter } } - reusableBuffer.incrementUserCount(); return reusableBuffer; } diff --git a/src/main/java/io/github/dsheirer/sample/adapter/RealShortAdapter.java b/src/main/java/io/github/dsheirer/sample/adapter/RealShortAdapter.java index 7d1da2aa..cdbb99a1 100644 --- a/src/main/java/io/github/dsheirer/sample/adapter/RealShortAdapter.java +++ b/src/main/java/io/github/dsheirer/sample/adapter/RealShortAdapter.java @@ -58,7 +58,6 @@ public class RealShortAdapter extends RealSampleAdapter pointer++; } - reusableBuffer.incrementUserCount(); return reusableBuffer; } diff --git a/src/main/java/io/github/dsheirer/sample/buffer/AbstractReusableBufferQueue.java b/src/main/java/io/github/dsheirer/sample/buffer/AbstractReusableBufferQueue.java index e777b1eb..94810ec9 100644 --- a/src/main/java/io/github/dsheirer/sample/buffer/AbstractReusableBufferQueue.java +++ b/src/main/java/io/github/dsheirer/sample/buffer/AbstractReusableBufferQueue.java @@ -29,6 +29,7 @@ public abstract class AbstractReusableBufferQueue mReusableBufferQueue = new LinkedTransferQueue<>(); private int mBufferCount = 0; private String mDebugName; + protected boolean mBufferCreationLoggingEnabled = true; /** * Base queue for managing reusable buffers. @@ -89,6 +90,12 @@ public abstract class AbstractReusableBufferQueue 0) - { - throw new IllegalStateException("New data cannot be loaded into this reusable buffer while the user count " + - "is above zero - user count:" + mUserCount.get()); - } - - mUserCount.set(0); - resize(floatBuffer.capacity()); floatBuffer.rewind(); floatBuffer.get(mSamples); diff --git a/src/main/java/io/github/dsheirer/sample/buffer/ReusableBufferAssembler.java b/src/main/java/io/github/dsheirer/sample/buffer/ReusableBufferAssembler.java index d6e17209..fd1bdd14 100644 --- a/src/main/java/io/github/dsheirer/sample/buffer/ReusableBufferAssembler.java +++ b/src/main/java/io/github/dsheirer/sample/buffer/ReusableBufferAssembler.java @@ -53,7 +53,6 @@ public class ReusableBufferAssembler implements RealSampleListener if(mCurrentBuffer == null) { mCurrentBuffer = mReusableBufferQueue.getBuffer(mBufferSize); - mCurrentBuffer.incrementUserCount(); mBufferPointer = 0; } diff --git a/src/main/java/io/github/dsheirer/sample/buffer/ReusableBufferQueue.java b/src/main/java/io/github/dsheirer/sample/buffer/ReusableBufferQueue.java index 7da6162e..4c00f2e1 100644 --- a/src/main/java/io/github/dsheirer/sample/buffer/ReusableBufferQueue.java +++ b/src/main/java/io/github/dsheirer/sample/buffer/ReusableBufferQueue.java @@ -29,7 +29,8 @@ public class ReusableBufferQueue extends AbstractReusableBufferQueue