public abstract class AbstractSLAlgorithm extends java.lang.Object implements SLAlgorithmModel
' The time delay calculations simply use the default abstractDetectionMatch.groupDetectionsTD() function, however new localisation algorithms may not want to use all possible time delays approach. In this case, to keep things neat, you should change the subclass of 'AbstractDetectionMatch' for the detection in question- time delays calculations belong in this class- the algorithm should simply accept time delays (or other info) and attempt to localise.
Constructor and Description |
---|
AbstractSLAlgorithm(StaticLocalise staticLocalise) |
Modifier and Type | Method and Description |
---|---|
void |
calcDetectionMatchTDs(PamDetection pamDetection,
java.util.ArrayList<PamDataBlock> dataBlocks,
java.lang.Integer detectionType)
Calculate the detection match for a PamDetection.
|
static int |
calcNonNullDelays(java.util.ArrayList<TDArrayList<java.lang.Double>> timeDelays)
Calculates the number of non null delays within
|
PamDetection |
getCurrentDetection() |
static java.util.ArrayList<java.util.ArrayList<java.lang.Double>> |
getDelayArray(java.util.ArrayList<TDArrayList<java.lang.Double>> timeDelays)
Converts a ArrayList
|
SLPanel |
getDisplayPanel()
A panel which shows results, chi distributions etc.
|
javax.media.j3d.Appearance |
getHighlightAppearance()
If the symbol is selected it changes appearance to this.
|
java.util.ArrayList<java.util.ArrayList<javax.vecmath.Point3f>> |
getHydrophonePos() |
javax.media.j3d.Appearance |
getNormalAppearance()
The normal appearance of the 3D localisation symbol.
|
javax.media.j3d.TransformGroup |
getPlotSymbol3D(SLResult staticLocalisationResults)
Default symbol for a localisation is a 3D ellipse with dimensions equal to the calculated errors in 3D.
|
float[] |
getSymbolColour() |
float[] |
getSymbolHightlightColour() |
java.util.ArrayList<java.util.ArrayList<TDArrayList<java.lang.Double>>> |
getTimeDelayErrors() |
java.util.ArrayList<java.util.ArrayList<TDArrayList<java.lang.Double>>> |
getTimeDelays() |
boolean |
isIndependent()
Called whenever a localiser will deal itself with multiple time delays.
|
boolean |
isSelected()
Check whether the algorithm is selected
|
java.util.ArrayList<SLResult> |
runModel(java.lang.Integer tdSel)
Need to have this for the Mimplex localiser.
|
void |
setCurrentDetection(PamDetection pamDetection) |
void |
setHighlightAppearance(LocShape3D locShape)
Set the highlighted appearance of a locShape.Note usually this will just be using getHighlightAppearance() functionality, however more complicated shapes may want to modify this function.
|
void |
setNormalAppearance(LocShape3D locShape)
Set the normal appearance of the locShape.
|
void |
setSelected(boolean selected)
Called whenever an algorithm is selected or deselected.
|
boolean |
stop()
Called to stop algorithm calculations
|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getName, getPlotSymbol, getToolTipText, hasParameters, parametersDialog, runModel, update
public AbstractSLAlgorithm(StaticLocalise staticLocalise)
public float[] getSymbolColour()
public float[] getSymbolHightlightColour()
public void calcDetectionMatchTDs(PamDetection pamDetection, java.util.ArrayList<PamDataBlock> dataBlocks, java.lang.Integer detectionType)
pamDetection
- dataBlocks
- detectionType
- public java.util.ArrayList<java.util.ArrayList<TDArrayList<java.lang.Double>>> getTimeDelays()
public java.util.ArrayList<java.util.ArrayList<javax.vecmath.Point3f>> getHydrophonePos()
public java.util.ArrayList<java.util.ArrayList<TDArrayList<java.lang.Double>>> getTimeDelayErrors()
public javax.media.j3d.TransformGroup getPlotSymbol3D(SLResult staticLocalisationResults)
getPlotSymbol3D
in interface SLAlgorithmModel
public javax.media.j3d.Appearance getNormalAppearance()
SLAlgorithmModel
getNormalAppearance
in interface SLAlgorithmModel
public javax.media.j3d.Appearance getHighlightAppearance()
SLAlgorithmModel
getHighlightAppearance
in interface SLAlgorithmModel
public void setNormalAppearance(LocShape3D locShape)
SLAlgorithmModel
setNormalAppearance
in interface SLAlgorithmModel
public void setHighlightAppearance(LocShape3D locShape)
SLAlgorithmModel
setHighlightAppearance
in interface SLAlgorithmModel
public SLPanel getDisplayPanel()
SLAlgorithmModel
getDisplayPanel
in interface SLAlgorithmModel
public boolean isSelected()
SLAlgorithmModel
isSelected
in interface SLAlgorithmModel
public void setSelected(boolean selected)
SLAlgorithmModel
setSelected
in interface SLAlgorithmModel
public void setCurrentDetection(PamDetection pamDetection)
public PamDetection getCurrentDetection()
public static int calcNonNullDelays(java.util.ArrayList<TDArrayList<java.lang.Double>> timeDelays)
tinmeDelays
- public boolean isIndependent()
SLAlgorithmModel
isIndependent
in interface SLAlgorithmModel
public boolean stop()
SLAlgorithmModel
stop
in interface SLAlgorithmModel
public java.util.ArrayList<SLResult> runModel(java.lang.Integer tdSel)
tdSel
- - selected time dealy possibilitypublic static java.util.ArrayList<java.util.ArrayList<java.lang.Double>> getDelayArray(java.util.ArrayList<TDArrayList<java.lang.Double>> timeDelays)
timeDelays
- time delay array.