Package PamguardMVC

Class SingletonDataBlock<Tunit extends PamDataUnit>

java.lang.Object
PamguardMVC.PamObservable
PamguardMVC.PamDataBlock<Tunit>
PamguardMVC.SingletonDataBlock<Tunit>

public class SingletonDataBlock<Tunit extends PamDataUnit> extends PamDataBlock<Tunit>
Version of pamdatablock that always keeps one and only one dataUnit.
Author:
Doug
  • Constructor Details Link icon

    • SingletonDataBlock Link icon

      public SingletonDataBlock(Class unitClass, String dataName, PamProcess parentProcess, int channelMap)
  • Method Details Link icon

    • addPamData Link icon

      public void addPamData(Tunit pamDataUnit)
      Description copied from class: PamDataBlock
      Adds a new PamDataUnit to the PamDataBlock. When the data unit is added, PamObservers that have subscribed to the block will be notified.
      If the data unit already has a UID, it will be left as is.
      Overrides:
      addPamData in class PamDataBlock<Tunit extends PamDataUnit>
      Parameters:
      pamDataUnit - Reference to a PamDataUnit
    • removeOldUnitsT Link icon

      protected int removeOldUnitsT(long currentTimeMS)
      Description copied from class: PamDataBlock
      Removes olderPamDataUnits from memory, starting at the first unit and continuing until if finds one with data coming earlier than the given time in milliseconds.

      If the data are acoustic, it tries to find the data source and looks to see how much data has been placed in the source data unit and does the calculation in samples.

      Overrides:
      removeOldUnitsT in class PamDataBlock<Tunit extends PamDataUnit>
      Parameters:
      currentTimeMS - Time in milliseconds of the first data which must be kept
      Returns:
      the number of units removed
    • removeOldUnitsS Link icon

      protected int removeOldUnitsS(long mastrClockSample)
      Overrides:
      removeOldUnitsS in class PamDataBlock<Tunit extends PamDataUnit>
    • clearAll Link icon

      public void clearAll()
      Description copied from class: PamDataBlock
      Clears all PamDataUnits from memory

      In viewer mode, data are also re-saved.

      Overrides:
      clearAll in class PamDataBlock<Tunit extends PamDataUnit>