Changes to model, view and controller components and updates all gui
editors. Removes the configuration panel and tree and replaces with 3
new panels. Updates playlist.xml to a new playlist_v2.xml format.
configuration and tuner configuration assignment editors. Beginning of
tuner editor panel rework. Removes most of the remaining JTree
configuration pieces. Updates the settings manager to load and save
tuners and refactors all of the tuner configuration management out into
the tuner configuration model.
number of unused classes. Removed playlist manager from a number of
classes and replaced with the alias, channel and channel map models.
Updated playlist manager to no longer retain a playlist except for when
loading to models or when storing from models. Extracted version 1 to
version 2 playlist conversion and changed playlist manager to keep the
original version 1 playlist and create a new version 2 (playlist_v2.xml)
file. On startup, try to load a v2, and if not, look for a v1 to
convert. Otherwise, don't create a playlist and one will be created
once the user adds items to the models.
and constraints on scheduled thread pool saturation. Adds a new
scheduled thread pool for each processing chain that the components in
the chain can share, versus the single shared pool exposed by the
threadpoolmanager class.
saturation.
Each tunerchannelsource was sharing a thread pool and as the processing
load increased, the thread pool was not expanding and the processing
tasks were backing up, causing the buffers to grow with unprocessed
data.
Changed so that each tuner channel source is handed a thread pool to use
for processing incoming sample data. Processing chain maintains the
thread pool and starts the channel source. This allows traffic channels
to reuse the thread pool across multiple iterations.
-Removed channel collection panel since panels will only have 1 channel
now
-Resolved issue with channel list and channel selection events
-Fixed some of the classes from the rebase to master branch
channels upon loading the playlist.
Processing manager now detects channel configuration changes and
restarts the channel if it is currently processing.
Channel editor enable button now shows green if it is processing, or
default when not processing.
functionality so that the editor starts up without a channel displayed
and as each channel row is selected in the channels table, the editor is
updated with the channel configuration.
Likewise, the channel editor is now a channel event listener on the
channel model and will maintain channel state if the user changes
channel configuration in any of the external channel controllers like
the spectral display or the channel list.
-Started work on new channel editor channel viewer/controller
-Removed a number of unused buffer package classes
-Moved automatic frequency control to be a module and removed special
handling
-Added IUnfilteredRealBufferListener & Provider interfaces
-Completely removed the ResourceManager class
Resolves issue in tuner controller where controller was not releasing
sourced tuner channels, preventing re-tuning to other frequencies.
Resolves issue with channel timeout on MPT1327 monitored traffic
channels
Redesigned audio manager handling of audio outputs to ensure that only
one channel's audio can be routed to an audio output at a time.
Changed audio outputs to use the shared thread pool manager for
scheduled tasks, instead of creating a thread pool for each audio
output.
calculation when additional channels are allocated.
Incorporates tuner specific definition of overall usable bandwidth, so
that tuners like airspy can specify 90% of 10 MHz (ie 9 MHz) is truly
usable and the fringe 10% is unusable rolloff.
Also includes tuner-specific defining of the width of the central spike,
or a value of 0 indicates that the entire range is usable (ie airspy).
when tuner channels are allocated by the airspy. New method determines
the min/max requested frequency range and sets tuner center to the
center of that range, while limiting the total usable bandwidth to 90%
of the bandwidth, to account for rolloff of 5% at the upper/lower edges.
When a new channel is requested, if the channel fits within the current
center frequency and usable bandwidth, the center tune frequency is not
adjusted, to minimize the number of retunes on a busy system.