public abstract class IshLocProcess extends PamProcess implements SpectrogramMarkObserver
Modifier and Type | Field and Description |
---|---|
Complex[] |
inputData |
MOUSE_DOWN, MOUSE_DRAG, MOUSE_UP
Constructor and Description |
---|
IshLocProcess(IshLocControl ishLocControl) |
Modifier and Type | Method and Description |
---|---|
boolean |
canMark() |
void |
doLocalisation(long startSam,
long durationSam,
double f0,
double f1,
PamRawDataBlock daqBlock)
Do the localization for the call delineated by startMsec, durationMsec, f0,
and f1.
|
PamDataBlock |
getInputDataBlock()
An IshLocProcess has one input stream (data block).
|
java.lang.String |
getMarkObserverName() |
abstract java.lang.String |
getName() |
void |
newData(PamObservable o,
PamDataUnit arg1)
Data for localization can arrive from either an upstream data source or
from the user drawing a box on the spectrogram.
|
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.
|
void |
setParentDataBlock(PamDataBlock newParentDataBlock)
Set a parent data block with the default options of rethreading
if set
|
void |
setupConnections() |
boolean |
spectrogramNotification(SpectrogramDisplay display,
java.awt.event.MouseEvent mouseEvent,
int downUp,
int channel,
long startMsec,
long durationMsec,
double f0,
double f1)
Data for localization can arrive from either an upstream data source or
from the user drawing a box on the spectrogram.
|
absMillisecondsToSamples, absSamplesToMilliseconds, addOutputDataBlock, changedThreading, clearOldData, createAnnotations, destroyProcess, fillXMLElement, flushDataBlockBuffers, getAncestorDataBlock, getAnnotation, getChainPosition, getCpuPercent, getNumAnnotations, getNumOutputDataBlocks, getObserverName, getObserverObject, getOfflineData, getOutputDataBlock, getOutputDataBlocks, getPamControlledUnit, getParentDataBlock, getParentProcess, getProcessName, getRawSourceDataBlock, getRequiredDataHistory, getSampleRate, getSourceDataBlock, getSourceProcess, isCanMultiThread, makePamProcess, masterClockUpdate, noteNewSettings, notifyModelChanged, prepareProcess, processNewBuoyData, relMillisecondsToSamples, relSamplesToMilliseconds, removeAllDataBlocks, removeObservable, removeOutputDatablock, resetDataBlocks, saveViewerData, setCanMultiThread, setParentDataBlock, setProcessName, setSampleRate, setupProcess, toString, update, updateData
public Complex[] inputData
public IshLocProcess(IshLocControl ishLocControl)
public abstract java.lang.String getName()
public void setParentDataBlock(PamDataBlock newParentDataBlock)
PamProcess
setParentDataBlock
in class PamProcess
newParentDataBlock
- source data block.public PamDataBlock getInputDataBlock()
public void setupConnections()
public boolean spectrogramNotification(SpectrogramDisplay display, java.awt.event.MouseEvent mouseEvent, int downUp, int channel, long startMsec, long durationMsec, double f0, double f1)
spectrogramNotification
in interface SpectrogramMarkObserver
display
- spectrogram display; ignoreddownUp
- mouse action (only MOUSE_UP events are used)channel
- which channel was drawn on; ignoredstartMsec
- in absolute msec (since 1970)durationMsec
- f0,f1
- frequency range of the selectionpublic boolean canMark()
canMark
in interface SpectrogramMarkObserver
public void newData(PamObservable o, PamDataUnit arg1)
newData
in class PamProcess
arg1
- data arriving from upstream; type must be PamDetection (or
a subclass of it)public void doLocalisation(long startSam, long durationSam, double f0, double f1, PamRawDataBlock daqBlock)
startSam
- in absolute msec (since 1970)durationSam
- f0,f1
- frequency range to use in calculating the locdaqProcess
- the PamProcess producing raw audio data, needed for getting
hydrophone infopublic java.lang.String getMarkObserverName()
getMarkObserverName
in interface SpectrogramMarkObserver
public void pamStart()
PamProcess
pamStart
in class PamProcess
public void pamStop()
PamProcess
pamStop
in class PamProcess