Package decimator

Class DecimatorControl

All Implemented Interfaces:
OfflineDataStore, OfflineFileDataStore, PamSettings, SettingsNameProvider

public class DecimatorControl extends PamControlledUnit implements PamSettings, OfflineFileDataStore
Author:
Doug Gillespie Quite a simple control unit that filters and decimates raw data producing a new data stream

Needs a control dialog

  • Constructor Details

    • DecimatorControl

      public DecimatorControl(String name)
  • Method Details

    • createDetectionMenu

      public JMenuItem createDetectionMenu(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.

    • 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
    • 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
    • setupControlledUnit

      public void setupControlledUnit()
      Description copied from class: PamControlledUnit
      called for all PamControlledUnits after all units have been created. This is a good time for the controlled units and processes to find and check their source data and the configuration generally since most onjects (i.e. output data blocks) should be in place
      Overrides:
      setupControlledUnit in class PamControlledUnit
    • createOfflineDataMap

      public void createOfflineDataMap(Window parentFrame)
      Description copied from interface: OfflineDataStore
      Create a basic map of the data including first and last times and some kind of data/unit time count plus ideally some kind of start and stop time list of where there are gaps in the data.
      Specified by:
      createOfflineDataMap in interface OfflineDataStore
    • getDataSourceName

      public String getDataSourceName()
      Description copied from interface: OfflineDataStore
      Get the data source name
      Specified by:
      getDataSourceName in interface OfflineDataStore
      Returns:
      data source name
    • getDataLocation

      public String getDataLocation()
      Description copied from interface: OfflineDataStore
      Get the data location. This may be a specific file, or might be a folder if data are in many files, a URI, etc.
      Specified by:
      getDataLocation in interface OfflineDataStore
      Returns:
      store locations
    • loadData

      public boolean loadData(PamDataBlock dataBlock, OfflineDataLoadInfo offlineDataLoadInfo, ViewLoadObserver loadObserver)
      Description copied from interface: OfflineDataStore
      Load data for a given datablock between two time limits.
      Specified by:
      loadData in interface OfflineDataStore
      Parameters:
      dataBlock - datablock owner of the data
      Returns:
      true if load successful.
    • saveData

      public boolean saveData(PamDataBlock dataBlock)
      Description copied from interface: OfflineDataStore
      Save data previously loaded from the store during offline viewing.
      Specified by:
      saveData in interface OfflineDataStore
      Parameters:
      dataBlock - datablock owner of the data
      Returns:
      true if saved or save not needed. False if an error prevents saving.
    • getOfflineFileServer

      public OfflineFileServer getOfflineFileServer()
      Specified by:
      getOfflineFileServer in interface OfflineFileDataStore
      Returns:
      The offline file server which will do the actual work
    • getParentProcess

      public PamProcess getParentProcess()
      Specified by:
      getParentProcess in interface OfflineFileDataStore
    • getRawDataBlock

      public PamRawDataBlock getRawDataBlock()
      Specified by:
      getRawDataBlock in interface OfflineFileDataStore
    • rewriteIndexFile

      public boolean rewriteIndexFile(PamDataBlock dataBlock, OfflineDataMapPoint dmp)
      Description copied from interface: OfflineDataStore
      Moved this function over from binary data store. Many storage systems may not be able to do this, but some might !
      Specified by:
      rewriteIndexFile in interface OfflineDataStore
      Returns:
    • getDatagramManager

      public DatagramManager getDatagramManager()
      Specified by:
      getDatagramManager in interface OfflineDataStore
      Returns:
      the datagramManager
    • getDecimatorParams

      public DecimatorParams getDecimatorParams()
    • isIntegerDecimation

      public boolean isIntegerDecimation()
      See if the decimator is integer, whether going up or down in frequency
      Returns:
    • isIntegerDecimation

      public boolean isIntegerDecimation(float newSampleRate)
    • isIntegerDecimation

      public boolean isIntegerDecimation(float sourceFS, float newSampleRate)
    • getGUI

      public PamControlledUnitGUI getGUI(int flag)
      Description copied from class: PamControlledUnit
      Get the GUI for the PAMControlled unit. This has multiple GUI options which are instantiated depending on the view type.
      Overrides:
      getGUI in class PamControlledUnit
      Parameters:
      flag - . The GUI type flag defined in PAMGuiManager.
      Returns:
      the GUI for the PamControlledUnit unit.
    • setDecimatorParams

      public void setDecimatorParams(DecimatorParams newParams)
    • getDecimatorProcess

      public DecimatorProcessW getDecimatorProcess()
      Get the decimator process.
      Returns:
      the decimator process.