likelihoodDetectionModule
Class LikelihoodFFTController

java.lang.Object
  extended by PamController.PamControlledUnit
      extended by likelihoodDetectionModule.LikelihoodFFTController

public class LikelihoodFFTController
extends PamControlledUnit

The class LikelihoodFFTController manages the automatic creation of any FFT processes that are required to support the target configurations. It will search out in the PamGuard system for existing FFT processes that have parameters that match what is required, but if it doesn't find any it will create one of its own FFT processes to manage one or more processing streams. In order for the object to be able to add new processes to the PamGuard system, it has to inherit the PamControlledUnit interface.


Field Summary
private  PamRawDataBlock block
          The block of raw acoustic data that the extra fft processes will need to subscribe to.
private  java.util.ArrayList<LikelihoodFFTProcess> fftProcesses
          The fft processes.
 
Fields inherited from class PamController.PamControlledUnit
isViewer
 
Constructor Summary
LikelihoodFFTController(java.lang.String controllerName, PamRawDataBlock block)
          Instantiates a new likelihood fft controller.
 
Method Summary
 void createFFTProcess(LikelihoodFFTParameters params)
          Request the controller to crete a new fft process based on the specified parameters.
 LikelihoodFFTProcess getProcess(LikelihoodFFTParameters params)
          Get an fft process that matches the supplied parameters.
 void markFFTProcessesUnused()
          Mark fft processes unused.
 void removeAllFFTProcesses()
          Removes the all fft processes.
 void removeUnusedProcesses()
          Removes the unused processes.
 
Methods inherited from class PamController.PamControlledUnit
addOtherRelatedMenuItems, addPamProcess, addRelatedMenuItems, canClose, createDetectionMenu, createDisplayMenu, createFileMenu, createHelpMenu, fillXMLElement, fillXMLParameters, getFrameNumber, getNumPamProcesses, getPamController, getPamModuleInfo, getPamProcess, getPamView, getSidePanel, getTabClipCopier, getTabPanel, getTabSpecificMenuBar, getUnitName, getUnitType, gotoTab, notifyArrayChanged, notifyModelChanged, pamHasStopped, pamToStart, removePamProcess, removeUnit, rename, saveViewerData, setFrameNumber, setPamController, setPamModuleInfo, setPamView, setSidePanel, setTabPanel, setupControlledUnit, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

fftProcesses

private java.util.ArrayList<LikelihoodFFTProcess> fftProcesses
The fft processes.


block

private PamRawDataBlock block
The block of raw acoustic data that the extra fft processes will need to subscribe to.

Constructor Detail

LikelihoodFFTController

public LikelihoodFFTController(java.lang.String controllerName,
                               PamRawDataBlock block)
Instantiates a new likelihood fft controller.

Parameters:
controllerName - the controller name
block - the block of raw audio data that the new fft processes will subscribe to
Method Detail

createFFTProcess

public void createFFTProcess(LikelihoodFFTParameters params)
Request the controller to crete a new fft process based on the specified parameters.

Parameters:
params - The required parameters.

getProcess

public LikelihoodFFTProcess getProcess(LikelihoodFFTParameters params)
Get an fft process that matches the supplied parameters.

Parameters:
params - The parameters for which an fft process is requested.
Returns:
The matching fft process, or null if a match is not found.

removeAllFFTProcesses

public void removeAllFFTProcesses()
Removes the all fft processes.


markFFTProcessesUnused

public void markFFTProcessesUnused()
Mark fft processes unused.


removeUnusedProcesses

public void removeUnusedProcesses()
Removes the unused processes.