All Classes and Interfaces
Class
Description
The class AbstractCellEditor serves as the base class for the TreeTable's 
 table cell editor.
Abstract implementation of Filter interface to 
 provide common functionality for two of the main
 function calls for processing arrays of data.
Class for localisation information.
Abstract Localiser class.
A scroller UI interfacing with PAMGUARD programmed using JavaFX.
Deprecated.
Reinstated Target motion add-in as used by the click detector.
Reinstated Target motion add-in as used by the click detector.
Contains more generic nodes for JavaFX implementation of video range GUI.
AbstractVRMethod provides a significant amount of the basic functionality required to determine the range of an animal from an image.
A class containing a 
TableCell implementation that draws a 
 TextField node inside the cell.Class for all PAMGAURD data based on acoustic types of data, i.e.
Implementation of AcousticScrollerGraphics which uses the existing datagram of a PamDataBlock to 
 show information in the acoustic scroll bar graphics.
Used as a flag to indicate that the data unit implementing this interface holds
 some type of acoustic data.
The acoustic scroll pane shows a summary of all the acoustic data available in a particular scroll period.
Handles the graphics for an acopustic scroller.
Main data acquisition control to get audio data from sound cards,
 NI cards (via UDP), files, directories of files, etc.
Very simplified version of the Acquisition parameters
 to be passed over the JNI to the C backend.
Main dialog for acquisition control.
Very simple concrete implementation of SQLLogging to log the starts
 and stops of PAMGUARD in the database.
Settings pane for the sound acquisition parameters.
Data acquisition process for all types of input device.
The AcquisitionSettings class provides a module-local storage object for holding
 on to the properties of the audio data source (acquisition module) upon which the
 module is depending.
Base class for action settings.
Add Then Multiply then Add is a calibration method in it that has 
 some unnecessary, but useful redundancy.
Pane with controls to change advanced settings of the electrical noise pane.
Pane with a few more advanced settings for the MHT variables.
Read in some AIS data which caused AIS to crash on certain strings.
A set of AIS data strings which can combined with simulated NMEA data for
 testing purposes.
AIS Position report data
BAse class for any alarm data source which is returning 
 some kind of data measured in dB, which needs 
 to be added in a different way to normal.
Set of params for an individual alarm output.
Alarm action for serial port output.
Singleton class for all alarm actions to share a single serial port, it's settings
 etc.
Experimental java based demultiplexer.
Chi^2 value for dB amplitude of tracks.
Construct a dialog panel with range information for a list of named channels
Descriptions of a module that will use analog data.
Anchors for localization effort coordinate system.
Class to sort out angle calibration data.
Data unit for storing angular information, often used to store data from imu intruments (inertial measurement unit) and heading data from compass sensors.
Data for a single angle veto.
Dialog to get data for a single angle veto.
Dispaly for angle veto.
Class to support functions to handle vetoes on angles to clicks
Dialog to manage multiple angle vetoes.
PArameters controlling angle vetoes for a particular detector.
Functions used by a specific DataAnnotationType to read and write binary data
 settings and retrieving that information in PamDataUnits.
Annotation handler that provides functionality for the programmer to set things
 up so that the user can chose which types of annotation to use.
Class to handle choice of annotator and any other 
 associated options.
General dialog that can be used with any annotation type.
General interface for dialog panels which get incorporated into other
 dialog panels for editing one or more annotations of a data unit.
Manage annotation options for a datablock
Annotation options.
Settings panel for configuring annotation types
Display summary information about a data unit and it's annotations.
Symbol options for annotations.
Writer to convert an annotation into XML.
FX GUI for the SoundAquisition module.
A Tensorflow or PyTorch model zipped with a PAMGuard settings file.
Runs a Ketos deep learning model and performs feature extraction.
Create a 3D visualisation of the array.
Main dialog for hydrophone array configuration
Array display panel showing tilt, roll, etc.
Parameters for all of the three display - pitchroll, heading and depth
JavaFX UI bits of the Array Manager.
Manager for different array configurations.
Parameters wrapper for array data.
Types of value which might occur in streamer data for height, head, pitch and roll
 where values can be fixed, default or from a sensor 
 default not applicable to depth, 0 for pitch and roll, GPS head for heading
HPR on a user display.
Label for a datablock that has sensor data.
this is nominally an add on to data units, but we do also add it to GpsData so 
 that GpsData and StremerDataUnits can both be passed to array graphics.
The main settings pane for settings up a hydrophone array.
Utilities for converting data to and from an Ascii 6 bit format.
This currently doens't seem to need to do anything.
Everything and everything to do with controlling and reading ASIO 
 sound cards.
Attenuation model.
Generates a little ARFF file with different attribute types.
Better management of new data list.
Automatically provides Tethys data for a PAMGuard datablock.
This is the data type produced by the linearAverageSpectra
Create average waveform and FFT spectrum.
Class to schedule SwingWorker tasks so that they execute one
 at a time.
Deprecated.
Module that implements the Azigram algorithm from Thode et al 2019 J.
Just a dirty hack for testing.
Module that implements the Azigram algorithm from Thode et al 2019 J.
Azigram process will take FFT data from a DIFAR sonobuoy source, demux, and
 then compute Azigram (Thode et al 2019 JASA).
Trying to standardise measures of background noise for detectors.
Catalogue data that are already backed up.
Main panel for handling, configuring and displaying backup progress.
Exception thrown when a backup operation fails.
Base interface for all BackupStream, BackupAction and BackupDecision items
 to facilitate dialog creation and display.
