PamguardMVC
Class AcousticDataBlock<Tunit extends AcousticDataUnit>

java.lang.Object
  extended by PamguardMVC.PamObservable
      extended by PamguardMVC.PamDataBlock<Tunit>
          extended by PamguardMVC.AcousticDataBlock<Tunit>
Type Parameters:
Tunit -
All Implemented Interfaces:
PanelOverlayDraw
Direct Known Subclasses:
AbstractWhistleDataBlock, ClickDataBlock, ClickGroupDataBlock, FFTDataBlock, PamRawDataBlock, TrackedClickDataBlock

public abstract class AcousticDataBlock<Tunit extends AcousticDataUnit>
extends PamDataBlock<Tunit>

Class for all PAMGAURD data based on acoustic types of data, i.e. data which have a sample number (so not NMEA data, depth data, visual data, etc, but raw data, FFT data, detections, etc.).

Includes some functions to relate channel numbers to hydrophone numbers (which are messed up in the decimator) and functions to turn amplitudes from raw units into dB re 1 mu Pa.

Author:
Doug Gillespie

Nested Class Summary
 
Nested classes/interfaces inherited from class PamguardMVC.PamDataBlock
PamDataBlock.OrderData
 
Field Summary
private  ChannelListManager channelListManager
           
private  boolean initialisationComplete
           
private  AcousticDataBlock parentSourceData
           
 
Fields inherited from class PamguardMVC.PamDataBlock
channelMap, dataName, ITERATOR_END, MATCH_AFTER, MATCH_BEFORE, MATCH_EXACT, MIX_DONOTHING, MIX_INTODATABASE, MIX_OUTOFDATABASE, naturalLifetime, NOTIFY_NEW_DATA, NOTIFY_UPDATE_DATA, OFFLINE_DATA_CANCEL, OFFLINE_DATA_INTERRUPT, OFFLINE_DATA_WAIT, orderLock, pamDataUnits, parentProcess, POSITION_AFTER, POSITION_BEFORE, REFERENCE_ABSOLUTE, REFERENCE_CURRENT, REQUEST_DATA_LOADED, REQUEST_DATA_PARTIAL_LOAD, REQUEST_EXCEPTION, REQUEST_INTERRUPTED, REQUEST_NO_DATA, REQUEST_SAME_REQUEST, t, unitsAdded, unitsRemoved, unitsUpdated
 
Fields inherited from class PamguardMVC.PamObservable
masterClockSample, objectChanged, overlayDraw, pamObservers, pamProfiler, totalCalls
 
Constructor Summary
AcousticDataBlock(java.lang.Class unitClass, java.lang.String dataName, PamProcess parentProcess, int channelMap)
           
 
Method Summary
protected  void findParentSource()
           
 ChannelListManager getChannelListManager()
           
 AcousticDataBlock getParentSourceData()
           
 void notifyModelChanged(int changeType)
          Receive notifications from the main PamController.
protected  void prepareAmplitudeCalculations()
           
protected  void prepareChannelLists()
           
 
Methods inherited from class PamguardMVC.PamDataBlock
addLocalisationContents, addObserver, addObserver, addOfflineDataMap, addPamData, autoSetDataBlockMixMode, clearAll, clearDeletedList, createAnnotations, createAnnotations, dumpBlockContents, findAnnotation, findAnnotation, findByDatabaseIndex, findDataUnit, findDataUnit, getAbsoluteDataUnit, getAnnotations, getBinaryDataSource, getCanLog, getChannelMap, getClosestUnitMillis, getCurrentViewDataEnd, getCurrentViewDataStart, getDataGain, getDataName, getDataUnit, getFirstUnit, getFirstUnitAfter, getLastUnit, getListIterator, getListIterator, getListIteratorFromEnd, getListIteratorFromStart, getLocalisationContents, getLogging, getLoggingName, getLongDataName, getMixedDirection, getNaturalLifetime, getNaturalLifetimeMillis, getNextDataStart, getNumOfflineDataMaps, getOfflineData, getOfflineData, getOfflineDataMap, getOfflineDataMap, getOrderStatus, getParentProcess, getPreceedingUnit, getPreceedingUnit, getPreceedingUnit, getPreceedingUnit, getPrevDataEnd, getPrimaryDataMap, getRawSourceDataBlock, getRecycledUnit, getRecyclingStoreLength, getRemovedItems, getSampleRate, getSaveRequirements, getShouldLog, getSourceDataBlock, getSourceProcess, getUnitClass, getUnitIndex, getUnitsCount, getUnitsCountFromTime, isLinkGpsData, isRecycling, loadViewerData, masterClockUpdate, noteNewSettings, orderOfflineData, orderOfflineData, remove, remove, removeOldUnitsS, removeOldUnitsT, saveViewerData, setBinaryDataSource, setChannelMap, setDataName, setLinkGpsData, setLocalisationContents, SetLogging, setMixedDirection, setNaturalLifetime, setNaturalLifetimeMillis, setRecycling, setRecyclingStoreLength, setSampleRate, setShouldLog, shouldNotify, toString, updatePamData
 
Methods inherited from class PamguardMVC.PamObservable
canDraw, clearchanged, countObservers, createKeyItem, deleteObserver, deleteObservers, drawDataUnit, findThreadedObserver, getCPUPercent, getCPUPercent, getHoverText, getLongestObserver, getPamObservers, getRequiredHistory, notifyObservers, notifyObservers, setChanged, setOverlayDraw, waitForThreadedObservers
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

channelListManager

private ChannelListManager channelListManager

parentSourceData

private AcousticDataBlock parentSourceData

initialisationComplete

private boolean initialisationComplete
Constructor Detail

AcousticDataBlock

public AcousticDataBlock(java.lang.Class unitClass,
                         java.lang.String dataName,
                         PamProcess parentProcess,
                         int channelMap)
Method Detail

notifyModelChanged

public void notifyModelChanged(int changeType)
Description copied from class: PamDataBlock
Receive notifications from the main PamController.

Overrides:
notifyModelChanged in class PamDataBlock<Tunit extends AcousticDataUnit>

findParentSource

protected void findParentSource()

prepareAmplitudeCalculations

protected void prepareAmplitudeCalculations()

prepareChannelLists

protected void prepareChannelLists()

getChannelListManager

public ChannelListManager getChannelListManager()

getParentSourceData

public AcousticDataBlock getParentSourceData()