PamDetection
Class PamDetection<T extends PamDetection,U extends PamDetection>
java.lang.Object
PamguardMVC.PamDataUnit
PamDetection.AcousticDataUnit
PamDetection.PamDetection<T,U>
- All Implemented Interfaces:
- java.lang.Comparable<PamDataUnit>
- Direct Known Subclasses:
- AbstractWhistleDataUnit, AbstractWhistleDataUnit, ClickDetection, EventDataUnit, GroupDetDataUnit, GroupDetection, IshAnchorGroup, IshDetection, IshDetWrapper, IshTrack, OfflineEventDataUnit, PamLocalisation, PeakDataUnit, RoccaContourDataUnit, RoccaDataUnit, RoccaSightingDataUnit, ThresholdDetectorDataUnit, TowedArray3DDataUnit, TriggerLevelDataUnit, VetoDataUnit, WorkshopDataUnit
public class PamDetection<T extends PamDetection,U extends PamDetection>
- extends AcousticDataUnit
Base class for all Pamguard detections.
Hopefully, we'll be able to subclass this off to become
more specific for various other detection types.
These things will nearly always be stored within a PamDataUnit
which already contains some of the information - such as the
channelMap - should this be repeated here ?
One thing this will have to do is to deal with the myriad of different
amplitude types. I suggest that the basic storage unit should either be
fft amplitude units - which will be there for any detection that comes
out of a spectrogram, or peak ADC values, such as would come from a click
detector. The class will have functions for converting between the different
amplitude types.
- Author:
- Doug Gillespie
|
Constructor Summary |
PamDetection(long timeMilliseconds,
int channelBitmap,
long startSample,
long duration)
|
| Methods inherited from class PamDetection.AcousticDataUnit |
amplifyMeasuredAmplitudeByDB, amplifyMeasuredAmplitudeByLinear, compareTo, getAmplitudeDB, getCalculatedAmlitudeDB, getDuration, getFrequency, getFrequencyOverlap, getLastSample, getMeasuredAmplitude, getMeasuredAmplitudeType, getSeconds, getStartSample, getTimeOverlap, setCalculatedAmlitudeDB, setDuration, setFrequency, setInfo, setMeasuredAmplitude, setMeasuredAmplitude, setMeasuredAmplitudeType, setStartSample |
| Methods inherited from class PamguardMVC.PamDataUnit |
clearUpdateCount, getAbsBlockIndex, getChannelBitmap, getDatabaseIndex, getDatabaseUpdateOf, getDataUnitFileInformation, getGpsPosition, getLastUpdateTime, getLocalisation, getOriginLatLong, getPairAngle, getParentDataBlock, getTimeMilliseconds, getUpdateCount, setAbsBlockIndex, setChannelBitmap, setDatabaseIndex, setDatabaseUpdateOf, setDataUnitFileInformation, setLastUpdateTime, setLocalisation, setOriginLatLong, setParentDataBlock, setTimeMilliseconds, updateDataUnit |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
peakTime
private double peakTime
- Time of peak within a detection, in msec.
relative to the start of the PAMGUARD run
detectionType
java.lang.String detectionType
subDetections
private java.util.Vector<T extends PamDetection> subDetections
superDetections
private java.util.Vector<U extends PamDetection> superDetections
subDetectionSyncronisation
private java.lang.Object subDetectionSyncronisation
superDetectionSyncronisation
private java.lang.Object superDetectionSyncronisation
PamDetection
public PamDetection(long timeMilliseconds,
int channelBitmap,
long startSample,
long duration)
getPeakTime
public double getPeakTime()
- Returns:
- Returns the peakTime, in msec.
relative to the start of the PAMGUARD run
setPeakTime
public void setPeakTime(double peakTimeMsec)
- Parameters:
peakTimeMsec - The peakTime to set, in msec.
relative to the start of the PAMGUARD run.
getDetectionType
public java.lang.String getDetectionType()
- Returns:
- Returns the detectionType.
setDetectionType
public void setDetectionType(java.lang.String detectionType)
- Parameters:
detectionType - The detectionType to set.
addSubDetection
public void addSubDetection(T subDetection)
- Add a sub detection to the sub detection list.
- Parameters:
subDetection -
setUniqueSuperDetection
public void setUniqueSuperDetection(U superDetection)
- Sets a unique super detection. i.e. if the
data unit already had a super detection of the
same class, then this data unit is removed from that
pre-existing superdetection.
- Parameters:
superDetection -
addSuperDetection
public void addSuperDetection(U superDetection)
getSubDetectionsCount
public int getSubDetectionsCount()
getSuperDetectionsCount
public int getSuperDetectionsCount()
getSubDetection
public T getSubDetection(int ind)
getSuperDetection
public U getSuperDetection(java.lang.Class superClass)
getSuperDetection
public U getSuperDetection(int ind)
removeSubDetection
public void removeSubDetection(T subDetection)
removeSuperDetection
public void removeSuperDetection(U superDetection)
getSubDetectionSyncronisation
public java.lang.Object getSubDetectionSyncronisation()
getSuperDetectionSyncronisation
public java.lang.Object getSuperDetectionSyncronisation()