Class IshDetControl

java.lang.Object
PamController.PamControlledUnit
IshmaelDetector.IshDetControl
All Implemented Interfaces:
PamSettings, SettingsNameProvider
Direct Known Subclasses:
EnergySumControl, MatchFiltControl, SgramCorrControl

public abstract class IshDetControl extends PamControlledUnit implements PamSettings
Control for the Ishmael Detector modules.
Author:
Hisham Qayum and Dave Mellinger
  • Constructor Details

    • IshDetControl

      public IshDetControl(String controlName, String unitName, IshDetParams ishDetParams)
      Initializer.

      IMPORTANT: The subclass initializer should construct the ishDetParams to pass here. See EnergySumControl for an example.

  • Method Details

    • getIshDetFnProcess

      public IshDetFnProcess getIshDetFnProcess()
      Get the Ishmael Fn process - this creates the detector output but does not perform the binary classification.
    • getDefaultInputDataBlock

      public abstract PamDataBlock getDefaultInputDataBlock()
      Return any old data block of the right type so that the detection process's input can get hooked up to something from the get-go. The input is typically re-hooked when the settings file is read.
      Returns:
      PamDataBlock
    • getNewDetProcess

      public abstract IshDetFnProcess getNewDetProcess(PamDataBlock defaultDataBlock)
      Create a new IshDetProcess of the appropriate type and return it. For example, EnergySumControl returns an EnergySumProcess.
    • getRawInputDataBlock

      public abstract PamRawDataBlock getRawInputDataBlock()
    • prepareNonDetProcesses

      public void prepareNonDetProcesses()
    • createDetectionMenu

      public JMenuItem createDetectionMenu(Frame parentFrame, String menuString)
    • showParamsDialog1

      public abstract void showParamsDialog1(Frame parentFrame)
    • restoreSettings

      public boolean restoreSettings(PamControlledUnitSettings dummy)
      This is called after a settings file is read. The subclass should get newParams and clone it as ishDetParams before calling here.
      Specified by:
      restoreSettings in interface PamSettings
      Returns:
      true if successful The object performs final checks (if needed) and then casts the settings data pamcontrolledunitSettings.settings into the correct type and uses as required
    • pamToStart

      public void pamToStart()
      Description copied from class: PamControlledUnit
      called just before data acquisition starts. Note that PamObservers get a call to setSampleRate anyway so this mainly needs to be used for display elements that may need their scales adjusted before startup.
      Overrides:
      pamToStart in class PamControlledUnit
    • getOutputDataBlock

      public PamDataBlock getOutputDataBlock()
    • getIshDetectionParams

      public IshDetParams getIshDetectionParams()
    • getActiveChannels

      public int getActiveChannels()
      Get a bitmap of the active channels

      If the channel is selected and there is no grouping then channel data unit is analysed. If there are groups then the only the first channel in the group is analysed.

      Returns:
      bitmap of active channels
    • isChanActive

      public boolean isChanActive(int channelMap)
      Check whether a data unit should be analysed for peak and saved depending on grouped detection

      If the channel is selected and there is no grouping then channel data unit is analysed. If there are groups then the only the first channel in the group is analysed.

      Parameters:
      ishFnDataUnit - - the Ishamel raw data unit.
      Returns:
    • getIshPeakProcess

      public IshPeakProcess getIshPeakProcess()
      Get the Ishmael peak process. The peak process selects handles binary classification of the detector output.
      Returns:
      the Ishamel peak process.