Class that can be returned by a PAMControlled unit which gives backup information
 which is mostly a list of BackupStream objects (or just one of, but some modules may
 have multiple streams which do not necessarily relate directly to the datablocks.
PAMGuard module to automatically back up files.
Observers of backup progress.
Class to send progress data to backup observers.
This is the central management class for each datastream that's going to get automatically backed up.
Class to assess the performance of a bank of filters and decimators.
Class to create a set of octave or third octave bands
 using base-two exact steps according to the standard
 ANSI S1.11-2004.
Contains data on the performance of a single filter band.
Whitens data in time using the methods provided by Gerald d'Spain and used in 
 Tyler Helbles paper.
Basic checks of one or more processes in a module.
Property set for all
A basic frequency-domain beamformer
Dialog for the basic frequency domain beam former parameters
Pane for the basic click classifier.
Simple layout for side bar components.
Container for batch processing results
Command to get PAMGuard to send back the batch processing status.
A set of functions to handle importing and overriding settings imported from a psfx during 
 batch mode processing in viewer mode.
Unpacked contents of a line of BCL data.
Reader for BCL files.
Provider of beam former algorithms - may need > 1 algorithm object if
 channels are grouped into separate array sections, e.g.
Class to wrap the beam former control system and extract from it 
 the algorithms that can create beamograms and then wrap each of those
 up so that they become available to the more generic bearing localiser.
This module requires audio from a DIFAR sonobuoy and will output 
 directional audio by using simple beamforming algorithms.
Beam former annotation that can be added to any data unit as an annotation.
Base process for both continuous and detect-then-localise beam forming.
Main beam forming process.
This process doesn't calculate continuous beams, but when data do arrive, 
 it calculates a beam'O'Gram for data in that time-frequency box and estimates 
 a best location based on that time interval.
The DIFAR SidePanel contains the list of DIFAR classifications, to allow
 the user to choose which classification is assigned by default.
Handle channel groupings so that the actual algorithm
 gets called with a complete array of all channels in 
 it's group in one call.
Information about a specific beam
Temporary data used during beam forming, e.g.
Observe things like updated graphics on beam former.
Data output for the BaemOGram.
Can plot lines or scaled images or both.
An advanced pane for bearing measurements.
Chi2 value for changing bearing.
Measures the difference in change between three bearing measurements.
Subclass of parameters for bearing.
Simple Enum indicating the direction the jump can be.
Classification result from the bearing classifier.
A bearing based classifier for click train.
Manager for UI stuff for the bearing classifier.
JSON string logging for the bearing classifier.
The Bearing classifier settings pane.
The bearing classifier parameters.
Display component interface for one bearing channel group.
Class to estimate bearings, with errors from a closely spaced 
 hydrophone array
Class to automatically select  / create the most appropriate type of 
 bearing localiser.
Calculate the mean of a load of angles in degrees.
Manages classification flags and/or any bespoke alteration to specific types of data units
 after an MT Classification has been processed.
Can back up anything, PAMGuard or not.
Bespoke drawing on datamap.
This class can be used within a detector that may or may not be 
 attached to a beam former (alternative is probably raw fft data).
Parameters for beam former localiser
Connection node for the binary storage module.
Interface for users of binary data as it's being read from a file.
Not just a source, but also a sink for binary data from the
 binary store.
Match data based on binary file information.
Used to read data back from a binary data file and either send
 it off to the associated PamDataBlock or hand it back to the 
 BinaryStore controller, e.g.
Not really a dialog, but displayed by BinaryStore while its making maps 
 of stored data during Viewer operation.
Class to temporarily hold an objected data that has just been read from 
 a binary file.
A binary offline data map is a datamap for a single data stream (i.e.
Handles writing of an actual binary data file.
Manage storage and retrieval of PAMGUARD serialised settings storage in 
 binary files.
The binary store will work very much like the database in that it 
 monitors the output of data streams and when data is added to them
 it writes it to the binary store.
The JavaFX GUI for the binary store module.
Set of functions used at restarts to determine the status of the binary store.
Class to handle basic UID functions related to the binary store
Binned granularity
 Will have to collect different counts for each type of call for each datablock (if there 
 are such things) so a little more complicated than might be expected.
Possible blocking modes, none, always blocked, each processed independently,
 block the first block to get the background then continue as normal, or
 reverse the first block, then continue as normal.
This is a convenience class which stores the critical non-static information about the
  data blocks being processed.
DIFAR Calculations, based on the Matlab bScanNew functions
Class to sort indexes, leaving original data intact.
Version of SQLLogging which buffers up the data units for a few seconds before writing them
 so that other parts of PAMguard get a chance to modify them before they go into the 
 database.
used to store and process information about each buoy.
Clas for saving buoystatus data into the serialised settings.
Separate out from BuoyStatusDataunit so that it can be serialized
Class for collecting data to do with individual buoys receiving data
 over the network.
Classes to convert between various wav and aif stream formats and 
 double data scaled from -1 to +1 for PAMGUARD.
Really simple calibration data class - may change at later date to 
 be a lot more sophisticated.
Contains data for a Difar calibration histogram.
Information for a specific calibration type.
Handle the calibration process for a single channel
Calibrations Process card attempts to fill in the 
 calibration data for the Quality Assurance and Process fields.
Wizard card to select call types (species) to export.
Class for controlling everything to do with the FX Camera observing the scene.
Observer to use with Pamdialog which is called whenever the cancel button is pressed.
Deprecated.
Replaced by new 3D group localiser.
Information on the Sound Trap CDET detector configuration
Sub form control is a button which sits within the layout of a normal 
 form and creates an additional Popup form when it's pressed, with appropriate
 cross referencing between the two form types.
Singleton centralised annotations types list.
AIS Data recorded in the English Channel
 by Richard McLanaghan of IFAW.
An iterator that has a bit more functionality than a basic iterator.
Functions to convert between
Interface allowing individual devices to provide their
 own channel list panel.
Calculates a Chebychev window for use in FOR filter design.
This class provides a custom renderer for a JTree that displays a
 check box before the standard open/closed subtree icon, and a text string
 for the node content.
Class for checking a storage folder exists and optionally creating it
Pane with controls to fix wave file headers.
Minimisation functions which is based on bearings rather than time delay measurements.
Class to hold basic classification data for a click train.
Paramters for the time delay based minimisation function.
Simple classifier which has a chi2 threshold
Simple chi^2 classifier parameters
Minimisation function for a localisation performed using time delay calculations.
Simple table with a check box column that only allows one check box column for 
 single or multiple selection of table rows.
Used in conjuction with the Choice table.
Interface for fragment classification.
Type of probability that will be returned by this classifier.
Provides a history window for classification results.
dialog panel to show basic information from a fragemtn classifier and to load
 up new classifier files.
String logging for classifier for the click train detector.
Some offline functions / functionality.
in an attempt to generalise the classifiers and keep them
 separate from anything whistle specific, use this
 abstract class to hold classifier specific parameters 
 and cast it into something more concrete when it's used
 by a particular class;
Class to serve up classifier types to the Whistle classifier
Class to serve up classifier types to the Whistle classifier
Click Classifiers all now share a common dialog and need to provide
 a common component to it.
Alarm object for the Click Alarm
Write a click classification annotation to a binary file
Save classification information to the database.
Class for storing clicks to binary store.
Class for managing extra binary info for click 
 detector binary files.
This is the main bearing time display for the click detector.
Annotation type for showing which click classifiers in the click detector
 passed the clicks detection, not just the first one.
Annotation for click classification
Pane which allows users to select click classifiers.
Simple panel to offer the three basic colour options for clicks - 
 colour by species, train or both.
Main Controller for click detection.
Get the FX GUI for the click control
Pane for changing click detections display properties.
dialog to wrap around clickDelayPanel for making a stand alone dialog
Pane to chnage click delay settings.
Class for Click Detector clicks.
Main click detector process.
Symbol chooser for the click detector.
Common functionality for all display windows in the click 
 detector panel
Dialog for basic click display parameters
Parameters for displaying clicks in the TDDisplayFX.
Model from Thomas webber which is a good way to test the click based stuff is working in PAMGUard.
Pane containing controls to change echo detection parameters in the click detector.
Handles efficiently plotting click FFT's on the frequency axis.
Click Train data block deletes old data in a slightly
 different way to PamDataBlock.
A localiser implemented for groups of clicks.
Class for holding classification information.
Calculates the click length.
Dialog to allow users to select which type of localisation algorithm to use.
Dialog panel for click localisation, and probably some
 other types of localisation too ...
Databse logging information for Clicks.
Deprecated.
Graphics for drawing clikc detections and classification on the data map.
Dialog for click detection parameters.
Handles the plotting of click data in the TDDisplayFX.
The click raw plot manager.
Menu items for manually classifying selected clicks in a TDGraph.
Function to remove clicks from blocks of data.
Usually a 
ButtonBase only fires once per mouse click, namely when the mouse is released.Convert a group of clicks to an average spectrum.
Pane which allows selection of different click types.
A pane to change click detector settings.
Functions for handling offline data display
 and processing.
Generate short click like sounds.
Creates and stores a spectrogram image for a wave file snippet.
The implementation of DisplayPanelProvider should be created
 as a single instance (or one for each instance of the detector 
 which has this display).
The edit template dialog allows users to create mean spectrums from marked out events.
Deprecated.
Chooses which symbols should be displayed by the click detector
Clikc symbol options which contain a few more settings tghan standard symbol options.
Class for storing click templates.
Deprecated.
Interface for a click train detection algorithm.
Main settings pane for the click train detector.
A click train detector.
Deprecated.
The click train detector data block.
Data selector which makes it possible to select events based on their type.
The DetectionDisplay information for ClickTrain detections.
Automatic click train's from the click train detector.
Functions for saving a click train.
Logs the the children of the click train detection.
Click train id params (separated out from main click params).
Offline processes for the click detector.
Run the click train detector in viewer mode, including the click train classifier.
Settings for the click train detector.
The core of the click train detector.
Manages colours of symbols.
Temporary data block for click trains.
Class which deals with click train warnings.
Graph which shows a click and associated trigger functions
Superclass for click parameters, including the ClickTypeParms and
 SweepClassifierSet classes.
The click type manager manages click types within the click detector.
Pane for changing basic click classifier settings.
A property wrapper for a basic click with JavaFX properties.
An object which provides info on and can change click types.
Display which shows the raw click waveform.
Updates click waveform from raw audio data.
Class to Copy graphics content to the clipboard and the printer
The clip generator is used to generate short sound clips around detections.
Class for calculating clip delays when clip has 
 multiple channels of data.
Really basic class for clip data blocks, which can be used by the 
 Clip display (which is now incorporated into other modules, such as the 
 DIFAR module).
Clip display panel.
A set of functions that can be used to add additional items to a 
 clip display unit.
Dummy projector to use with the clip display which is needed as a way of passing a referecne
 via this projector, to the clipDisplayPanel through to the symbolchooser.
Graphic component for a single clip display.
Settings for a clip generator - which can be triggered by any AcousticDataUnit.
Use the same localisation information as for whistles.
Some static functions to playback sound clips.
The clip data info.
The clip plot provider.
Process for making short clips of audio data.
General clip gen settings (file location, etc.
Creates and stores a spectrogram image for a wave file snippet.
This is just a dummy datablock to fool the Clips dialog into showing
 options for the clips from spectrogram marks.
Looking into making a symbol modifier that will work with the DIFAR ClipDecorations, but its
 too complicated since the decorations are only added to the individual clips.
Parameters controlling tests of a single cluster type
Make a panel which allows you to select a load of clusters.
Used in the sweep classifier dialog to get and set the code
 value from the text field.
Names of Tethys Collections.
Creates a combo box which shows a selection of colours or colour gradients.
Interface that enables the colour manager (PamColors) to change the 
 colour of any swing component.
A series of functions for creating arrays of colours
A colour map contains information to create a colour map and the correct CSS to colour components.
The colour range slider shows a linear colour gradient between two thumbs
 with the rest of the slider coloured by the minimum and maximum of the colour
 gradient.
A range slider which shows a colour gradient between two thumbs.
This UI is designed to allow a user slide to thumbs defining the max and min amplitude for a colour scale.
Deprecated.
Interpret commands which may have come either from a terminal or from a Network 
 (e.g.
Interface for PAMGuard plugins.
Draws a compass given the rotation of the map in degrees.
Class definition for a Complex number type.
Class for handling arrays of Complex data.
Comparator to compare complex numbers first by real part, then by imaginary part.
shows multiple data selectors in a pane.
A hiding dialog panel for use with multiple display overlays.
A tabbedhidingpane which includes a settings button on the tab.
The Class ConfigurationDialogSettings holds parameters about the
 configuration dialog box that are persistent from one invocation
 to the next.
The main rectangle nose for the ConnectionGroupNode.
A node which holds other connection nodes, minimising the space they use in
 the data model.
A sub connection pane with a single plug.
Line which connects a plug or socket to a ConnectionRectangle or other ConnectionLine.
Listener for connection events with ConnectionShapes within a ConnectionNode.
A connection node is a node that has a parent and children
The main body of the connection node, i.e.
Creates connection nodes from both saved parameters and when new modules and/or 
 as structures are added manually.
Information on structures used in the data model.
Useful functions for connection nodes.
A pane which allows users to drag rectangles around and connect them
 together.
This is how you start a JavaFX 9+ application if you are not using modules.
A connection structure is a connection node which is a utility rather than a node.
Connection structure types.
A ConnectionNode which holds other connection nodes.
Simple application to test a connectionPane;
Interface for any interactive shape in a 
ConnectionPane.Listener for node connector events such as dragging, being detected etc.
What to do when multiple contour patches are found in a single detection.
Data select creator for a single logger control.
Data selector for a single logger control.
Main editor for a particular control.
Convenience class.
Sheet of control properties for a particular control title.
Title panel for the control editor.
Class definition for a x,y coordinate number type.
Interface for algorithms that can provide a coordinate choice.
Enumeration of the Name field in nilus.Localize.Effort.CoordinateReferenceSystem
Within Tethys, these are only ever used in their String form.
Within Tethys, these are only ever used in their String form.
Class definition for a x,y coordinate number type.
Copy a file from one location to another, trying to preserve any sub folder stucture 
 from the source to the destination directories.
Imports or exports data from an external database.
Advanced settings pane for correlation
Calculates the correlation value between subsequent clicks.
Parameters for correlation MHT variable
Manages correlation values and ensures  correlation calculation between 
 two data units is stored and not calculated multiple times.
Holds the UID of a click and the correlation value.
Holds the maximum value for the correlation function and lag value.
Wrapper class for an input stream which counts the number of bytes
 read, skipped etc.
Options for improved display coupling and inter-display zooming.
Binary storage for CPOD data.
Holds CPOD click train classification.
Enum for species classiifcation from CPOD/FPOD click train detector.
CPOD or FPOD click.
Data block which holds CPOD and FPOD detections.
The click train detector data block.
Base class for a click train data unit.
Deprecated.
CPOD control.
Basic filter for CPOD data.
Data selector for CPOD data.
Creates CPOD data selectors.
Pane for changing the CPOD data selector settings.
Swing data selector
Parameters for the CPOD data data selectors.
Data info for showing a CPOD waveform.
Deprecated.
A CP1 along with it's CP3 file
Imports FPOD and CPOD data and converts into binary files.
Deprecated.
Deprecated.
CPOD plot info.
The plot provider for CPOD data.
Read CPOD data.
Holds an CPOD header information
CPOD FX based settings pane.
Logs the the children of the click train detection.
The settings pane for CPOD detections on the TDGraphFX.
Some useful utility function for CPOD and FPOD data
CPOD file types
Class to monitor Thread CPU usage over multiple calls.
simple class for passing information about data map making
  from swing worker to dialog.
Log error strings based on information coming back from the cRio through 
 the SSH window.
A List of strings returned by the cRio which indicate an error of some sort.
A set of cross reference items that may need to be updated.
Functions for cross reference updating.
Base class for CSV data unit export.
Export to CSV files which are RAVEN compatible.
Export data units as .csv file
Extra results or information for each CTDataUnit from the click train algorithm.
Logging for CTAlgorithmInfo.
Handles algorithm info logging.
A classification results for a single click train.
Process which classifies click trains.
A classifier which is used to classify groups of detections
Handles GUI for the classifier algorithms.
The classification manager for the click train detector.
Runs only the click train classifier on the data (does not recalculate click trains)
The basic classifier pane.
Classifier params class.
Pane which allows users to create and change settings for multiple click train classifiers.
Types of click train classifier that the click train detector can use.
The click train data selector.
Data selector for the click train detector.
The click train select pane in JavaFX
Specific data selector parameters panel for the click train detector.
Data unit for a click train which holds a series of data units grouped into a click train.
Swing based graphics for drawing click trains on the map.
Base class for a click train data unit.
Handles GUI interactions with each click train detection algorithm.
The JavaFX GUI for the click train detector
Basic localisation info for the CTDataUnit.
Process which, if conditions are met, attempts to localise a click train.
Parameters for Click Train Localisation
Sub class of TM annotation type which has some extra functionality for 
 filtering click trains before target motion localisation.
Settings panel with some additional settings.
Process check for the click train detector.
A click train offline dialog which ensure that the click train offline
  tasks cannot be run at the same time because they have different parent data blocks..
Class to add to a window in order to intercept and interpret Ctrl key
 strokes.
Parameters for click train data selection.
Swing holder for the CT side panel
Average spectrum plot for click trains.
The PAMControlled unit GUI bits when using Swing.
A template classifier which uses a click template to essentially cross correlate
 the spectrums.
The main click train classifier graphics.
Manages warning for the click train detector
Class for managing PamCurosrs - returns the previous one
 if at all possible, but creates a new one if the connection 
 has changed.
This class is used to track the time (both sample and milliseconds since 01-01-1970), and the value
 of a curve.
Class that makes files of any type from 
 a single starting point - strips of the bit
 after the .
Class to hold various types of information about a sensor.
Class for unpacking XML metadata files created from Mark Johnson's D3 software
Class for converting channel indexes and numbers to hydrophones
 for the main PAMGAURD DAQ.
DaqDeviceDescriptor class mirroring the C version for use with JNA.
Settings pane for a DAQ specific nodes.
Data unit containing information on run starts and stops.
Abstraction to multiple data acquisition devices.
Interface for External DAQ Systems
Odd little class that tries to stop all of the settings for every possible
 daq system being output to xml by only accepting them if they are the selected
 system type of at least one daq module.
Some kind of data annotation, i.e.
Something that can tell us a little more about 
 a type of DataAnnotation, such as how to store and display
 and edit the data in that annotation.
Returned by datablocks, though default is null, to give information on how
 automatic the process was.
Run some tests to try to work out why it's so much slower to load 
 data when the query is based on a non indexed column compared 
 to an index one, even though the actual query execution time 
 is a small fraction of the total time.
Works with a DataUnitFinder to match PamDataUnits by
 database index.
Table of Detections documents for a single PAMGuard datablock.
Compare two datablocks by name so that they can be easily sorted.
Class to return lists of species codes or names for a datablock.
Dialog to edit ITIS species codes for a datablock.
Manage species conversion for a single datablock.
Species map for a specified data block
Data about a PAMDataBlock.
Generic class for copying data from binary data files to database files.
Class for counting events - e.g.
A datagram is a set of data which summarises the real data content in quite course bins
 of about 10 minutes (though this may vary).
Generally, Datagram data look a bit like very course spectrogram data, except that they are designed to show data density as a function of frequency instead of energy density as a function of frequency.
They can be calculated automatically from many types of data and are stored in the binary index files for easy access when mapping data.
Generally, Datagram data look a bit like very course spectrogram data, except that they are designed to show data density as a function of frequency instead of energy density as a function of frequency.
They can be calculated automatically from many types of data and are stored in the binary index files for easy access when mapping data.
DatagramManager needs to return more than just an image - it also needs
 the start and end times of the data, which will have been extended out to
 interval boundaries.
Interface to add to OfflineDataMapPoints so that they can serve up
 a datagram.
Progress data on datagram creation
Interface implemented on a PamDataBlock which is able to provide 
 Datagram type data.
Class to pass around a few bits of information about a datagrams scale
This class is used to define what data to import and how to import it.
Functions for a data input store.
Provides a set of functions that can check and repair data.
Class to manage minimum data storage times for all datablocks.
Info about a specific data line within a TDDataInfo.
TDDataInfo objects can't be serialised since they contain 
 references back into datablocks and everything else in PAMguard, 
 so have to hold a summary of what's in each one to save into psf files.
A pane which shows progress bars bars for various data load tasks in PAMGuard.
Used in a simple store of datablocks queues for loading.
The data map appears only during PAMGUARD viewer mode and is the root of
 a navigation system allowing the operator to scroll easily through large
 amounts of data.
Interface for additional functions of the datamap GUI.
Interface for module specific data map drawing.
Effort provider for most types of datablock that bases itself off one of the
 datamaps, binary (preferred) or database.
The GUI for the data map.
Holds information whcih can identify a data map.
Layout the DataMap giving less space to the hidden components
Class to allow datamaps to update and notify the data map viewer each time 
 they get additional data added (or even removed) as we start to use datamaps
 in real time.
Pane which shows users all data currently stored in binary files and
 databases within PAMGuard.
The main panel managed by DataMapControl
 In reality, this does most of the actual controlling.
A scroll bar which shows a summary of the data.
Settings pane which allows users to change settings for data maps.
No real idea what this is for, but it's going to get passed to DataBlocks along with a list
 of selected data units, so that they can return data unit bespoke menu items
Sub class of ConnectionPane to deal with modules being dragged from 
 module list to pane.
A pane which shows a list of all the available modules.
The data model pane allows users to change PAMGuard's data model.
The primary function of the setting class is to save the positions of the
 modules nodes.
The data model setting manager handles building and saving the data model
 connection nodes and structure based on saved data and the current PAMGuard
 data model.
Controls the colour of lines.
Functions for a data output store.
Standard classed which are attached to a datablock and can be 
 used to select certain types of data unit (e.g.
Called when a data selector changes.
Something that creates data selectors.
Dialog panel to wrap around a standard dialog panel from a data selector.
Dialog panel to wrap around a standard dialog panel from a data selector.
Data select parameters.
Panelette to go into the main DataPanel to show the data for a single data
 stream
Interface to set  / control limits on data times.
Generates settings panes for different data transforms.
Simple class to hold a data type and a data unit.
Data units that can be plotted on the FX 2D displays, such as FFT data, beam former 
 output, etc.
Class for data unit basic data.
Little bit of data to add to all PamDataUnits
 when they are read back from a file which will 
 be used to say which file they were from, whether they
 need updating, etc.
Class for finding data units in a reasonably controlled and
 organised way.
Class for matching data units to a set of other 
 criteria.
Swing based information panel giving information about a data unit
 which can be incorporated into a larger dialog.
Pane which allows users to select a data and time using various spinner.
Class to handle regular commits of the data when Auto Commit is not
 set.
ConnectionNode for database module.
Database system for accessing data in just about any type of odbc database.
Version of DBControl for loading settings at program startup.
Version of DBControl for normal use while PAMGUARD is running 
 - reading and writing of data
Simple FX implementation of the database GUI.
Display panel for dBHt data - can be incorporated into a spectrogram 
 plug in or a stand alone display window.
Dialog which shows the progress in data map making.
Pane which shows progress in mapping the database.
Pane for selecting a database.
Functions for writing database table schema in a format
 compatible with the Tethys schemas.
Load all of the settings from a database and store in a single class.
simple abstract class for any extra database functions which 
 do not easily work with PamDataUnits and PamDatablocks
Text area with a character limit
Class containing functions for managing the database connection.
Some standard queries we're going to want to make from various
 parts of the system as the user interacts with the GUI.
Class to remove DC offset from audio data.
Information on the data a detection can display.
Information on the type of data that can be displayed
The different types of graphs that can be displayed
Pane which allows users to select parent data blocks.
ComboBox which holds the options for different plots to be displayed.
Provider class for detection display data.
Extends the standard plot pane;
Holds information on the scale (e.g.
This class implements the decaying average normalizer/estimator for the likelihoodDetectionModule.
This class is used to convert signal and background time constants to ExponentialAverager alpha values.
Deprecated.
New decimator processe, based on the DecimatorWorker class
 which can be use to upsample as well as decimate.
Settings for the decimator.
FX GUI for the SoundAquisition module.
Job to run the actual decimation.
Test the defualt models.
Default hydrophone parameters.
Default parameters for different species for the MHT click train detector.
Pane which allows users to view and select default models.
Default label format for range slider.
Some default click templates for the classifier.
Default data unit matcher for use with 
 DataUnitFinder
 Matches clicks on time and possibly also channel/sequence number
 depending on the number of arguments supplied.
Default templates for the template click train classifier.
The default spectrum templates.
Functions for attempting to efficiently prep data for correlation using a variety of
 pre-processing methods.
Generic parameters associated with delay measurement.
A classifier based on the delphinID method which uses whistle contours to predict
 dolphin species.
Settings pane for delphin ID.
Allowed data input types for DelphinID.
Handles transforming whistles or clicks into whichever transform is required by delphinID.
A bunch of utility functions that a re useful for testing and running
 DelphinID models
Subclass of Abstract whsitle data unit for loading whistle contours from .mat files.
Holds a whistle group and some extra information on sample rate, fft length and hop and the start of the processed file.
Subclass of Abstract whsitle data unit for loading whistle contours from .mat files.
A delphinID test suite.
The delphinID worker.
DelphinID user interface components.
Observer interface for DIfar demultiplexing.
options for Deployment export collected by the export Wizard.
Deprecated.
Functions to gather data for the deployment document from all around PAMGuard.
Class to give a general overview of all the effort in PAMGuard which will form the
 basis for Deployment Documents.
Hydrophone depth may be read out in a number of different ways and may 
 arrive from a number of different sources.
Panel containing the three test entry fields for nilus.DescriptionType
Class to handle warnings from deserialisations which occurr when classes no longer exist.
Deprecated.
Detection plot which can display single or groups of detections.
This class filters events on a channel if the time passed since the last detection on the same channel
  is less than a minimum interval.
Class for grouping any type of data together.
A detection plot display with convenience functions to set any type of data unit.
A group detection display with all the bits added to allow the display to be used in the FX GUI as
 a stand-alone user display.
Receives detections, which may come from multiple channel groups, which in 
 the case of the click detector means they may not be in order (or for 
 any other detector in fact) and may have come out of multiple threads, 
 so can get dead messy.
Listener for detection group.
Deprecated.
Localiser which deals with detections in which one or more groups of
 detections are being localised.
Options that get passed into a detection group localiser.
A summary of information associated with some marked data units.
Panel to show a table of data on all DetectionGroup data units.
Basic paramter for whistle group transforms.
This class is used to uniquely identify detections.
Interface to allow a bit of flexibility as to how different 'detector' outputs are 
 matched with generated QA sounds.
This is intended to be overridden by any class which wants to monitor the progress of a detection match.
An interface to satisfy basic plots.
A detection display plot usually plots a single detection.
Parameters class for the Detection Plot Display
The detection plot projector deals with all co-ordinate conversion from screen to the pixels
 and vice versa.
Deprecated.
Functions for handling output of Detections documents.
This class is used to track statistics about a running detection.
This class is responsible for writing ThresholdDetectorDataUnits to the database (if configured).
General interface for components which are going to get included in alarge dialogs
Reinstated Target motion add-in as used by the click detector.
Modified version of the map panel so that some of it's drawing can be enhanced / reduced
 to suit the needs ot the target motion dialog.
Scroll pane for which we can set a maximum height in characters for the standard font.
Sits at the top of the DIFAR queue panel
Some small changes to the generic class for copying data from binary data files to database files.
Data selector for DIFAR data units (displayed on the map)
 Initially just a copy of the Whistle invalid input: '&' Moan Data Selector.
This is a main panel which will hold as many other panels as 
 we need for the DIFAR display system.
Display window for viewing and selecting bearings from difarDataUnits
 Contains a spectrogram, the DIFARGram (i.e.
Localisations from a single sonobuoy are bearings originating from the 
 sonobuoy.
has a case block at bottom of class to copy/paste into methods
Structure to hold data returned from the native C call
The DIFAR SidePanel contains the list of DIFAR classifications, to allow
 the user to choose which classification is assigned by default.
Database storage of DIFAR information.
Set the symbols for DIFAR Time-Data plots.
A control panel which will most likely sit in the right hand 
 edge of the DifarGram display, but keep separate in case 
 we decide to put it somewhere else at a later date.
Spectrgoram projector for drawing directly onto the spectrogram display.
Whistle fragmenter which completely discards all regions
 which have more than one peak in any slice.
Functions to get and display disk space in sensible units.
The display connection node changes the colour of connection lines which 
 connect from parent nodes.
Panel to go in the top of a clipDisplayPanel which has all the controls needed
 to set contrast, colour, etc.
This is a simple interface which should be implemented in the controlled unit of a localiser.
Singleton class to manage display names and make sure they are unique 
 across the entirety of PAMGuard .
Standard layout for the queue part of the display
A standard display panel that can be incorporated into other displays, eg.
DisplayPanelContainer is an interface implemented by graphics components 
 which have the ability to incorporate DisplayPanels from other Pamguard
 modules.
Plug in panels for the display.
DisplayProviderList is used to manage a list of possible providers
 of display panels that may be incorporated into other displays.
Data stored in a list for each component of a User Display Panel.
Deep learning results annotation.
Saves deep learning annotations in binary files.
Log deep learning annotation to the database
The DL annotation symbol chooser
Annotation type for data from the matched click classifier.
The classifier model.
Model specific GUI components.
Selects which type of DL classifier to use.
The deep learning classification process.
A class name along with a unique identifier number.
Manages assigning class names and unique identifier numbers for each class type.
Module which uses an external deep learning classifier to identify any data
 unit containing raw data.
The JavaFX GUI for the DLControl...
Score a data unit with a deep learning annotation.
Creates a data selector for the deep learning module.
Data selector of DL data units.
Paramters for the DL data seelctor
A data unit created from classification results of DL model.
Datagram showing the raw model outputs form the classifier.
Manages default models.
A detected DL data unit.
Saves and loads binary data for classified Deep Learning data units.
Holds classified data units from deep learning model.
The datagram provider for classified data deep learning units.
Graphics for the detected data units
Allows the deep learning results to be plotted on the TD display.
The DL detection plot provider.
Listener for downloading files.
Manages the downloading and unzipping of models.
The detection graphics for the DL localiser.
Data block which holds deep learning detections derived from groups of data units.
Plot results from deep learning group detections.
Logging for deep learning detection groups.
Logs the the children of the deep learning detection group.
Symbol modifier for DL groups
Contains both a list of transforms and preview image of the waveform, spectrogram or other visualisation of 
 the transform.
The localisation for a DL data unit.
A default model that can be loaded from a file or a URL.
Holds classified data units from deep learning model.
A pane which allows users to select a model and then loads the model on 
 on a different thread, showing a progress indicator.
Runs the deep learning model and performs feature extraction.
The offline process.
The parameters for the deep learning prediction plot.
Decides whether a prediction has passed a threshold to be used to create a new
 data unit.
A data filter which filters data by the maximum prediction value
 for different classes.
Parameters for filtering by the minimum prediciton value.
Swing panel for Deep learning predicitons.
Plot the raw probability information.
The DL detection plot provider.
Settings pane for filtering deep learning results by class prediciton.
Binary storage for the all the model results, i.e.
Saves the classified DL data units to a database.
JavaFX pane for the deep learning data selector.
Swing panel for the deep learning data selector.
The settings pane.
The DL side panel for the Swing GUI.
Status reporting for the deep learning module.
The DL symbol modifier.
Parameters for colouring symbols by deep learning probability.
Swing symbol options for the annotation pane.
Creates a que for grouped data units for classiifcation.
Shows preview spectrogram or waveform for a DL transforms
Settings pane for all DLTransforms
Pane which allows users to create a series of transforms for 
 raw data before inputting into a deep learning model.
DL transforms pane launcher - HACK to get JavaFX to work in Eclipse for some reason.
Test the dl transfroms pane.
Basic information about a document that can be used to 
 make document lists.
Map of all documents, with links or labels of Documents associated with this project.
information about a document AND the nilus object to go with it.
Generate short click like sounds which consist of an unwindowed single
 cycle sin wave.
Class for filtering double of float values in a database table
A mouse adapter which allows panning of the display.
DragResizer can be used to add mouse listeners to a Region
 and make it resizable by the user by clicking and dragging the border in the
 same way as a window.Control field with two spinner.
Classifier which returns a random results.
Converts a string into a time.
Status information on how far conversion progress has gone.
Information about dwv files extracted from 
 Sound TRap xml log files.
Reader for dwv files.
Interface for implementing dynamic settings panes.
A dynamic settings is a settings pane which allows users to change settings instantly.
An echo detection system can provide everything there that is needed to decide whether clicks 
 are echoes or not.
Interface to classes which do the actual work of detecting echoes.
Left hand side of the dialog which displays all the components which can be 
 added / removed.
Record scroll effort.
functions for working out total effort and periods of recording from a variety of sources, which may be
 the recordings database, binary files, etc.
Singleton class to provide management for all types of Effort in PAMGuard.
Handle problems when binary and raw effort don't add up
Set of functions that can be returned from any datablock which can 
 give information about effort.
Filter which checks whether possible track might be electrical noise.
Draws an elliptical error.
A 3D elliptical error.
A totally empty table definition.
Class to hold new emulated data
Handles generation of a single buoy emulation.
As with the binned Detections, this may generate multiple encounters
 at the same time for different types of sounds.
Window that only scales the ends of a waveform - suitable for calls such as whistles 
 where we want to leave most of it alone.
Settings pane for the Ishmael detector.
Parameters for the energy sum detectors.
interface which can be added to an enum so that it provides tooltips as well as toString.
Class for calculating errors from localisation data.
Functions for putting together an event, similar to functionality within
 the click detector.
Event check repair task, so it can be called from batch processor
 since events are probably all in memory, ignore normal ways of 
 accessing data and do own things.
Reinstated Target motion add-in as used by the click detector.
Deprecated.
Reinstated Target motion add-in as used by the click detector.
Deprecated.
Reinstated class to rotate and transform an event so that it's track lies as close
 as possible to the x axis.
Simulates some clicks to test the MHT algorithm on.
Create an example sound.
The example sound factory
An example sound type.
Quick test of how long exception handling really takes.
Exits PAMGuard.
This is a simple exponential (decaying) average.
Detections handler already has a very  system for looping through 
 data which is a bit different to the standard one in offline task, 
 so an going to override the main background function and do it our
 own way!
Create a pane to export data.
Manages opening settings dialog and saving settings for both FX and Swing GUI's
Some functions useful for exporting manually annotated files.
Allows files to be copied to clipboard.
Parameter for the exporter.
Handles an offline dialog for processing offline data and exporting to bespoke file types.
Export data to a file type.
Tests for export functionality.
Slightly standardised panels to put into the export wizard
 so that it's easy to work out which 'card' we're on, etc.
An extension structure is a structure which allows users to clean up connection nodes.
Handle data from multiple external mouse handlers returning 
 an OR of their response to the various functions.
This is an external mouse adapter class which should work with both Swing and Fx
 Mouse events.
Interface for showing a pop up menu on a mouse action within an ExtMouseHandler.
Simple implementation of a JavaFX pop up menu for a an ExtMapMouseHandler.
Fancy button which has a normal button AND a drop down 
 for other web client pages.
FFT Wrapper which uses the edu.emory.mathcs.jtransforms.fft
 transforms library for the actual FFT calculations.
This has the same functionality as IirfFilterm.
Deprecated.
Class to better handle Complex FFT Data, including the FFT length along with the
 Complex data - this is important since FFT length cannot be extracted from the 
 length of the Complex array since it's sometimes only stored half the fft length 
 not the entire thing.
Exception thrown by the FFTDataOrganiser.
Interface to indicate that a data unit can provide it's own FFT data.
Interface to indicate that the data units contained within this datablock
 can provide their own FFT data.
List of FFT Data provided by the FFTDataOrganiser.
Functions to create blocks of FFT data for multiple channels as needed by
 various localisation algorithms in PAMGuard (e.g.
The FX GUI for the FFT module.
List of possible input types for the FFTData Organiser:
 
FFT Data from an FFTDataBlock
RAW Data from a PAMRawDataBlock
FFT Data from within a data unit (e.g.
FFT Data from an FFTDataBlock
RAW Data from a PAMRawDataBlock
FFT Data from within a data unit (e.g.
Settings pane for the FFT module.
Plots the spectrogram of a detection which already has a calculated spectrgram, e.g.
Plots spectrogram data.
Handles efficiently plotting click FFT's on the frequency axis.
Settings for displaying raw data clips on a frequency time display.
The settings pane for the FFT plot.
Transform pane for Fourier transform
Shows  the file date.
This was WavFileDataMapPoint, but can be used for any file types with OfflineFileServer.
Extract file dates from the file name
Simpel dialog component which can interact with a file date.
Pane which allows settings for a FileDate to be changes.
Functions connected with storing data files.
Used by FileInputSystem
Implementation of DaqSystem for reading data from audio files.
Create a list of files of a given type within a folder structure.
Information about a list of files.
Has a single callback to get the results of a file list worker.
Class to list files in one or more directories.
Information on a file path or folder path that can be used with the 
 backup system
Swing component that can be used to set a file location for source or destination files.
This is generally used as a temporary class for calling Copy and move actions since
 by necessity the source and destination locations are held in different places.
Parser which calculate the time from a file's name.
Class for breaking a file name down into it's constituent 
 parts.
Playback of sound from wav files.
Interface to device types that can be used to play
 back sound when acquisition is reading audio files.
The settings pane for file playback.
information added to a FileDataMapPoint when only part of the file
 is associated with this map point.
Filters raw data using a specified filter.
Create a more generic dialog panel for the PAMGuard 
 filters which can be incorporated into larger panels
 if desired.
This interface abstracts the consumer of filtered event objects.
This class tracks detections (after the DetectionFilter has done its business) when they are active, collecting statistics such as
 startTime, duration, and the peak time/energy values.
FilterPArameters for use when the filter is on it's own (within a FilterController)
 rather than combined into some other detector.
A panel that can be included in various places which displays a list 
 of filter properties.
Settings pane for filter module.
Slider for the high pass filter sound out process.
Pane for a waveform filter.
Arbitrary response filters.
FIR filter method, filter design uses a Cheychev window function.
Single list of detections, all in the same list so that 
 they can easily be sorted prior to final grouping....
Common interface for the results of fit tests, e.g.
A modification of JLabel which can only grow, i.e.
Symbol modifier which cannot modify anything....
Opens a Flac compressed audio files.
User: hansolo
 Date: 16.04.14
 Time: 22:07
Pane which flips to show "back" and "front"
 User: hansolo
 Date: 16.04.14
 Time: 22:06
A pane which can flip to show another pane (referred to as the advanced settings pane).
Read out a Fluxgate World 3030 shaft encoder.
JavaFX pane for the folder input of the sound acquisition.
Control parameters for FolderInputSystem
Read multiple files in sequence.
Description of the Class
used to make sure counters are unique based on table name
Layer that sits between the form description and the actual edit
 dialog for altering a form.
Class to hold plot options for a single form.
Class to provide a panel of plot options for a single Logger form.
Manage a bit of persistent data for a single Logger form description.
Controls the settings for a single Logger form description.
Functions for handling hotkey events.
Easy class to allow other parts of PAMGuard to monitor some or all 
 Logger forms.
Some general parameters for PAMGuard Viewer mode
The top-level Logger GUI element -- a Tab in the swing GUI.
Utility class to return details of a data unit found on a graph.
Utility class to return details of a data unit found on a graph.
Wrapper class to hold a data unit and some click information.
Functions for importing FPOD files.
Holds an FPOD detection.
Holds an FPOD header information
Holds FPOD wav data.
Parameters class for fragmented whistle classification.
interface for classes which are able to parameterise a whistle fragment
Store for lots of whistle fragments during whistle classification
A simple control which has a high and low pass editiable frequency spinner.
Creates a standard panel to display frequency resolution information
A set of static functions for formatting frequency values in a common way, 
 i.e.
Format frequency string converter.
A 
Graphics2D implementation that writes to a JavaFX Canvas.A graphics configuration for the 
FXGraphics2D class.A graphics device for FXGraphics2D.
Utility functions to load image files into Canvases to use as icons in 
 displays, etc.
Class to get called early on which will initialise FX 
 so that it can be used within the Swing GUI.
The advanced pane for the generic classifier.
Generic dialog for the backup system that can take any 
 number of  BackupFunction items, be they streams, decisions, actions, etc.
Generic data plot info which can work for a wide variety of data types.
A very generic data plot provider.
A generic model - can be load any model but requires manually setting model 
 *
Test the generic classifier.
Import and export settings files for the generic classifier
A Data Info which plots 1D line data i.e.
Settings pane for the generic pane.
Parameters for the deep learning module.
Functions for saving and loading generic model metadata information.
UI components for the generic model UI.
Generic model worker.
Settings pane which holds the symbol options from the data block of the plot info.
Generic TOAD calculator which does it's best by any type of sound.
Dialog panel for a generic TOAD calculator.
General parameters for detection TOAD measurement.
Get XML settings from one or more modules.
Global parameter pairs set at startup time.
These are the arguments passed to the command line.
These are the arguments passed to the command line.
Defines the assumed medium that sound is propogating through i.e.
The type of medium
Manages the global medium @see GlobalMedium
Stores parameters for the current medium.
Some global management of PAM symbols, in particular needed for superdetection
 symbol options when a supdet symbol manager says to use colour by superdetection.
Class owned by PamController which manages time corrections from NMEA sources and / or NTP servers, etc.
Recreate functionality of SIO function GPL_Quiet.
Note on times for GPS data ...
Add a bit of extra functionality to GPSDataBlock so 
 that it can check new GPS data are 'reasonable'
 and flag bad ones.
Class of utilities to help match times to GPS locations.
This is more complicated than the stramerDataIterator since it needs to 
 combine data from two sources.
Terminal component: Use bitmap font to render
3D grid for localisation.
Parameter control for all 3D grids.
Deprecated.
Deprecated.
Deprecated.
Listeners for changing selected detection in the GroupDetectionDisplay.
A ComboBox which shows a selectable list of channel groups.
The grouping part of a grouped source pane which can be used
 separately from the entire grouped source pane.
Interface to add to datablocks which have channel grouped data.
Temporary holder for raw data with a pre defined size.
Pane which shows a combo box to select a parent data block and has channel 
 check boxes which can be grouped.
Specific parameters which always to with a GroupedSourcePanel
Information about a channel group used by the DetectionGrouper
Used to store localisation results if a group of PamDetections (rather than one) is used.
Provides information useful for localisation from groups of detections.
Result class for the a group localiser.
Many classification functions need the mean values of
 each parameter from a group of training data.
Represents the parameters that make up a guard band, used as
 input to the Likelihood detection algorithm.
The GuiFrameManager manages multiple PamGui frames, each 
 of which may contain multiple tabs of module information 
 and a side panel.
Information about GUI frames.
information from one point in a harp header.
Enum of heading types (mostly for track output in Deployment documents)
Can be used to get notifications into any bit of pamguard when things are changed in 
 one of the sliding dialogs.
Something similar to the hiding panel, but doesn't get put into an existing 
 panel, but rather floats over the top.
Hiding pane which can be added to any node.
Class for a hiding, possibly sliding panel to hold things like
 the side bar, top control panel of the clip display, etc.
More sophisticated side panel container which can 
 close itself down to a very small strip to make 
 more room for main display items.
A hiding tab is is used in a HidingTabPane
The hiding tab pane has tabs which collapse in size rather than the tradition tab panes in which switching a tab simply 
 removes the current tab from the pane.
Functions to calculate the Hilbert transform of data.
Doesnt' store fragemnts individually - just adds their data to a series of
 histograms and whenever the parameters are requried, it estimates those
 parameters based on the contents of the histograms.
Provide a basic display panel for showing data from any number of
 PamHistograms, either in a single panel, or as a series of sub panels.
Holds hover data.
Atlantic version of Google's humpback whale network.
Panel for the ArrayDialog to show a diagram of the array
Panel for the ArrayDialog to show a selection of hydrophone arrays and
 listed details of the currently selected array
Dialog for adding / editing the details of individual hydrophone
 elements in the array.
Class for importing hydrophone data from external file and saving to database.
HydrophoneLocator is an interface for objects that can work out the true positions of 
 hydrophones based on any or all of the following information
Class for handling different hydrophone locators.
Methods for getting streamer origins.
Property class for a hydrophone object.
The settings pane for a single hydrophones.
Table which allows users to add and edit hydrophones.
Hyperbolic localisation attempts to localise using the INVERSE problem.
Keeps a copy of the raw position vector for hyperbolic localisation.
Hyperbolic localisation using methods described in Gillette, M.
Holds settings for hyperbolic loclaiser.
Holds settings for hyperbolic loclaiser.
Hyperbolic settings pane.
Adv IDI chi2 pane allows.
A data acquisition system that uses an Ocean Sonics icListen to acquire the data
 to be streamed to and used by PAMGUARD.
Creates a click ICI histogram display add-in
Parameters for the IDI Display
Calculate the chi2 value based on slowly changing inter-click-interval.
The IDI Chi2 Pane.
The IDIChi2Parmas.
Classification result from the bearing classifier.
An inter-detection interval based classifier for click trains.
The IDI classifier graphics.
Holds IDI data.
Holds some basic IDI info on the click train.
Calculates the inter-detection interval (IDI) (usually clicks) interval for a set of data
 units based either on the time stamp or a more complex sample rate and cross
 correlation calculation.
Pan which allows users to select IDI measurement limits for click trains.
A panel which allows users to manually add a heading and roll angle.
Pane which shows image angles and animal bearing and distance.
Time offset for PamImages.
Interface for reading image timr from filename.
Text field which can immediately respond to text being entered and 
 update a corresponding value in a PAMGurd control structure.
Generic Dialog for opening a file.
This class brings together the abstract classes and display componwenets which create a data import system for PAMGUARD.
General PAMguard class for managing import and export of specific Java object types.
Pane for importing an exporting .pgtf settings files.
Simple dialog asking the user to input a date for GGA string input.
Class to take external GPS data and record in a database table.
Simple dialog which returns a path to get GPS data from;
Import a template from a csv file.
Import a .mat file of a click template.
The IMU module may have multiple ways of aquiring IMU data.
Dialog box for IMU calibration values.
Sets up a thread to import .csv files and save data units to a database.
Import IMU data from .csv.
Uses sensor information, heading, pitch and roll, plus GPS co-ordinates and height to calculated the position of an animal.
The Inferno colourmap
Class to conduct an infinite sort of data.
Wraps multiple Infinitesorts to provide something akin to 
 Matrix sorting.
Extension of InfiniteSort to also keep a running total of mean squared
 values.
Panel of information near top of main frame.
Instrument identity panel, contrians additional fields required by Tethys.
Integer symbol modifier.
Choice box which allows selection of interpolation options.
Dialog component used by both the streamer and the hydrophone dialogs
Interface for an interpolator.
Radio buttons which allow selection of interpolation options.
Class for filtering integer values in a database table
Plots the raw Ishmael data (i.e the detection values and noise)
Brings together groups of IshDetWrappers
Beginning of a binary data source for the Ishameal detector to save the 
 Ishmael data so new peaks can be picked out.
Control for the Ishmael Detector modules.
Basic detection on a single channel for the Ishmael det/loc.
This has information for a single IshDetection that indicates (1) whether
 the detection is an 'anchor' detection within this channel, i.e., whether
 it is the principal one of a group of multipath detections, and (2)
 whether the detection is an anchor detection across channels, i.e.,
 whether it is the anchor detection on a specially-designated reference
 channel.
Standard data unit for Ishmael detector output.
This is the abstract superclass for all the "Ishmael detectors", i.e., the
 detection PamProcesses that use a detection function and threshold in the
 course of doing making detections.
IshDetGraphics displays a detection function from an Ishmael-type 
 detector (EnergySum, MatchFilt, SgramCorr).
Groups togetehr a series of IshDeections.
Dialog to change Ishmael display settings on the spectrogram plugin.
Ishamel display parameters for the Spectrogram plug in.
Energy sum pane.
Plots a whistle contour over.
Binary data for peak binary data source.
Whenever one of the IshLoc routines calculates a location
 (bearing, X-Y position, etc.) it generates an IshLocation,
 which is then passed to the rest of PAMGUARD via
 IshLocProcess.outputDataBlock.
This implements the two locators from Ishmael.
Two-hydrophone bearing calculation.
Two-hydrophone bearing calculation.
This is a superclass to a "real" localization class.
Plots Ishmael detections on the TDdisplayFX
The plot provider for Ishmael detection data.
Plots the raw Ishmael detection output.
The Ishmael raw detection output plot provider.
Process for choosing a symbol to represent IshLocalizations on the
 map (and elsewhere).
FX implementation of the Ishmael detector.
Generic process which picks a peak from any of the Ishmael detectors, e.g.
Spectrogram correlation pane.
IshTrack may not need to hold any location information itself - it mainly
 holds a list of IshAnchorGroups, each of which has a PamLocation object, the
 contents of which will make up a track.
Functions associated with pulling ITIS information from the databsae.
Some MR defined ITIS codes for non animal sounds.
Global flag set at runtime for Jamies development flags.
The 
JFontChooser class is a swing component 
 for font selection.Converts arrays of numbers into string representations which are a little
 bit, but not entirely json like for writing to text fields in the database.
Class to hold data that will be converted into a json-formatted string.
Dialog for smoothing kernel options.
Classifier which uses deep learning models from Meridian's Ketos framework.
Classifier which uses deep learning models from Meridian's Ketos framework.
Paramters for Ketos classifiers.
Settings pane for a Ketos classifier.
Test the Ketos models in PAMGuard.
Result from a Ketos classifier.
UI components for the generic model UI.
Runs a Ketos deep learning model and performs feature extraction.
Class to generate standard panels for plot keys.
Kills PAMGuard, not attempting to stop it first.
Classifier which uses deep learning models from Koogus' framework.
The Koogu model worker.
Dialog for adding and removing clicks to and from 
 offline events.
Class for storing Landmark information.
Imports landmarks.
List for storing landmarks.
Pane to edit a group of landmarks
Contains GUI components for the landmark method.
Contains GUI components for the landmark method.
Pane which allows users to create a land mark.
Stores a set of latest data units, only one per data block and can 
 retreive them in various ways.
Class for handling and formatting latitude and longitude data.
 
 holds gps stamp, both lat and lon will save separately in the data base but
 will display in between 1 to 3(if time too) fields on the form and in one in
 the data table.
Set of functions to set up reading and writing of 
 latitude longitude and depth data to a database table.
Shows the value of a latitude or longitude in various standard formats.
A better Lat Long editable dialog strip, containing
 the functionality developed for the new Array Manager.
Pane with controls to to set the values for a Latitude and Longitude.
A pane which shows a latitude or longitude.
A least squares algorithm for solving particular localisation problems.
Least squares localisation for Target motion analysis.
Implmentation of the least squares locaiser.
The length of a click.
The Class LikelihoodDetectionParameters provides the standard PamGuard
 abstraction of system-save-able settings for a module.
The class LikelihoodDetectionParametersDialog is created by the LikelihoodDetectionUnit to
 integrate configuration of the likelihood detection module into the configuration menus
 of PamGuard.
The class LikelihoodDetectionUnit implements that standard PamControlledUnit functionality
 required by PamGuard for a plug-in module.
The class LikelihoodFFTController manages the automatic creation of any
 FFT processes that are required to support the target configurations.
The LikelihoodFFTParameters class represents Likelihood Detector-specific FFT
 parameters and calculations that support the auto-creation of processing streams
 for the target configurations.
Errors are generated from the curvature of a Chi2 surface.
This is the PamProcess implementing the Linear Averaged Spectra processing block for the likelihoodDetectionModule.
Train and run linear classification
Wrapper to make a linear localisation into a group localisation
Deprecated.
The line info.
Observe a line of text
Functions for updating data in a linked database table, i.e.
Class for issuing commands directly to the linux shell on the cRio
Copied from https://www.peterfranza.com/2008/09/26/little-endian-input-stream/
LM: The Levenberg-Marquardt algorithm for least-squares minimization
Monitor class for multi thread data loading in viewer mode.
Keeps a record of the last load postion if a load thread is cancelled.
Interface to attach to localisation algorithms which can provide basic information
 (primarily for better book keeping and Tethys output)
Holds information about a localisation.
This is a wrapper around any type of algorithm parameters so that
 they can be easily serialised into a single hash table in the main 
 group localiser parameters section.
Control for the localiser display.
Main pane for the localiser display.
~
 Creates AWT instance of the localiser embedded with a swing container.
Interface for loclaiser error.
All localisers in PAMGuard should satisfy this interface.
Class to build a single localisation document during export.
Creator thingy that Localisation algorithms can use to overwrite any standard
 behaviour in LocalizatinBuilder.
Handler for localizations.
Enumeration of the ReferenceFrame field in nilus.Localize.Effort.CoordinateReferenceSystem.Subtype 
Within Tethys, these are only ever used in their String form.
Within Tethys, these are only ever used in their String form.
Enumeration of the ReferenceFrame field in nilus.Localize.Effort.CoordinateReferenceSystem.Subtype 
Within Tethys, these are only ever used in their String form.
Within Tethys, these are only ever used in their String form.
Manage location options for the different clusters and tests.
When taking photos users may have been at one location, on a boat, or at multiple different static locations.
Class for settings to be optionally held by hydrophone locators
Class for holding information on what a type of information a localisation has.
Class for drawing localisation errors.
The loc info pane.
Utilities associated with log files.
A LoggerForm is the central component of all form types, inclucing normal forms
 popup forms and subtab forms.
Handler for sub tab commands for sub tab forms.
Adaptation of TabbedPane to provide a bit of extra support for logger forms, 
 such as mouse click actions on the tabs themselves, etc.
Functions for writing a list of modules into any database as character data
 Runs at DAQ start, goes through the settings manager list and for each
 set of settings, it serialises the settings data into a binary array, this
 is then converted from binary data to 6 bit ascii data (using the character set
 from the AIS standard, which should be compatible with any DBMS).
Performs a multinomial logistic regression using WEKA library
Functions for writing serialised Pamguard Settings into any database as character data
 Runs at DAQ start, goes through the settings manager list and for each
 set of settings, it serialises the settings data into a binary array, this
 is then converted from binary data to 6 bit ascii data (using the character set
 from the AIS standard, which should be compatible with any DBMS).
simple data unit for use with the LogXMLSettings class
2022 Additional way of saving settings for each module into the database in more human readable 
 XML format.
Change listener for PAMGuard Lookup items.
Lookup component to go in dialogs, Logger forms, etc.
dialog for editing the contents of the lookup table.
hold data for a single item from the lookup list.
Handles information for a single list from the look up table
Singleton class for managing a common lookup table for 
 many PAMGUARD modules (following from Logger format)
Wrapper class around other available magnetic variation models so that I can switch 
 to other models easily should the need arise.
SSH Terminal frame
Interface to add to any configuration settings object which 
 will contain / generate / allow creation of descriptors 
 of what's within that parameter set.
Node which handles data input for a ManagedSettings parameter.
Wrapper around a SettingsPane to provide simpler 
 functionality for including panes from one part of PAMGuard in 
 another part.
This contains absolutely nothing since individual SimpleMap displays handle their
 own settings.
Holds information about all things plotted on the map,
 primarily how long they should plot for and whether they
 are currently enabled or not.
PArameters for MapDetectionsManager which 
 can be easily serialised and stored in pamsettings
Settings for Map Grouper.
This is the actual map display, with the bluebackground, the gps track, etc.
Convenience extension of Point3D to easily get 2D points.
The map needs a process since it now produces data units to go into a data block.
The Map Rectangle Projector.
A layer which is added to a 3D map.
Class that helps to chose whether a data unit within a given mark is 
 actually wanted or not.
PArameter set for handling mark overlays selections.
Extra information for OverlayMarks which can be provided from 
 the mark source.
Simple panel of checkboxes which can be used by an overlay marker 
 (i.e.
the idea is to visually represent each localisation three dimensional space to allow easy manual analysis of the likely location of a cetecean location.
standard panel that can select mark providers 
 of particular types.
Singleton class to handle mark relationships.
Centralised location where all relationships between markers
 and the marked are stored.
Database logging for stand alone Annotation data.
Master PAMGuard array localiser.
Master reference point for PAMGAURD.
System for master references used by various bits of PAMGuard.
Annotation for the matched click classifier.
Annotation for the matched click classifier which adds the match and reject correlation values for each template pair
 to the binary files.
Writes a matched click classifier annotation to the database.
Annotation type for data from the matched click classifier.
Tests for the matched click classifier.
Matched template classifier parameters.
Class to hold results from the matched click classifier
Deprecated.
Manage detection matchers and their settings.
Stores information for a click template
Work out confidence intervals for an
 array of matrixes.
Dialog for showing the content of a matrix.
Get the mean and eventually some other parameters from a list of
 matrixes.
Matrix operations for arrays of Complex data
 Really need to write these for ComplexArray rather than Complex[] since
 it's a lot faster.
Information about an MCCboard
Measurement Computing constants copied from the cbw.h header file.
JNA interface for Measurement Computing acquisition boards.
Interface to the MCCLibrary JNA calls.
Interface to Measurement Computing data acquisition boards.
Dialog panel for MCC boards.
Useful functions that use the JNI but use some PAMGuard specific
 structures, so don't want them in the JNA class in order that that
 can be used with other software.
Markov chain Monte Carlo (MCMC) is a minimisation technique used widely in a variety of field, from finding exo planets, 
 to solving complex intergals.
Elliptical error for MCMC.
Plots some point son the map
An MCMCHM (Markov Chain Monte Carlo Hydrophoe Movement) algorithm adds hydrophone positions as a parameter in the MCMC localiser.
Deprecated.
Paramters for running a Marklov chain Monte Carlo algorithm.
Median Filter for a finite amount of data.
Now that there are many menus, there will several instances of each
 menu item.
Holds info allowing a swing menu item to be converted to JavaFX nodes.
Class to handle Project MetaData.
Time Parser which uses image metadat.
Grid search using Matched field Processing 
 Not completed - will take far too long and need too much memory 
 to process at resolution required for NNHF clicks.
AlgorithmInfo for the MHT algorithm.
Class for unpacking algorithm strings.
An MHT algorithm with all the hooks required for running in MATLAB.
Any variable used by the MHT algorithm
Parameters class must extend this.
The MHTChi2 provider manages the mhtchi2 algorithms for each track possibility.
Handles which type of chi2 algorithm is being used and 
 what settings pane to create.
A variable which is used to calculate chi2 value.
MHT classifiers for the Java / MATLAB interface.
A click train algorithm based on a multi-hypothesis tracker (MHT) which groups data based
 on a minimisation function.
Handles removing garbage tracks from an MHT algorithm's probability mix.
Graphics for the click train detector.
Core functions for a multi-hypothesis tracking (MHT) algorithm which groups
 data based on a minimisation function.
Options for the MHT algorithm
Parameters for the MHT algorithm, contains two serializable parameter
 classes, one for the MHTKernel and one for the MHTCHi2Provider.
The main settings pane for changing settings of the MHT algorithm.
Basic side pane which shows the MHT metrics.
Swing version of the side pane.
Simple implementation of click train detector which tests the MHT kernel and a simple chi^2 algorithm.
MHTTestGraph for testing the MHT algorithm
Testing of some of the algorithms
The settings pane for a MHT chi2 variable
An MCMC pane with a few extra options for Mimplex localisation.
Pane which shows all the different.
Minimisation algorithm.
Class which must be populated for various minimisation algorithms
Pane which allows users to set minimum and maximum value of a variable
 
  the number type e.g. 
Adds annotations to data units.
Export a click to a MATLAB structure.
Export data for any data unit which implements raw data holder.
Export a detection to MATLAB
Handles the conversion of data units into MATLAB structures.
Export to MATLAB .mat files menu.
Deprecated.
Revamp of the earlier MLGridBearingLocaliser but with a more sensible 
 coordinate frame.
Export a noise measurement to MATLAB
Export data for any data unit which implements raw data holder.
Exports super detections.
A component that looks very much like a normal popup menu, but the 
 show(...) function doesn't return until any menu actions are complete.
Generic pane which shows a list of localisation algorithms
Handles the saving and loading of Model results from binary files.
Data unit which stores classification results from a classifier model
Reinstated Target motion add-in as used by the click detector.
A connection node which represents a PAMGuard PamControlledUnit.
Class to contain module specific information
 which will be stored at the end of a binary
 data file, just before the BinaryFooter.
Class to contain module specific information
 which will be stored at the end of a binary
 data file, just before the BinaryFooter.
Handles module icons in PAMGuard.
Enum for module icons.
Object which holds the type and name of a PAMGUARD module
 and can read and or write it from file.
information on a module node read from a settings xml file.
Holds seriliazbale informations on a ModuleConnectionNode.
A node which shows the internal structure of a PamControlledUnit
Used to control menu groups for the main PAMGUARD File/Add Modules ...
Class for dealing with sleecting individual data units with a Mouse.
Almost identical to copy file.
Model of movement of a simulated object.
Manage a list of movement models for the simulator.
Moving average filter.
A matrix for moving average calculations, initially designed to 
 replicate some functionality in SIO GPL_Quiet function.
Parameters and useful functions for a single MT classifier.
Classifier which classifies clicks.
Offline task for reclassifying clicks.
A pane with controls to set a single matched click classifier.
Test for the MTClassifier.
A classification for a click train.
The JavaFX GUI for the Matched click classifier control...
Offline processes for the matched click classifier.
Calculates a correlation difference coefficient between a match and reject click template 
 and classifies a data unit based on a threshold value for the coefficient.
Settings Pane for matched template parameters.
Simple test of multiport communication.
Atlantic version of Google's humpback whale network.
Launch several terminal a place them on the screen
The algorithm class for the Minimum Variance Distortionless Response beamformer.
MVDR (minimum variance distortionless response) beamformer provider
Calculate the nanosecond time from the sample number.
Utility to measure execution times of various parts of PAMGuard.
A 'global' synch object that can be used by both the GPS data block 
 AND the streamer data block since they are often working together
 with dual iterators, so can lock / concurrently modify, etc if 
 not carefully synchronised together.
A pane which is somewhat related to a tab pane but where the tabs are on the
 left or right and horizontal instead of vertical.
Class of functions to help interpret incoming audio data - put
 into a separate class to keep functions separate from rest of NetworkREciever class.
Class to handle remote control of PAMGuard.
Buoy data names in the hashtable of paired values can be any string type, but am setting 
 a load of them here, so that constants can be used wherever possible to improve
 programmer reliability.
Interface for classes using the NetworkReceiveThread.
Class for drawing buoy positions on the map.
Class for handling Network data, will reduce number of parameters in
 Network calls and be a LOT more flexible.
Functions to pack up data for sending over the network.
Receive near real time data over the network in the form of packaged PamDataUnits.
Send near real time data over the network to another PAMGUARD configuration.
this uses jAsioHost for acquisition.
The NewBandNameDialog is used by the LikelihoodDetectionParametersDialog to allow the
 operator to specify a band name.
The Enum BandType specifies whether the band name will be for a signal band or a
 guard band.
Deprecated.
Pane which shows hardware channels on a National Instruments device mapped to PAMGuard software channels.
Constants from NIDAQmx.h
Nidaq is is a wrapper style class, which makes calls to native C++ functions 
 within in a .dll library.
PArt of the system for playback from wav files.
A few static checks of some nilus classes to see if it's 
 worth writing them or not.
Wrapper for Nilus data objects.
Class to wrap up a nilus object so that it can be saved using Java serialization.
Functions to automatically unpack a document from Tethys into a nilus object.
DAQ system to receive data from remote NI Compact Rio chassis in compressed
 or uncompressed data formats.
Playback system to use when acquiring data from NI cards.
UDP commands to and from the NI CRio chassis.
Intermediate class for all NMEA data types.
Special type of data block, just for NMEA data.
Interface to assist a datablock in setting up emulated NMEA data.
Class which provided an editable ComboBNox for selecting
 NMEA string.
Extract noise statistics from acoustic data.
Where to store data for detectors which have a specific noise measured output 
 i.e.
A wrapper around non scrollable cursors to make them behave in the same
 way as a scrollable cursor.
This is a data type for normalizer output.
The data type generated by the normalizer PamProcess.
Interface to abstract the various normalizers for the likelihood detector
  It is OK to return a null DataUnit if you cannot yet produce data based on
  the input given.
This PamProcess implements the normalizer of the likelihood detector.
A simple convenience class to pair signal and background time constants together.
Very simple panel to force a component to be at the north end 
 of a panel.
Not really a beam former.
Provider for the null beam former.
Null data selector that doesn't actually create a data selector.
the Null fragmenter doesn't break Connected Regions at all.
slightly fudged contour which doesnt' have any points for situations where 
 no contour was found within a GPL detection.
Null GUI controller which will get used with the -nogui options.
The number spinner allows users to select a number by spinning through a range of numbers.
The default skin for the NumberSpinner control.
Contains information required to load data from a file or other source into a datablock.
Handles the loading of offline data from a PamDataBlock.
Class which get's held within a PamDataBlock which 
 provides summary information on data within that 
 block when operating in viewer mode.
Map points to go into an OfflineDataMap.
Interface implemented by PamControlledUnits which 
 are capable of reloading and restoring data when operating in 
 Viewer mode.
PamDataBlock for offline events.
OfflineEventDataUnit replicates the RainbowClick functionality in 
 OfflineRCEvent.
List of offline events which can be included in various dialogs 
 associated with offline event creation and management.
Generic data store for offline files.
An extra panel that appears in the DAQ control when offline
 so that user can point the DAQ at a set of wav of aif files
 to use with the offline viewer.
Make a list of files with the given file filter.
Functionality for handling data from files offline.
Deprecated.
Processes that run offline.
Super detection filter for offline tasks.
An offline task, such as click species id.
Some global management of offline tasks / task groups.
Deprecated.
This has been split off from OfflineFileServer so that OfflineFileServer can be used with 
 other file types.
Converts old angle pairs, which used system a below to new angle pairs which 
 used angle system b.
Dialog for offline processing of a particular data type.
Will offer the user choices in how to select data (e.g.
Will offer the user choices in how to select data (e.g.
Display panel for dBHt data - can be incorporated into a spectrogram 
 plug in or a stand alone display window.
Annotation manager that should be able to do absolutely everything (almost) self contained
 within itself without having to add about 4 different functions to it's parent controller or process
Panel of options for different operational states.
Deprecated.
The user interface for OrcaSpot classifier.
Stores results from an OrcaSpot classification
Contains OrcaSpot specific settings fields.
Stored settings for the OrcaSpot module.
Stored settings for the OrcaSpot module.
Side panel showing how many OrcaSpot detections are in the buffer and the last values of the detections.
Executes the Orca Spot deep learning classifier from a python.exe file and
 python scripts.
Executes the Orca Spot deep learning classifier from a python.exe file and
 python scripts.
Class to hold settings for the different origin methods.
Special checkbox for overlay drawing.
Provides functions for managing lists of overlays which might
 be used with a specific GeneralProjector, i.e.
Observer for when a checkbox menu item associated with an OverlayDataManager is changed.
A detection display which can display group data units and 
 their super detections in a tab pane if applicable.
Receive mouse actions made on the map, turn them into regions
 displayed as an overlay on the map and send the region information 
 off to any observers who might be interested in those data.
Handles user mouse and touch interactions with the display.
Interface used by something that is observing a spectrogram mark.
Static list of overlay mark observers.
List of all available overlay mark providers.
Interface for menu items which are TD Display specific.
Manages all menu items which are specific to the TDDisplay.
Standard swing panel for selecting overlay mark information.
Deprecated.
Really simple BearingLocaliser which works with two element closely
 spaced arrays.
functions for sorting paired arrays, i.e.
Information for additional paired values that will get displayed in the main 
 RXTable view.
Some math and utility functions for arrays and Lists.
Class defining the default CSS Style sheets to use for JavaFX displays.
Interface for PAMGuard opening a sound file.
The file filter for audio files compatible with PAMGuard.
Interface for PAMGuard opening a sound file.
Central class for opening sound files.
Implementation of RecorderStorage specific to audio files.
User controls to change bespoke settings for audio loaders.
Deprecated.
Useful functions for swing.
 Draws an axis on a Java Component.
Draws an axis on a JavaFX Node.
Pane which contains two or more axis and a plot panel.
Axis which utilises the javafx number axis instead of the graphics inside pamaxis.
A list of PamDataUnits, set as a data unit itself so that it can be 
 passed through a threaded observer.
Parameters for controlling a PamBlockProcess
Modified PamProcess which can block data for analysis in chunks rather than a continuous data stream.
Class defining standard borders for PAMGaurd displays.
Class primarily aimed at making little panels for the
 side panel
PAMGuard implementation of JavaFX Button.
Base class for PAMGurad chart, which can be projected into a graphics object - 
 either a bitmap or a screen component.
Series data for PAmChart.
Color picket which allows users to set a default opacity for the default colours selected by a user.
Class to take all of the configuration information out of PamController.
Slightly modified connection object to pass around - contains not 
 only the database connection, but also an sqlTypes object which can
 get's used to make a few slightly non standard mods to some column 
 and data formats to keep the various dbms's happy together.
Any connection node node used in the PAMGuard data model must satisfy this interface.
Some constants to be used throughout PAMGuard
The PamControlled unit for modules based on JavaFX.
Provides Swing GUI components for a PAMControlledUnit.
The GUI  for a PAMControlled unit.
Basic interface for the primary UI and UI manager showing the PAMGuard GUI.
Helper to initialize a headless 
PamController from unit tests.Interface to put behind several existing PAM objects so that 
 they can start working in a common way without having 
 to totally rewrite everything.
Class to generate Cursors for databases which can directly support
 scrollable cursors and ones which cannot.
holds a single row of data for a non-scrollable result set
 wrapped up with NonScrollablePamCursor.
Manages the exporting of data units to a particular type of file e.g.
An iterator that has a bit more functionality than a basic iterator.
Default number formatter for DateAxis, this stays in sync with auto-ranging and formats values appropriately.
Edit box for entering datetimes.
Class defining the default CSS Style sheets to use for JavaFX displays.
Dependency information if this module can ony work if some other module is
 providing appropriate data.
Interface to describe dependencies.
Wrapper and functions associated with the Tethys Deployment object which can
 exchange these with the PAMGuard database and display Everything is just held
 within a list, in no particular order, which getContent public
 
 This is from the Deployment JavaDoc.
Standard logging class for any PamDetection, but you'll want to extend it for any 
 additional information your detector outputs.
General  functionality for PamGuard dialogs.
Creates a dialog with some useful PAMGUARD customisation.
Creates a swing dialog which holds an FXPane.
General class for dialog panels which will be incorporated into one or 
 more actual dialogs.
Creates a VBox where the children and can be dragged to reorder.
An exception handler intended to catch Run-time exceptions.
Exports data to external files.
PAM extension structure.
Some useful functions to open up a File Browser
Modified file/folder chooser for use throughout PAMGuard which by default will open 
 in the folder containing the psfx or database file, rather than user.documents
Flip pane which has is supposed to be used for advanced settings.
Flow layout with a standard gap for consisten appearance througout PAMGUARD
Chooser for selecting folders, which can show the files in the folder, but will only 
 save if the folder is selected not a file.
Some static functions to handle PAMGuad default folder and 
 to create them as and when necessary.
Handles glyphs from various libraries.
Class to layout PamFramePlots
Standard grid bag contraints to use as a default in 
 dialogs.
Structure which groups together connection nodes.
Parameters for the group structure.
Pamguard main class.
Table view of PAMGuard deployments.
Pamguard main class.
Meta data for a PAMGuard data set.
Class to hold static license and release information for PAMGUARD.
Class for writing XML configuration output to a file.
A pane which holds a set of tabs.
Holds settings for the FX GUI.
Manages references which indicate which GUI PAMGuard is using.
Handles the FX based GUI.
Extends the PAMTabFX class so that a new stage with PamGui nodes appears when
 tab is dragged out of frame, rather than just a new tabPane as the primary
 pane.
The PamDataPane contains a pane with two hiding panes, a left pane and a right pane.
class for collecting data into a 1-D histogram.
Class for collecting two dimensional histogram data.
Get the PAMGuard icon.
Class which holds photos or other images and reads metadata.
Similar to PAMProcess, but always subscribes itself to upstream 
 datablocks using the instant options to this process always get's called
 in the same thread as data were collected in and before data units are sent for
 storage.
A dialog which has no modal
Called whenever the dialog is closed.
A PamInternalNode is a resizable node which can be resized within another node.
Interpolation library.
Static classes to perform interpolation tasks
Daft panel that takes it's content out of a scene and then puts it pack in again which 
 somehow convinces the scene to resize.
Interface for passing information from overlay graphics to plots to give information to include in 
 keys for the various displays.
Extension of JLabel to use standard PAMGUARD colours
Shows a launcher pane which allows a user to open a real time or viewer configuration.
A 
SpinnerValueFactory implementation designed to
 iterate through a list of values.Pane which shows users load progress from ALL PAMGuard loading tasks.
Was thinking of putting funcitonality in here to link PAMGuard to log4j or some such, but ran 
 out of time.
Convenience class with a log scale on the y axis.
Some functions to compliment those of the Jamma 
 Matrix class
Interface for anything that can add menu items to a Swing menu
Deprecated.
Holds information about available PAMGUARD modules.
Class for measuring the time difference between the PC clock and an NTP server.
Make a diagram of the overall PAM process layout.
Adapter class for PamObserver so not necessary to implement
 absolutely everything.
Class to manage symbols for various PAMGAURD displays.
Class to lay out windows within a JDesktopPane
Description of data within a field in a class
Parameter description which can use a single parameterless getter
 to retrieve a field from a class.
Description of the parameters within a class.
This is a class created to deal with the problem of text fields having a zero length.
Interface for PAMGuard plugins.
Pop over which has some extra functionality including the ability to resize.
Basically a quaternion is a vector which can encode three dimensional
 orientation information (e.g.
An extension of JSlider to select a range of values using two thumb controls.
A range slider with some extra functionality such as changing the track colour and 
 text labels for the thumbs.
UI delegate for the RangeSlider component.
Extension of RecyclingDataBlock that is used for Raw audio data.
A simple dialog which allows the user to select which mode to run PAMGuard in.
Parameters for choosing pAMGuard run mode.
Sub class of the standard scroll bar
Creates a scroll bar system that allows users to navigate through data in real time and viewer mode.
Interface to define modules which can be considered as sensors of some sort.
Create a dialog to show module settings pane.
Deprecated.
Stores a group of PAMGUARD settings read back from the database
 or some other store (e.g.
Pane which holds settings menu.
Added to a PamControlledUnit which can save and reload PamSettings
 information from files, databases, etc.
Allows users to pick a specific shape
PamSidePanels provide support for additional display units for each
 PamControlledUnit displayed in a vertical column to the left of the main
 tabbed display.
PamSidePanels provide support for additional display units for each
 PamControlledUnit displayed in a vertical column to the left of the main
 tabbed display.
Methods for changing the scale of sliders.
Spinner with some bug fixes from raw JavaFX versions.
Implementation of the split pane that can remember it's position.
Class to handle some temporary disabling of the PAMGuard start button during 
 creating of objects at startup.
Parameters for the extension structure.
This class is used as temporary storage for subtable data of PamDataBlocks being loaded from a database.
Parameters for sud file extraction.
Load SVG icons.
Standard symbols for Pamguard graphics.
Base class for both FX and Swing PamSymbols
Manage symbol choices for a single display and datablock.
Dialog for user control of PamSymbols
PAMSymbolManagers are attached to a single datablock and control the type 
 of symbol and line that get's used to plot data on the variety of 
 PAMGUard displays.
Symbol options base class to be used by everything.
Component for including in dialogs.
Class to show a PamSymbol alongside a button which allows the
 user to change it.
Creates tabs in Pamguard.
A draggable tab that can optionally be detached from its tab pane and shown
 in a separate window.
Defines a database table for use with the Pamguard database
 The Pamguard database can query this table definition to 
 see what columns should be present and to create appropriate 
 tables.
Defines a single item (column) for a Pamguard database table
 These are listed in PamTableDefinition for each table.
Tab pane which allows for detachable tabs.
The PamTabPane skin adds a few extra features to the standard TabPane:
Class for passing information from loading tasks to the FX GUI.
Stores information for a single tip of the day
Viewer dialog for PAMGUARD tip of the day
A JavaFX class to emulate the Swing TitledBorder
 taken from https://stackoverflow.com/questions/14860960/groupbox-titledborder-in-javafx-2
 
 The bordered-titled style can be found in style sheet pamDefaultDialogCSS.css.
Toggle switch with a label to the right of the switch, not the default left.
Tooltip with some extra functionality, such as setting HTML text
Useful classes for JavaFX library.
Extension of the validator class to add PAMGuard specific functions.
A set of variables for loading a section of data from the viewer mode database.
This class, when enabled within a JLayer will grey out a JPanel and show a circular rotating animation.
A warning message to put into the warning system displayed in the title area
Base class for PAMGuard wizard cards.
A simple dialog with a progress bar, and potentially also some
 lines of text that can be used in conjunction with a SwingWorker to 
 show progress of a task that's taking some time to execute.
Wrapper around a SwingWorker so it's easy to launch a background thread that will 
 update a modal dialog with a progress bar and some text
Worker update message with property to allow FX bindings (e.g.
Wrapper with two callback functions to use with a PamWorker
Test models that are zipped with a PMAGuard pgdl settings file.
Loads a zip file and checks for a saved model alongside a pamguard settings file
Simple pane with everything setup for 3D viewing.
Store parameters from a managed parameter set in the PAMGuard database.
Just about everything giving overall control of some managed parameters.
A parameter validator for checking whether an input value for a field is valid.
Single class to hold everything we need to know about sample 
 rates.
Interface for anything that is capable of making estimates of PC time corrections
 e.g.
Wrapper around a nilus Deployment object to provide a bit of extra bookkeeping
 and functionality for PAMGuard.
WhistlePeakUnits contain information
 from a single FFT slice.
Really simple detector, looking for peaks rising above some
 threshold.
Peak frequency symbol modifier.
Option pane for the PeakFreqSymbolChooser.
Swing panel for changing parameters for the peak frequency symbol chooser.
Options for peak frequency.
Peak frequency variable for click train detector.
Pane for peak picking parameters
Information about  a peak found by PeakSearch algorithms.
Peak position in a 2D array.
Peak search algorithms which can find a peak in an array of real numbers.
Pane for a peak search trim transform.
Interface for all performance tests.
Simple (but reasonably pleasant) graphics window for drawing
 in during performance tests.
Decorate GranularityType
Pink noise source - that's noise that has roughly the same amount 
 of energy in each octave band.
Class to handle instrument information
Calculations associated with a piston model.
Make a graphics component showing pitch and roll.
PAMGuard wrapper around some of the jserialcomm functionality in order to make it slightly 
 easier to use in the PAMGuard swing environment.
Main Pam Controller for sound playback modules.
Provide data for sound playback in a suitable format.
Options for sound playback
Class for playback systems to add a system specific dialog component
 to the sound playback dialog.
High pass filters for playback system.
The FX GUI for the playback pane.
FX settings pane for the sound sound playback.
Parameters controlling sound playback
Pam Process for sound playback (controls data from multiple channels
 and then passes it on to the PlaybackSystem.
Receives notificaitons from the playback system detailing how
 far playback has got in viewer mode.
Th eplay back side pane.
Slight modifications to sourcePanel so that only the correct number of 
 channels can be selected.
Slight modifications to sourcePanel so that only the correct number of 
 channels can be selected.
Interface for soundplayback systems.
Class to hold basic information about the state of a playback device.
Play gain slider.
Generic component that can be used for sliders
 in play control side panel bits
Default slider pane for the sound output sliders.
slider to control playback rate.
Define colours for spectrogram
The plot pane contains 4 axis.
A quick implementation of a chart/plot.
This is a class designed to act as an adapter between the zoomer class and the TDGraph class.
Created by IntelliJ IDEA.
Polpred tide file
PolPred parser which uses the standard dating system with day, month, year time stamps.
Slightly different behaviour to MasterReference.
Find a Position Reference, based on a preferred order.
Class to detect and manage PPS information from GPS.
The pre-classifier pane holds settings for the pre-classifier.
Model results for the classifier.
A node for a pre-process pane.
Abstract instance of PamParameterDataInterface which implements everything 
 apart from the getData() function
Process NMEA data to extract AIS information
Class for passing information around with Datablocks giving a record of
 what has happened to the data within them throughout the whole processing chain.
Class for providing annotations.
Process data selector can be used by any process monitoring one or 
 more data blocks.
Modeless dialog showing all project deployments.
Panel for entering project information including
 project name, region, cruise, and site.
Options that can be added to the GeneralProjector class so that whatever draws
 the data units can pick up this additional information.
Really simple propagation models.
Base class for strips of information to go with each 
 property of a form
Pane for settings some basic environmental variables.
Read and write psfx type configuration files.
Used for loading in and analysing test data sets.
Create a chart showing missed detections as bars along the bottom, found detections as
 bars along the top (inverted), and a probability line graph through the middle (overlayed
 on top of everything).
A cluster contains all the information required to generate a sound or a sequence of 
 sounds.
Make a correlated sequence of values with a given width and mean.
Dialog type panel to match detectors with QA sound types.
Deprecated.
Generic class for QA Tests, Sequences and Sounds so that they 
 can hold their operational status data.
Class for generating locations at which sequences should be created.
Process to monitor output of all other detector data blocks.
Get notifications when something in QA changes.
Handle QA Operations status information including possibility 
 of editing ops data times and values.
Use a re-threaded data unit list to manage analysis tasks.
Abstract class to generate sound sequences
Interface for all QA module sounds.
SIDE logging class is going to have to do something a bit fancy to work out which sounds have
 been detected and by which detectors.
Class to conduct and hold results of an analysis of test data.
Panel to control immediate tests and possibly also some of the 
 longer term tests.
Processed and summarised detection data for a single or group of tests and a single detector
 should contain enough data and functionality to provide everything needed for reporting.
Basic three parameters from a whistle fragment from 
 a quadratic fit.
Class for importing streamer data from external file and saving to database.
The DIFAR SidePanel contains the list of DIFAR classifications, to allow
 the user to choose which classification is assigned by default.
Quick remedial action.
Class to provide a quick single warning that can be easily removed without having
 to handle all the references in the owning class.
Data output from GPL_Quiet
Converts Radians to degrees and vice versa.
Does the work of converting a RainbowClick databse.
Planning to keep one random test per cluster type.
Whistle generator makes random whistles using a 2nd order polynomial shape
 derived from three equally spaced points in time.
Spinner control used to set display ranges which can 
 be added to a PamScroller.
Adds data unit annotation to RData frame.
Algorithm which simply looks at the ration of one click type to another.
Click train algorithm which is very simple.
Information on a Raven table non standard column.
System for importing and displaying data from Raven selection tables.
Raw clip data info.
The plot manager for data units that contains raw clips of data.
The clip plot pane.
TH symbol chooser for raw clips.
Plots clips waveforms.
Data source for Raw acoustic data.
RawDataDisplay is used to create plug in panels that can be used at the 
 bottom of spectrogram windows (and eventually other displays).
Interface to be used by PamDataUnits which contain raw data which 
 might get used by other processes.
Used to load data for any display in which raw data is required to be loaded for detections.
Holds transforms for raw wave data such as spectrum, spectrogram, cepstrum etc.
Exception thrown by PamRawDataBlock when raw data are requested.
Holds raw data from a sound file.
A few useful functions for handling raw data which are better off in a simple
 class rather than linked to a data unit, such as the functions in RawDataTransforms.
This was copied from the ClipBinaryStorage class so cannot easily be changed without breaking backwards compatibility.
This was copied from the ClipBinaryStorage class so cannot easily be changed without breaking backwards compatibility.
Detection Display dataInfo for any rawdata holder.
Making this a plugin.
Data info for the raw data info.
Basic parameters for deep learning module.
Plots FFT data as  background if raw data is available.
Plots the FFT of stored acoustic data.
Exports click detections to a .wav file.
Parameters to use when a data source can be either raw or fft data.
Graphics for raw data for the acoustic scroll bar.
Raw sound data is by default not stored in memory.
Implementation of the spectrum plot for any data unit that impleements raw data holder.
Plot for any RawDataHolder to show a waveform.
Manages plotting raw data.
Shows a Wigner plot of a click
Exports a data unit to a List in R.
This is a helper class to compute block averages.
Stuff for re-running whistle classification offline.
Control a sound file recorder.
Process raw audio data prior to storage.
Control parameters for sound recorders.
Writes audio data into a file.
RecorderTriggers are used to automatically make sound file 
 recordings in response to detections, or any other PamGuard event.
Information for triggered recordings to tell each recorder how long
 a recording it should make.
dialog accessed from corner of Deployments panel that controls duty cycles, merging, and 
 potentially even discarding (of short) of effort periods in the data for both evenly duty cycled
 and also for more adhoc data collection.
Information about periods of effort that might come from either the raw data recordings or 
 an analysis of binary data maps.
Enumeration of the ReferenceFrame field in nilus.Localize.Effort.CoordinateReferenceSystem 
Within Tethys, these are only ever used in their String form.
Within Tethys, these are only ever used in their String form.
Created with IntelliJ IDEA.
Pane for changing settings of the refraction method
Method for breaking up connected regions which contain multiple
 crossing whistles into sensible parts.
Class for performing various regressions.
Join fragmented shapes back together again.
Actions that can be attached to a status message.
Used when something might repeat a lot.
Top level Report object.
Static class containing all of the processing necessary to generate a docx report from a Report object.
A section in the report.
Class of a load of static text to include in various parts of report.
Class that tests out the report generation
Set of functions to help decide what to do when reprocessing.
Choices on what to do when re-processing data and finding that output data already exist.
Used to cancel data requests when calling to load data in multiple threads.
Check data resolution to be sure that it really is being digitised at the resolution it claims.
Creates a standard panel to display frequency resolution information
Simple Swing panel for responsibleparty fields.
Converts results to values.
Iterator for going backwards through a datablock, but only selecting data untits that 
 have a specific channel.
Handles exporting pam data units into an rdata.
Using Munger SL distribution of 178/176.
Right whale model from Shiu et al.
Export noise data to RData
Valid orientations of the axis
Rocca/Weka interface for classifying a contour
Short script to load the data from an existing contour stats file (Rocca output), classify each row and save
 the data into a new summary file.
Short script to load the data from an existing parameter stats file, classify each row and save
 the data into a new summary file.
Short script to load the data from an existing event (school) stats file, classify each row and save
 the data into a new summary file.
Creates a modal dialog box containing the current Click Events, and allows the user
 to select which events are analyzed by Rocca.
Use this modal dialog to let the user choose one string from a long
 list.
A field mapping the sweep direction to the nominal index used to train
 the classifier
A field mapping the sweep direction to the nominal index used to train
 the classifier
An EnumMap linking the parameter names to the values measured/calculated from
 the contour.
Enum class with the names of the contour parameters
Main controller for Rocca
Rocca data unit
 code copied from WorkshopDataUnit.java
Databse logging information for Rocca statistics.
Global flag set at runtime for Rocca development flags.
Short script to load an existing contour file (Rocca output), recalculate the parameters and save
 the data into a new summary file.
Data unit containing the RoccaContourDataBlock to save to the database
Parameters for Rocca
modified contour calculations to better match original Matlab routine
modified contour calculations to better match original Matlab routine
code copied from WorkshopParametersDialog.java
Main Rocca process
Class to hold information about the random forest classifier.
Container to hold all the sighting data
Container holding information about the current sighting, including pointers
 to the contours already measured
Databse logging information for Rocca statistics.
Single-stage classifier creation.
Data unit containing messages that have been sent to the local RockBlock.
Data unit for incoming/outgoing RockBlock messages.
Databse logging information for Outgoing RockBlock Messages
Data unit containing messages that are being sent from the local RockBlock.
This version of RockBlockProcess uses the jSerialComm library instead of RXTX
Gathers data from multiple threads unpacking Rona flac files
 and put them in order and sends off to a datablock.
Bespoke system for handling data from the Rona hydrophone array which
 consists of sets of seven files, each with different ends in th ename.
Functions to automatically bring together and load sections of 
 raw data from the single channel Rona FLAC files.
Symbol modifier that rotates through standard colours, usually based on the 
 data's UID.
Exact implementation of the 2003 Right Whale detector I developed when I was 
 working for IFAW and is now implemented in the Cornell right whale buoys.
Temporary holder of data about spectral peaks.
Export whisltes to RData
Standard classifier which does exactly the same as the old edge detector
 classifier.
Deprecated.
 A layout container who lays out its children in a row or column arrangement
 (as specified by the orientation) and places a Sash between each child.
Class which can tell a data store what type of work is 
 needed to re-save the data.
Class to launch a thread which will get the screen size 
 (including the bounds of multiple monitors)
A custom scroll bar.
A class for coupling two or more scrollers.
Contains the spectrogram data for a single channel.
Wrapper for the FFT data block allowing it to be plot as a spectrogram on a TDGraphFX.
A method to quickly plot data units on the display
A method to quickly plot data units on the display
Scroll jumper allows the use of arrow keys to move to the next data unit.
Small set of scroll controls which can be inserted into any window for 
 controlling the loading of data in viewer mode.
Seconds to milliseconds
Holds raw data segments which will be classified.
A group of detection which are within a particular segment.
Acquires raw sound data and then sends off to a deep learning classifier.
Test the segmenter on a chunk of sound data.
Makes a dialog panel for selecting a folder
 typically for file output.
Creates a pane which allows users to select a folder.
Information to be passed from a user of analogue sensor data
options for separating deployments.
An iterator that has a bit more functionality than a basic iterator.
Summary of sequence data for a test report
Selects groups of fragments into training / test groups
 simply by concatenating all the files together from some random start point.
Constants copied from the RXTX library gnu.io.SerialPortInterface.
Standard panel for entering serial port settings.
Create locations for the source at a preset list of distances from the receiver reference.
Didn't work.
Standard settings button with the little cogwheel for use throughout Swing components.
Create a dialog to show module settings pane.
Convenience class for opening a settings file dialog.
Pne which allows a user to select a .psfx settings file.
Class to handle the import of settings from other psf files.
Slightly more than a standard settings.
Listener used with a SettingsFilePane to check for settings that have changed.
To improve complex module loading where settings may be saved by multiple sub-modules, in 
 July 2015 many modules which had fixed settings had their settings names and types changed !
 Therefore these modules won't have found their settings on the first go, so need to also check
 against the alternate names defined for each class.
Realising that we often just need to pass around the name of a module or group of settings, have
 split this off from the main PamSettings interface so that it can be passed on it's own.
All settings objects must implements both Cloneable and Serializable
 to make an interface that has both and use for settings (a bit after the 
 horse has bolted this, but may be able to apply retrospectively).
Functions needed for module settings pane
Display a simple strip along the top of the Scrolling data panel
 which shows a little arrow or something for each set of PAMGAURD settings
This implements the spectrogram correlation detector.
Example class to go with WslPeak to show how WslPeaks, WslShapes and
 WslEvents all go together.
Class to draw a simple ship, to show the layout of the standard AIS
 dimensions.
Separate class to manage shore functions for the video range, all this could
 go in the controller, but might as well keep it separate.
GUI Components for the shore method
Represents the parameters that make up a signal band, used as
 input to the Likelihood detection algorithm.
Information on a single simulated object
SimObjectDataUnit is one per sound source, i.e.
Parameters for all simulated objects
Class for a simple 2D plot which can hold both 
 a data array and a related image.
A Tensorflow model packaged with a jar file.
Calculate the ICI value of amplitude.
Chi2 variable which compares the difference between the two three values.
Parameters class for a simple chi2 variable.
Simple data block for clicks
class to extend- to be used for any control with only one data input field
A holder class which is convenient for sub classing.
Simple classifier graphics.
The simple chi^2 classifier pane.
Simple data observer which gets a notification when a 
 data unit is selected
Make a decision based on a simple binary threshold for a prediction.
Very simple echo detection system which uses a single test of time
 between the previous click and this click to determine if it's an echo or not.
A simple electrical noise check which checks how low the chi2 value is.
Parameters for the electrical noise.
Simple error class.
Simple example sound loaded from a file.
A much simpler filter pane with just few options
Some abstract class function for hydrophone location that are used by
 more concrete locators, in particular the StaticHydrophoneLocator
 and StraightHydrophoneLocators
Class to hold information for plotting a line on top of 
 the simple2Dplot.
Stores the last load point in millis.
Mainly a container for map objects, holding the main MapPanel and the right
 hand control items.
Simple Pane to change MHT settings.
Simple observerbale class which can pass on a single object to observables.
Simple parameter description which can work with a public
 field.
Simple implementation of PAMTaskUpdate which returns 100% by default.
Simple parameter validator which return OK for all values.
Pane for a simple transform.
Time delay based simplex method for localisation.
Time delay based simplex method for localisation.
Deprecated.
Simulation of simulated sound.
Class to hold information and generate a signal 
 of a specific type
Class to list and manage different types of signals.
Class to hold information on a single sound.
One of these will be created for every sound produced
 by a SimObjectDataUnit.
Quick test of NBHF click simulation test.
Version of pamdatablock that always keeps one and only one dataUnit.
Class to format SI units adding appropriate millis, micros, kilos, etc.
A simple sliding block averager.
Smart location tester which processes previous sequences to see how many hits
 they got and then dynamically tries to chose a sensible place for the next set.
Smoothing filter which is basically a moving abstract filter
 but it operates once on a finite amount of data
 and does not insert any delays (unlike MovingAveragefilter which
 handles infinite streams, but adds a delay)
Functions to interface with the SAIL Ltd DAQ card C code via JNI
Some extra functions for SMRU development team
Holder of array geometry for a group of data units and an 
 instant in time.
SNR annotation type.
SonobuoyManager should contain all of the Sonobuoy related functions in the
 DIFAR module.
Contains table of sonobuoy deployments and calibrations
SpundCard settings controls for the DAQ pane.
Used by SoundCardSystem
Base sound card playback to use in the SoundCardPlayback and 
 the SoundCardFilePlayback classes.
e
 Settings pane for sound cards.
Everything and everything to do with controlling and reading sound cards.
Some functions for the File and Folder input systems to give a bit of 
 extra functionality / help for different file types.
List of SoundFileType objects.
Handles play back in the TDisplayFX
Information about a sequence of sounds.
A deep learning classifier running models wihc have been created using the
 AnimalSpot framework .
Result from the SoundSpotClassifier.
UI components for the SoundSpot deep learning model.
Runs the deep learning model and performs feature extraction.
Window function for sounds, always operate in place on a waveform
Standard panel for dialogs that shows a list of
 available data sources and, optionally a list of data channels.
Standard panel for dialogs that shows a list of
 available data sources and, optionally a list of data channels.
Interface for objects requiring notifications when
 channel selections in a GroupedSourcePanel change
Data for a species to include in things heard data
Observe changes in a spcies managers options.
dialog to select which species maps to import / export.
Information linking a name within a PAMGuard datablock to a ITIS species code and call type.
Master manager for species maps which will eventually allow for export and import from XML
 documents, databases and other things ...
Might be a problem for some batch task management having these so global and having datablocks in the external config that are not in the main model.
Might be a problem for some batch task management having these so global and having datablocks in the external config that are not in the main model.
Interface for multiple plugins to the spectrogram noise
 reduction system.
A class which sums energy across a spectrum from a start frequency to an end frequency
The data type for the output of the spectralEti module.
The PamProcess which implements the spectralEti signal processing.
contains the spectrgram data for a single channel.
A general pane with a frequency slider, colour bar slider and colour combo
 box.
Wrap up the spectrogram display so that it can be displayed
 using the more modern UserDisplayComponent system.
Side panel for the spectrogram which allows users to quickly change spectrogram settings
Draws the image of a spectrogram on a canvas.
Class to convert the new style OverlayMark's into old style spectrogram marks.
Class to receive notifications when the mouse is dragged across the spectrogram display
 Get's called on mouse down and mouse up.
Class for registration of classes that will observer
 spectrgram displays.
Standard process for any PamControlled unit observing marks made manually
 on spectrogram displays.
JavaFX pane for changing SpectrogramNosie settings.
Creates a graphical representation from a matrix.
These are the parameter settings for a single
         spectrogram window, note tha a single spectrogram tab may have
         multiple windows
Spectrogram for the dataDisplayFX.
Spectrogram projector for overlaying data onto the spectrogram bitmap
 which will always be scaled 1:1 with regard to pixels per frequency or
 time bin.
Extend ScrollJumper to get data selectors and selected datablocks from 
 a single spectrogram panel.
The Spectrogram Zoomer acts as the class which handles all zoomer functionality.
Simple background measure for a channel of complex or real FFT data
 Uses a dead simple decaying mean measurement
Plot for the spectrum of a waveform.
A data unit wrapper for a spectrum template.
Parameters class for the spectrum template.
Simple spherical grid.
Simple spherical propagation model to use with the simulated acquisition model.
SPL annotation type.
Splash screen
Class that will remember and reset the position of a split pane.
A Split Window normalizer implementation.
This class is used to convert signal and background estimator times in seconds into window widths in samples
 suitable for use with the SplitWindowNorm class.
Data selector params for a single species.
PAMGuard database system to make use of Sqlite databases: https://www.sqlite.org/
 Specifically, this database system makes use of the xerial sqlite-jdbc library,
 https://github.com/xerial/sqlite-jdbc.
SQLLogging performs basic SQL actions to write and read data from a database.
common functionality to add on to an existing SQL logging object.
Utilities for converting between java.sql.types numeric
 and text formats.
SSH session
Advanced settings for models - allows the users to define which transfroms to use.
Create a standard set of bearing information that can be used with any data block
 capable of generating bearing information.
Allows users to map hardware channels to software channels in PAMGUARD.
A classification object for a standard classification
Standard classification JSON logging
Combines the IDI, CHI2, BEARING and TEMPLATE classifier into one.
Handles the GUI for the standard click train classifier.
A useful abstract class for standard models which are a file or URL that is loaded, have a UI and 
 utilise PAMSettings to save settings state.
Pane for the standard classifier.
Standard classifier parameters.
Holds all elements of a connection node together.
Plug connected to a collision rectangle.
A socket which allows connections to parent nodes.
Basic data fitler for a CPOD
Implementation of FileDate to read the standard file
 date format that I use in Logger.
Settings pane for a standard file date.
The chi^2 calculator for the MHTKernal.
Pane which has advanced settings for standard MHT chi^2 calculator
Some extra info on the chi2 algorithms
Logging for the StandardMHTChi2Info used with an MHT algorithm.
The settings pane for the chi2 value.
Parameters for the PamMHTChi2 class.
Standard MHT Chi2 provider manages the StandardMHTChi2 calculators associated with each possible track.
Settings pane for SoundSpot
Parameters for the SoundSpot model.
A TDMarker which uses the standard PamGuard behaviours from OverlayMarker;
Converts a MenuItem to an OverlayMenuItem.
Colours for a 2D surface plot between two z limits.
Result from the SoundSpot classifier.
A standard sound that has a duration and sweeps between two 
 frequencies.
A symbol modifier pane that allows users to select a colour for symbol, symbol line and symbol shape.
Deprecated.
A symbol options pane which allows users to select a list of symbol modifiers.
Fixed properties of a beam forming algorithm.
JavaFX settings pane for a static hydrophones.
Get the status of PAMGuard 0 = idle, 1 = running
Calculate the mean and standard deviation of 
 an double array.
Summary information about the data stores.
Class to hold a whole load of PamScrollerData objects between runs.
Class to carry information about an OfflineDataStore.
Straight Hydrophone Locator, uses GPS heading information from
 GPS and assumes that the hydrophones are just sticking straight out
 the back of the boat as though on a rigid stick.
Simplest movement model - is the one that's in there at the 
 moment, i.e.
Summary information on all Detections documents for a Stream for this 
 PAMGuard dataset.
Contains information on an individual streamer -a Streamer is loosely defined
 as a group of hydrophones who's positions are fixed relative to the streamer.
Iterator for moving through streamer data.
Class for importing streamer data from external file and saving to database.
Property class for a Streamer.
Functions to manage streamer sensor data.
A JavaFX settings pane for a streamer.
A pane for setting up hydrophones.
Parameters controlling export of a single stream.
Simple annotation type that does nothing by add a string text to 
 a datat unit.
Contains saveable information for connection structures.
A list of these is held within a SuperDetection data unit.
Opens a .sud audio file.
Audio file reader for a .sud file.
Some Swing and FX controls to allow a user to change sud parameters.
Class to handle BCL and DWV data from a SUD file during sud file processing.
Class to handle appropriate notifications for SUD files, which go a bit
 beyond what's handled in the chunk notifications.
Display ST detection parameters.
Gets a summary string made up of strings from 
 multiple modules.
Display for summary data inserted at top of DataMap
Display for summary data inserted at top of DataMap
Class added to a PAMDataunit which can be a SuperDetection.
Extensions to SQLLogging to be used with datablocks that log sub detections.
Deprecated.
Wraps a symbol modifier stolen from a super detection in order to pass the super 
 detection into the symbol modifier rather than the original sub detection.
An improvements on the BasicClickIdentifier based on work by 
 Gillespie and Caillat in 2009.
The dialog for the sweep click classifier.
Slightly different pane for the sweep classifier.
Parameters for the sweep click classifier.
Pane which contains controls to change a SweepClassifierSet.
Do the actual work of the click seep classifier
 Separated into a separate class for clarity and to keep 
 Separate from all the control functions.
Extension of canvas which allows Swing Graphics2D code to be used in JavaFX
A user display which is based on a swing component.
Set of dialog warnings which can be called on either the AWT of the FX thread.
Listener called when symbol data changes with a symbol maanger.
Class to hold symbol data for both FX and Swing types 
 of PAMSymbols.
A symbol modifier modifies a PamSymbol.
Pane which allows the changing the settings of a symbol modifier.
Panel to include in a dialog with options to select and activate a variety of symbol modifiers.
Version of the standard symbol manager that only has the optoin on the main
 symbol type and no modifiers whatsoever.
Gets a callback when a symbol has been modified so that
 it can repaint.
Different db systems can proide a system specific dialog panel
 by implementing this interface
Different db systems can proide a system specific dialog panel
 by implementing this interface
Doesn't actually do anything, but does collate some system information
Class for some system based time functions, primarily to get
 CPU time for the process and to set the system time.
This is similar to a tabbed pane but instead of tabs overlapping each other as in a JTabbedPane they expand and contract.
Settings information for a PamGuiTabFX.
Create a VBox or HBox with create (+ icon), edit (settings icon) and delete (- icon) buttons.
Pane which holds data within a table  and has add, settings and delete buttons.
Some general functions to do with table checks which I want to use outside of the 
 normal dattabse interface.
Simple pane to select a tab and create a new tab if neeeded.
The Class TargetConfiguration represents a single configuration
 for the likelihood detector, which can run multiple configurations
 simultaneously.
The State enumeration represents the current activity state of the
 TargetConfiguration, that is, whether is is currently requested to
 be active by the user (or, alternately inactive), or whether there
 is an error in one of the parameters of the configuration.
The Class TargetConfigurationExporter.
The TargetConfigurationImporter is used to import a target configuration from an ASCII
 file that have been saved by the TargetConfigurationExporter.
The TargetConfigurationNameDialog is used by the LikelihoodDetectionParametersDialog to
 allow the user to enter in a new target configuration name.
Target motion module.
The targetMotionControl Panel allows the user to select a GROUP of  pamDetections which can be passed to the localisation algorithms and used in target motion analysis.
Reinstated Target motion add-in as used by the click detector.
The control panel will return a list of pamDetections.
Deprecated.
Reinstated Target motion add-in as used by the click detector.
Reinstated Target motion add-in as used by the click detector.
Reinstated Target motion add-in as used by the click detector.
Parameter control for offline task groups.
Handles logging of tasks to the database.
Wee class for holding the latest data on each task, most importantly the 
 database index which is needed for updates.
Dummy datablock to use with some dummy SQLLogging classes in TaskLogging.
Interface to receive notifications about the 
 task progress (which will be running in a 
 different SwingWorker thread).
Class used to transfer status and progress
 information out of the OfflienTaskGroup worker thread.
Subclass for the td display.
Wrapper which holds a list of time delays and the corresponding detections used to calculate those delays.
The axis panel forms the main Component of the display, The time 
 scroller and various other components get added and controlled 
 from TDControl though.
The main class for the TDDisplay.
TDControlFX acts as a wrapper class for a time base display programmed in JavaFX.
The controller for the display if the main PAMGuard GUI is in JavaFX mode.
Top pane.
Information about a type of data that can be displayed on any of the plots.
Information about a type of data that can be displayed on any of the plots.
A plugin is used to display extra data for a TDDataInfo.
TDDataInfo objects can't be serialised since they contain 
 references back into datablocks and everything else in PAMguard, 
 so have to hold a summary of what's in each one to save into psf files.
Provider class from TD data.
Provider class for TD data.
Static holder of information about plottable data.
Static holder of information about plottable data.
A pane which allows users to;
The controller for the TD display.
The main display node for showing tdGraphs.
Panel for a data graph.
Contains a set of split panes or 
 a box layout for all the actual graphs.
A TDGraph allows users to plot multiple types of data on a single time based
 graph.
The settings for an individual graph.
Pane with control to change generic settings of a TDGraphFX.
A basic zoomer class for the tdgraph.
Contains functions required to calculate a hyperboloid using time delays.
Contains functions required to calculate a hyperboloid using time delays.
Gets callbacks from the registry menu when a 
 particular provider is selected.
Default symbol chooser for the display.
Adapter which converts the OverlayMark class within PAMGuard to the TDOverlayMarker used in the dataPlotsFX display.
Handle mouse events from an FX display and send them off into the 
 main panel marking thingamagig.
The pane for the adv.
An overlay adapter allows user mouse and touch interactions with the display.
Subclass for the td display.
Stores parameters for a TDDisplay.
A more complex pop up menu for the display.
Projector which handles all time to pixel conversions for the display.
Information about the scale requirements
 of a set of plotable data.
Data for the TDScaleInfo which can be serialised and saved.
SettingsPane for acosutic scroller.
A wrapper for the hiding panes which allow users to change display settings for each different data block 
 Associated with a TDGraphFX.
Pane which quickly allows users to change spectrogram settings
Interface allowing things getting drawn on the plots to chose their won symbol
Interface allowing things getting drawn on the plots to chose their won
 symbol
Temporary data unit for unconfirmed click trains.
Temp data units for bearing localiser and crossed bearing localisation ...
Temp data units for bearing localiser and crossed bearing localisation ...
Classification result for the template classifier.
Pane which allows users set classification parameters for a template classifier.
Parameters for the template classifier
Interface fro importing a template
Shows and allows users to import a spectrum template.
Terminal component super class
 Handle events
Implements the FilteredConsumer interface.
Runs a simple GUI and tests the MHT click train algorithm on a bunch
 of simulated clicks.
Test how BitSets work
Quick program which performs some simple tests the standard chi^2 
 algorithm.
Contains the main list of clusters as well as three smaller panels for test range, quick tests and random tests.
Possible document actions
Top strip of main Tethys GUI for connection and project information
Quick play with a simple system for outputting data to Tethys.
Any PAMGuard data stream which can provide Detection data to PAMGuard will 
 be able to return one of these.
Table view of a collection of Tethys documents.
Common panel used by Calibrations, Deployments and Detections to show an export button and other 
 common components, such as help, a table, etc..
Parameters for controlling export of Tethys data.
Class to hold and unpack a XML string returned from the ITIS_ranks document
 in a Tethys database.
Static formatting (rounding and range checking) functions for latlong values.
Summary of localisation info in a datablock, specific to Tethys needs.
Function(s) to get location information for Tethys in the required format.
Logging everything we put into Tethys in our own database.
Functions to pack up a PAMGuard parameters object into the correct format
 for Tethys.
Set of functions to provide mesage reports on Tethys output.
Deprecated.
Basis for a message system which will get passed around whenever something happens in
 Tethys, whether it be a new connection, progress during data output, etc.
Base class for offline tasks in Tethys.
Manager for offline tasks in Tethys.
Hold settings for all Tethys tasks.
Settings controlling output of a Tethys stream.
Class to make it easy to find tooltips for a given nilus class and field nams.
Wizard card with a few extra functions for Tethys.
Text terminal: Use Java font to render
Data returned by a TFContourProvider.
Interface to add to data units that hold a time-frequency contour.
This is a decorator class for PamObservers which intercepts any
 data being sent to that observer and puts the data into a list
 which will then be re-read in a separate thread, rather than
 sending if for direct execution.
A threading hydrophone is one that exactly follows the track of the ship.
This class performs the actual max likelihood detector logic.
This is the Threshold Detectors output data unit.
This PamProcess is the main maximum likelihood threshold detector logic.
Vasic data block for tide data
Stores data on the tide at a specific location at a specific time.
The tide manager open tide data and holds it in memory.
Converts a string to tide data
Class to hold time correction information
Chi^2 value for time delays.
Class to pass round time delay data.
Time delay parameters.
Converts a tiome to another time.
Class to format time ranges, particularly when they get quite large and doing them 
 in seconds no longer makes sense.
Want something along the lines of
if an integer number of days, then just days,
if an integer number of hours, then days and hours
if an integer numeber of minutes, then days, hours, minutes
if an integer number of seconds, then days, hours, minutes, seconds
etc.
Want something along the lines of
if an integer number of days, then just days,
if an integer number of hours, then days and hours
if an integer numeber of minutes, then days, hours, minutes
if an integer number of seconds, then days, hours, minutes, seconds
etc.
A time range spinner which allows integration with a PAMGUARD time scroll bar.
Spinner which cycles through various time ranges.
Enumeration of the ReferenceFrame field in nilus.Localize.Effort.TimeReference 
Within Tethys, these are only ever used in their String form.
Within Tethys, these are only ever used in their String form.
Simple annotation type that does nothing by add a string text to 
 a datat unit.
Class for filtering double of float values in a database table
Simple decorator class to add a titled border to any settings pane.
Options for target motion analysis.
Annotation type for target motion analysis.
Reinstated Target motion add-in as used by the click detector.
Takes a PamDetection with sub detections and has functions to generate various types of information for a localiser.
This class handles the loading for data for the target motion module.
Reinstated Target motion add-in as used by the click detector.
This class deals with processes in the target Motion localiser which ONLY occur in offline mode.
Parameters that apply to all TOAD based localisers.
Class to handle TOAD (Time of Arrival Difference) calculations for a particular type of data.
Class to tell a TOAD calculator how to filter data during a cross correlation 
 measurement.
Class holding information about TOAD delays, channels, etc.
The Mimplex localiser is similar to MCMC but it localises multiple possible combinations using fast algorithms then uses MCMC to localiser the final combination.
The TOAD options pane.
Deprecated.
use older DelayMeasurementParams instead.
Holds information on a track possibility
Simple class for holding a few bits of information on the track
Something similar to ClickTrainDetector, but working on the output of tracked clicks so that 
 accurate positions for groups of tracked clicks are calculated and can be displayed / stored.
Data block contains summary statistics for tracked groups of difar bearings
 Summary statistics are calculated not only on an individual channel, but 
 individually for each sonobuoy deployment.
Hold localisation information for Difar TrackedGroups.
TrackedGroupOverlayGraphics show a summary of all the bearings
 to each tracked group (on the map)
Subscribe to DifarDataBlocks and assign new bearings to groups of whales
Database storage of DIFAR information.
Some general information about the track: whether it exists and 
 the frequency of GPS points.
A collection of training data for multiple species.
A collection of training data for multiple species.
A group of training data from a single species
A group of training data from a single species
Training contours from a single file, each contour representing
 one whistle.
Training contours from a single file, each contour representing
 one whistle.
Storage for whistle classifier training data.
Storage for whistle classifier training data.
Class containing functions to randomly select suitable groups of
 training and test data from a TrainingDataCollection
Stores a shape and a transform, if it has one.
The TreeTable class provides a widget that is not native to the standard
 Swing UI library - the Tree Table.
The TreeTableModel represents a LikelihoodDetectionParameters object
 (which contains module parameters and an ArrayList of TargetConfiguration objects)
 as a node-based tree for use with a JTree.
The class TreeTableModelAdapter is a necessary part of the TreeTable implementation
 because it serves as a bridge between the JTable that forms part of the widget and
 the JTree that forms another part (the table cell renderer).
Class to stack up blocks of data about the trigger background level and store them 
 into sensible sized data units, i.e.
Basic recorder trigger which can be re-implemented in many guises.
 
  Last updated on May 26, 2015
This class is almost identical to the simple exponential (decaying) average.
Some functions to load and import data stored in text files (includes .csv files)
Type modifications for ucanacces.
Thread for receiving and responding to UDP commands and requests over
 the network
Interface which can take data unit or information 
 from either a binary file or from a database and 
 find the corresponding data in the other type of store.
Class for managing UID's during real time operations.
Params needed for the UID repair.
Class to store UID information about the database tables.
Modification of PAMViewParameters to work using a list of UID's rather than
 a between times type string.
Task manager for a PamControlledUnit.
The unit test for Signal and Guard Bands.
Dialog to update the PC clock from GPRMC data.
Generic class for copying data from binary data files to database files.
Very simple class used in an ArrayList of used modules that 
 get's saved between runs.
Class to hold information about and send notifications to open user display components.
Adapter class for UserDisplayComponent which manages
 some of the functions which may not be needed to all 
 display components.
Class which acts as a plug in for a display in PAMGUARDFX.
Frames for general purpose user displays.
Any display which sits inside PAMGuard must be an instance of UserDisplayNodeFX.
Parameters for a display node.
Provider of displays for the main display panel.
User form data selector for use with annotations.
This is a wrapper around a standard forms data selector.
SQL Logging addon for Logger form annotations.
User form symbol modifier for use in user form annotations.
A symbol modifier which allows the user to manually change settings.
Override standard Timestamp class and stop it making UTC corrections as it writes to database
Created by pedro_000 on 6/28/2014.
Filter class for use with multiple data types in filtering 
 database table data.
Abstract class for ValueFilters for filtering database data tables.
UI for rotating text in VerticalLabel
A vertical layout manager similar to java.awt.FlowLayout.
Provide a graphics planel, or panels that can be added to the bottom of spectrogram
 displays.
Class for passing around data on how the load of 
 data from the databsae is going.
Class for tansfering data about  adata load precess.
The videoRange module determines location information based on photographs of objects (photogrammetry).
The main display.
A wrapper to allow an FX pane to be become part of the tab p[ane.
The horizon method allows a user to click two points to define a horizon and then click an animal to define a RANGE.
Method for measuring the distance to an animal based on the pitch and height of an observer.
Pane which holds some type of visual media e.g.
Pane for editing an image or video
This panel control image editing.
Pane for showing an image or video.
Holds the image and can be used to PAN and zoom
The LandMark uses landmarks at known positions or at known angles from the
 position the image was taken to calculate an animal's position.
Class to store information on loclaisations using an image.
Basic media player to watch videos in the video range module.
Pane which shows the metadata for an image or video.
The Method to localise animals from an image.
Main pane to hold image and controls.
Pane for changing the main video range settings class.
AbstractVRMethod contains many useful functions to create panels, update methods ,
Holds side controls.
Create a JavaFX GUI within the current swing framework.
Some useful functions for the video range module.
Interface for warning displays.
System for handling and displaying warnings and errors from various parts of PAMguard.
Show a dialog which can display a warning message and can be told to 
 never show again.
Part of a managed warning system.
A warning dialog in JavaFX with a "do not show again" dialog box.
Serializable list of which warnings should be hidden.
Class to manage more sophisticated communications with PAMDog.
Waterfall spectrogram plot for super detections detections which have sub detections
 that can provide FFT data.
Settings pane for a waterfall spectrogram.
Quick constructor for 16 bit wav file audio formats.
Wav annotation type.
Wav audio file - opens any raw audio file.
Handles writing of .wav files.
Writes data units and/or ordered raw data to a wav file.
Class to provide clip functions to a pam data unit.
Functions to plot a waveform on a plot panel.
Waveform plot.
Options for exporting wav files
Export a .wav clip.
Wav file input stream which will work for large wav files (>2 Gigabytes) which 
 fail with the standard JAva classes since the data chunk size gets read as a
 signed integer which then ends up invalid input: '<' 0.
Bespoke system for storing wav files.
Chunk information from a wav file header.
Worker which extracts acoustic files from a folder.
Panel to west align components witin other components.
Controls the appearance of whistles on a TDGraphFX.
Whistle Classifier control class.
Whistle Classifier process
Interface to get the basic information out of a 
 whistle object.
Class containing functions to calulate the delay between 
 a detected whistle on one channel and the signal on 
 an adjacent channel.
Class for estimating whistle delays from a whistle shape.
Plots a whistle contour over a spectrgram if one is available.
Break a whistle up into fragments.
Whistle group detection is initially designed to take just one whistle from each 
 of many hydrophone pairs.
Whistles/Moans are long (relatively) tonal sounds which can be plotted on a bearing/amplitude display and/or spectrogram.
Transform whistles to an image.
Plot which shows FFT settings controls and a colour box to change whistle colour.
dDefines colours and symbols for whistles on the TD display
Functions to convert a group fo whistle contours to an average spectrum.
Plots a Wigner transform of a detection.
Called whenever a wigner calculation is updated.
Window function for use with FFT.
Default data selector for the whsitle and moan detector.
JavaFX settings pane for the whsitle and moan detector data selector.
Notes on ManagedParameters
 - the superclass RecorderTriggerData extends ManagedParameters and manually adds in a few fields
 in the getParameterSet method that would otherwise be missed (because they are protected and
 do not have getters).
Wrapper class which returns  Swing GUI functions from the soon to be 
 deprecated functions within the PamControlledUnit class.
Species selector for whistle classifier.
dialog for whistle classifier data selector
Copyright (c) 2013, 2014 Oracle and/or its affiliates.
A utility class to cover up the rough bits of xml parsing
 From http://www.java2s.com/Code/Java/XML/Returnsaniteratoroverthechildrenofthegivenelementwiththegiventagname.htm
Some Swing dialogs n stuff for managing module settings in and out of 
 XML.
control options for when to save XML data and also 
 have buttons for preview and output.
Property form for a cross reference sontrol.
Simple container for a few zero crossing parameters.
Functions to unpack gzip files of PAMBuoy data.
http://www.crazysquirrel.com/computing/java/basics/java-directory-zipping.jspx
To be implemented by any display working with the 
 Zoomer class.
A scroll pane which allows the user to zoom the content node with scroll bars acting accordingly.
Class for handling multiple zoom and marked areas on a
 display.
A zoom polygon created by the zoomer.
Interface to support a variety of zoomable shapes.