WorkshopDemo
Class WorkshopController

java.lang.Object
  extended by PamController.PamControlledUnit
      extended by WorkshopDemo.WorkshopController
All Implemented Interfaces:
PamSettings

public class WorkshopController
extends PamControlledUnit
implements PamSettings

Simple detector designed to demonstrate main Pamguard developer environment, using as many Pamguard features as possible, but in a really simple way. The detector is a very simple in band energy detector. It will subscribe to a block of FFT (spectrogram) data and measure the background noise in a given frequency band over some time period and compare the signal to that background measure. If the SNR is > threhsold a detection starts, if it's below threshold it stops again.

Author:
Doug

Nested Class Summary
(package private)  class WorkshopController.MapSymbolSelect
           
(package private)  class WorkshopController.SetParameters
           
 
Field Summary
private  WorkshopPluginPanelProvider workshopPluginPanelProvider
           
(package private)  WorkshopProcess workshopProcess
           
(package private)  WorkshopProcessParameters workshopProcessParameters
           
 
Fields inherited from class PamController.PamControlledUnit
isViewer
 
Constructor Summary
WorkshopController(java.lang.String unitName)
          Must have a default constructor that takes a single String as an argument.
 
Method Summary
 javax.swing.JMenuItem createDetectionMenu(java.awt.Frame parentFrame)
          Create a JMenu object containing MenuItems associated with PamProcesses
 javax.swing.JMenuItem createDisplayMenu(java.awt.Frame parentFrame)
          This next function sets up a menu which wil be added to the main Display menu
 java.io.Serializable getSettingsReference()
          These next three functions are needed for the PamSettings interface which will enable Pamguard to save settings between runs
 long getSettingsVersion()
           
 void notifyModelChanged(int changeType)
          General notification when the PAMGAURD model changes.
 boolean restoreSettings(PamControlledUnitSettings pamControlledUnitSettings)
           
 
Methods inherited from class PamController.PamControlledUnit
addOtherRelatedMenuItems, addPamProcess, addRelatedMenuItems, canClose, createFileMenu, createHelpMenu, fillXMLElement, fillXMLParameters, getFrameNumber, getNumPamProcesses, getPamController, getPamModuleInfo, getPamProcess, getPamView, getSidePanel, getTabClipCopier, getTabPanel, getTabSpecificMenuBar, getUnitName, getUnitType, gotoTab, notifyArrayChanged, 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
 
Methods inherited from interface PamController.PamSettings
getUnitName, getUnitType
 

Field Detail

workshopProcess

WorkshopProcess workshopProcess

workshopProcessParameters

WorkshopProcessParameters workshopProcessParameters

workshopPluginPanelProvider

private WorkshopPluginPanelProvider workshopPluginPanelProvider
Constructor Detail

WorkshopController

public WorkshopController(java.lang.String unitName)
Must have a default constructor that takes a single String as an argument.

Parameters:
unitName - Instance specific name to give this module.
Method Detail

notifyModelChanged

public void notifyModelChanged(int changeType)
Description copied from class: PamControlledUnit
General notification when the PAMGAURD model changes.

Overrides:
notifyModelChanged in class PamControlledUnit
Parameters:
changeType - type of change

createDisplayMenu

public javax.swing.JMenuItem createDisplayMenu(java.awt.Frame parentFrame)
This next function sets up a menu which wil be added to the main Display menu

Overrides:
createDisplayMenu in class PamControlledUnit
Returns:
reference to a JMenu which can be added to an existing menu or menu bar

Note that if multiple views are to use the same menu, then they should each create a new menu (by setting Create to true) the first time they call this method.


createDetectionMenu

public javax.swing.JMenuItem createDetectionMenu(java.awt.Frame parentFrame)
Description copied from class: PamControlledUnit
Create a JMenu object containing MenuItems associated with PamProcesses

Overrides:
createDetectionMenu in class PamControlledUnit
Parameters:
parentFrame - The owner frame of the menu
Returns:
reference to a JMenu which can be added to an existing menu or menu bar

Note that if multiple views are to use the same menu, then they should each create a new menu (by setting Create to true) the first time they call this method.


getSettingsReference

public java.io.Serializable getSettingsReference()
These next three functions are needed for the PamSettings interface which will enable Pamguard to save settings between runs

Specified by:
getSettingsReference in interface PamSettings
Returns:
The serialisable object that will be stored

getSettingsVersion

public long getSettingsVersion()
Specified by:
getSettingsVersion in interface PamSettings
Returns:
An integer version number for the settings

restoreSettings

public boolean restoreSettings(PamControlledUnitSettings pamControlledUnitSettings)
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