Class PamSymbolManager<T extends PamSymbolChooser>

java.lang.Object
PamView.symbol.PamSymbolManager<T>
All Implemented Interfaces:
PamSettings, SettingsNameProvider
Direct Known Subclasses:
CyclicColourSymbolManager, StandardSymbolManager

public abstract class PamSymbolManager<T extends PamSymbolChooser> extends Object implements PamSettings
PAMSymbolManagers are attached to a single datablock and control the type of symbol and line that get's used to plot data on the variety of PAMGUard displays. Note that different displays may chose to plot data in different ways, so the ManagedSymbolData class will contain a list of different symbol selectors, each of which can behave independently but all have a "generic" option which is a quick way of forcing them all to do the same thing.
Author:
dg50
  • Field Details

  • Constructor Details

    • PamSymbolManager

      public PamSymbolManager(PamDataBlock pamDataBlock2)
  • Method Details

    • getUnitName

      public String getUnitName()
      Specified by:
      getUnitName in interface SettingsNameProvider
      Returns:
      A Name specific to this instance of the particular class, e.g. Sperm whale detector, Beaked whale detector, etc.
    • getUnitType

      public String getUnitType()
      Specified by:
      getUnitType in interface PamSettings
      Returns:
      A Name specific to the type, e.g. Click detector
    • globalClear

      public static void globalClear()
      Global clear of all symbol choosers.
    • clearChoosers

      public void clearChoosers()
      Clear all the symbol choosers for this datablock. Get's called when annotations for the datablock have changed, so that they can all recreated with any new options.
    • getSettingsReference

      public Serializable getSettingsReference()
      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
    • getSymbolChooser

      public PamSymbolChooser getSymbolChooser(String displayName, GeneralProjector projector)
    • getPamDataBlock

      public PamDataBlock getPamDataBlock()
      Returns:
      the pamDataBlock
    • getManagedSymbolData

      public ManagedSymbolData getManagedSymbolData()
      Returns:
      the managedSymbolData
    • getSwingOptionsPanel

      public SwingSymbolOptionsPanel getSwingOptionsPanel(String displayName, GeneralProjector projector)
      Get the Swing pane with controls to change symbol colours, types and line colours.
      Parameters:
      displayName - - the display name
      projector - - the projector associated with the display
      Returns:
      panel with controls for changing symbol settings.
    • getFXOptionsPane

      public FXSymbolOptionsPane<?> getFXOptionsPane(String displayName, GeneralProjector projector)
      Get the FX pane with controls to change symbol colours, types and line colours.
      Parameters:
      displayName - - the display name
      projector - - the projector associated with the display
      Returns:
      panel with controls for changing symbol settings.
    • addSymbolModifiers

      public void addSymbolModifiers(PamSymbolChooser psc)
      Add a list of available (AVAILABLE, not used) symbol modifiers to the chooser when it is created. This get's called whenever a symbol chooser if created, but probably needs to be called again whenever a model is changes in case a module is added that contains an additional annotation modifier AFTER the first call to the display. One to worry about!
      Parameters:
      psc -
    • addAnnotationModifiers

      public void addAnnotationModifiers(PamSymbolChooser psc)
      Add symbol modifiers from annotations.
      Parameters:
      psc - - the symbol chooser.