clickDetector
Class ClickTrainDetector

java.lang.Object
  extended by PamguardMVC.PamProcess
      extended by clickDetector.ClickTrainDetector
All Implemented Interfaces:
Annotator, PamObserver

public class ClickTrainDetector
extends PamProcess


Nested Class Summary
(package private)  class ClickTrainDetector.CTRecorderTrigger
           
 
Field Summary
(package private)  ClickControl clickControl
           
(package private)  PamDataBlock<ClickDetection> clickDataBlock
           
(package private)  ClickDetector clickDetector
           
(package private)  ClickTrainDataBlock clickTrains
           
private  ClickTrainDetector.CTRecorderTrigger ctRecorderTrigger
           
(package private)  DetectionGroupLocaliser detectionGroupLocaliser
           
private  double minAngleForFit
           
(package private)  ClickTrainDataBlock newClickTrains
           
 
Fields inherited from class PamguardMVC.PamProcess
outputDataBlocks, processName, sampleRate
 
Constructor Summary
ClickTrainDetector(ClickControl clickControl, PamDataBlock<ClickDetection> clickDataBlock)
           
 
Method Summary
 void clearAllTrains()
           
private  void closeOldTrains(ClickGroupDataBlock<ClickTrainDetection> dataBlock, long now)
           
protected  double closeTrainTime()
           
 long getRequiredDataHistory(PamObservable o, java.lang.Object arg)
           
protected  void localiseClickTrain(ClickTrainDetection clickTrain)
           
protected  ClickTrainDetection matchClickIntoGroup(ClickDetection newClick)
           
 void newData(PamObservable o, PamDataUnit arg)
           
 void pamStart()
          Called for each process to tell it to start (may not be necessary for processes which are listening for data anyway.
 void pamStop()
          Stops the process.
protected  ClickTrainDetection processClick(ClickDetection newClick)
           
 void setSampleRate(float sampleRate, boolean notify)
          New sample rate
 
Methods inherited from class PamguardMVC.PamProcess
absMillisecondsToSamples, absSamplesToMilliseconds, addOutputDataBlock, changedThreading, clearOldData, createAnnotations, destroyProcess, fillXMLElement, fillXMLParameters, getAncestorDataBlock, getAnnotation, getBackendProcess, getChainPosition, getCpuPercent, getNumAnnotations, getNumOutputDataBlocks, getObserverName, getObserverObject, getOfflineData, getOutputDataBlock, getPamControlledUnit, getParentDataBlock, getParentProcess, getProcessName, getRawSourceDataBlock, getSampleRate, getSourceDataBlock, getSourceProcess, isCanMultiThread, makePamProcess, masterClockUpdate, noteNewSettings, notifyModelChanged, prepareProcess, relMillisecondsToSamples, relSamplesToMilliseconds, removeObservable, removeOutputDatablock, saveViewerData, setBackendProcess, setCanMultiThread, setParentDataBlock, setParentDataBlock, setProcessName, setupProcess, toString, update, updateData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

clickControl

ClickControl clickControl

clickDetector

ClickDetector clickDetector

clickDataBlock

PamDataBlock<ClickDetection> clickDataBlock

clickTrains

ClickTrainDataBlock clickTrains

newClickTrains

ClickTrainDataBlock newClickTrains

ctRecorderTrigger

private final ClickTrainDetector.CTRecorderTrigger ctRecorderTrigger

minAngleForFit

private final double minAngleForFit
See Also:
Constant Field Values

detectionGroupLocaliser

DetectionGroupLocaliser detectionGroupLocaliser
Constructor Detail

ClickTrainDetector

ClickTrainDetector(ClickControl clickControl,
                   PamDataBlock<ClickDetection> clickDataBlock)
Method Detail

clearAllTrains

public void clearAllTrains()

getRequiredDataHistory

public long getRequiredDataHistory(PamObservable o,
                                   java.lang.Object arg)
Specified by:
getRequiredDataHistory in interface PamObserver
Overrides:
getRequiredDataHistory in class PamProcess
Parameters:
o - PamObservable class requiring the data
arg - optional argument from PamObservable
Returns:
time in milliseconds requried by data held in PamObservable

newData

public void newData(PamObservable o,
                    PamDataUnit arg)
Overrides:
newData in class PamProcess

closeTrainTime

protected double closeTrainTime()

closeOldTrains

private void closeOldTrains(ClickGroupDataBlock<ClickTrainDetection> dataBlock,
                            long now)

processClick

protected ClickTrainDetection processClick(ClickDetection newClick)

matchClickIntoGroup

protected ClickTrainDetection matchClickIntoGroup(ClickDetection newClick)

localiseClickTrain

protected void localiseClickTrain(ClickTrainDetection clickTrain)

pamStart

public void pamStart()
Description copied from class: PamProcess
Called for each process to tell it to start (may not be necessary for processes which are listening for data anyway.

Specified by:
pamStart in class PamProcess

pamStop

public void pamStop()
Description copied from class: PamProcess
Stops the process.

Specified by:
pamStop in class PamProcess

setSampleRate

public void setSampleRate(float sampleRate,
                          boolean notify)
Description copied from interface: PamObserver
New sample rate

Specified by:
setSampleRate in interface PamObserver
Overrides:
setSampleRate in class PamProcess
notify - Notify other PamObservers and PamObservables in the chain.