Package detectiongrouplocaliser
Class DetectionGroupDataBlock
java.lang.Object
PamguardMVC.PamObservable
PamguardMVC.PamDataBlock<DetectionGroupDataUnit>
PamguardMVC.superdet.SuperDetDataBlock<DetectionGroupDataUnit,PamDataUnit>
 
detectiongrouplocaliser.DetectionGroupDataBlock
- 
Nested Class Summary
Nested classes/interfaces inherited from class PamguardMVC.superdet.SuperDetDataBlock
SuperDetDataBlock.ViewerLoadPolicy - 
Field Summary
Fields inherited from class PamguardMVC.PamDataBlock
ITERATOR_END, MATCH_AFTER, MATCH_BEFORE, MATCH_EXACT, MIX_DONOTHING, MIX_INTODATABASE, MIX_OUTOFDATABASE, naturalLifetime, NOTIFY_NEW_DATA, NOTIFY_UPDATE_DATA, 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, unitsAdded, unitsRemoved, unitsUpdatedFields inherited from class PamguardMVC.PamObservable
masterClockSample, objectChanged, overlayDraw, pamProfiler - 
Constructor Summary
ConstructorsConstructorDescriptionDetectionGroupDataBlock(String dataName, DetectionGroupControl detectionGroupControl, DetectionGroupProcess detectionGroupProcess)  - 
Method Summary
Modifier and TypeMethodDescriptionvoidaddPamData(DetectionGroupDataUnit pamDataUnit) Adds a new PamDataUnit to the PamDataBlock.voidaddPamData(DetectionGroupDataUnit pamDataUnit, Long uid) Adds a new PamDataUnit to the PamDataBlock and force the UID to a specific value.booleancanSuperDetection(PamDataBlock subDataBlock) Return whether this type of super detection can hold the passed sub detection data.voidclearAll()Clears all PamDataUnits from memoryGet information about species types that may occur within this data block.getTethysDataProvider(TethysControl tethysControl) Gets a data provider for Tethys.booleanneedViewerDataLoad(OfflineDataLoadInfo offlineDataLoadInfo) Do we need to reload offline data ? Default behaviour is to reurn true if the time periods of the data load have changed, false otherwise.protected intremoveOldUnitsS(long mastrClockSample) protected intremoveOldUnitsT(long currentTimeMS) 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.booleanSaves data in this data block in offline viewer mode.voidupdatePamData(DetectionGroupDataUnit pamDataUnit, long updateTimeMillis) update a dataunit.Methods inherited from class PamguardMVC.superdet.SuperDetDataBlock
clearOnViewerLoad, dummyClassResolve, findSubDetDataBlock, getLogging, getSubDetectionClass, getSubtableData, getViewerLoadPolicy, makeSubDetectionInfo, reattachAllSubDetections, reattachSubdetections, setSubtableData, setViewerLoadPolicyMethods inherited from class PamguardMVC.PamDataBlock
addDataAnnotationType, addLocalisationContents, addObserver, addObserver, addOfflineDataMap, addOldPamData, autoEffortProvider, autoSetDataBlockMixMode, cancelDataOrder, cancelDataOrder, checkOfflineDataUIDs, clearAll, clearChannelIterators, clearDeletedList, copyDataList, createProcessAnnotations, createProcessAnnotations, dispose, dumpBlockContents, dumpBufferStatus, findAnnotation, findAnnotation, findByDatabaseIndex, findDataUnit, findDataUnit, findFirstUnitAfter, findLastUnitBefore, findUnitByUIDandUTC, findUnitsinInterval, getAbsoluteDataUnit, getAnnotationHandler, getARealChannel, getBackgroundManager, getBespokeDataMapGraphic, getBinaryDataSource, getCanLog, getChannelIterator, getChannelIteratorCount, getChannelMap, getChannelsForSequenceMap, getClosestUnitMillis, getClosestUnitMillis, getClosestUnitMillisUsingSeq, getCrossReferenceInformation, getCumulativeGain, getCurrentViewDataEnd, getCurrentViewDataStart, getDataAutomationInfo, getDataBlockXML, getDataCopy, getDataCopy, getDataCopy, getDataCopy, getDataCopyFromEnd, getDataCopyFromStart, getDataGain, getDatagrammedMap, getDatagramProvider, getDataName, getDataSelectCreator, getDataSelector, getDataSelector, getDataSelector, getDataUnit, getDataUnitMenuItems, getDataUnitPopupMenu, getDurationRange, getEffortProvider, getFirstRawSourceDataBlock, getFirstUnit, getFirstUnit, getFirstUnitAfter, getFirstViewerUID, getFrequencyRange, getHydrophoneMap, getJSONDataSource, getLastUnit, getLastUnit, getLastUnitMillis, getLastViewerUID, getListIterator, getListIterator, getListIteratorFromEnd, getListIteratorFromStart, getLocalisationAlgorithm, getLocalisationContents, getLoggingName, getLongDataName, getMixedDirection, getMyDataUnits, getNanoTimeCalculator, getNaturalLifetime, getNaturalLifetimeMillis, getNextDataStart, getNextUnit, getNextUnit, getNumOfflineDataMaps, getNumRequiredBeforeLoadTime, getOfflineData, getOfflineDataMap, getOfflineDataMap, getPamConfiguration, getPamSymbolManager, getParentProcess, getPreceedingUnit, getPreceedingUnit, getPreceedingUnit, getPreceedingUnit, getPreceedingUnitFromSeq, getPreceedingUnitFromSeq, getPrevDataEnd, getPrimaryDataMap, getProcessAnnotations, getQuickId, getQuickId2, getRawSourceDataBlock, getRawSourceDataBlock2, getRecordingTrigger, getRecycledUnit, getRecyclingStoreLength, getRemovedItems, getReverseChannelIterator, getSampleRate, getSaveRequirements, getSequenceCount, getSequenceIterator, getSequenceMap, getSequenceMapObject, getShouldBinary, getShouldLog, getShouldLog, getSourceDataBlock, getSourceProcess, getSuperDetectionClass, getSynchLock, getTaskDataCopy, getTOADCalculator, getUidHandler, getUIDRepairLogging, getUniqueParentList, getUnitClass, getUnitIndex, getUnitsCount, getUnitsCountFromTime, hasDataRange, isCanClipGenerate, isClearAtStart, isLinkGpsData, isOffline, isRecycling, loadViewerData, loadViewerData, masterClockUpdate, noteNewSettings, notifyModelChanged, notifyOfflineObservers, orderOfflineData, orderOfflineData, orderOfflineData, pamStart, pamStop, remove, remove, remove, removedDataUnit, removeOfflineDataMap, reset, setAnnotationHandler, setBackgroundManager, setBinaryDataSource, setCanClipGenerate, setChannelMap, setClearAtStart, setCurrentViewDataEnd, setCurrentViewDataStart, setDatagramProvider, setDataName, setDataSelectCreator, setEffortProvider, setJSONDataSource, setLinkGpsData, setLocalisationContents, SetLogging, setMixedDirection, setNanoTimeCalculator, setNaturalLifetime, setNaturalLifetimeMillis, setPamSymbolManager, setParentProcess, setRecordingTrigger, setRecycling, setRecyclingStoreLength, setSampleRate, setSequenceMap, setShouldBinary, setShouldLog, setSynchLock, setUidHandler, shouldNotify, sortData, sortOutputMaps, stopTimer, toStringMethods inherited from class PamguardMVC.PamObservable
addInstantObserver, canDraw, canDraw, clearchanged, countObservers, createKeyItem, deleteObserver, deleteObservers, drawDataUnit, findThreadedObserver, getCPUPercent, getCPUPercent, getHoverText, getInstantObservers, getLongestObserver, getMaxThreadJitter, getOverlayDraw, getPamObserver, getPamObservers, getRequiredHistory, isInstantObserver, notifyInstantObservers, notifyNornalObservers, notifyObservers, notifyObservers, setChanged, setOverlayDraw, updateObservers, waitForThreadedObservers 
- 
Constructor Details
- 
DetectionGroupDataBlock
public DetectionGroupDataBlock(String dataName, DetectionGroupControl detectionGroupControl, DetectionGroupProcess detectionGroupProcess)  
 - 
 - 
Method Details
- 
saveViewerData
public boolean saveViewerData()Description copied from class:PamDataBlockSaves data in this data block in offline viewer mode.- Overrides:
 saveViewerDatain classPamDataBlock<DetectionGroupDataUnit>- Returns:
 - true if data found and saved.
 
 - 
addPamData
Description copied from class:PamDataBlockAdds 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:
 addPamDatain classPamDataBlock<DetectionGroupDataUnit>- Parameters:
 pamDataUnit- Reference to a PamDataUnit
 - 
addPamData
Description copied from class:PamDataBlockAdds a new PamDataUnit to the PamDataBlock and force the UID to a specific value. This should only be used in very specific circumstances - nromally, programmers should call addPamData(Tunit pamDataUnit) and let PAMGuard handle the UID's.- Overrides:
 addPamDatain classPamDataBlock<DetectionGroupDataUnit>- Parameters:
 pamDataUnit- Reference to a PamDataUnituid- Unique identifier for data unit.
 - 
updatePamData
Description copied from class:PamDataBlockupdate a dataunit. Does little except flag that the data unit is updated (so it will get saved), and sends notifications to other modules.- Overrides:
 updatePamDatain classPamDataBlock<DetectionGroupDataUnit>- Parameters:
 pamDataUnit-updateTimeMillis-
 - 
removeOldUnitsT
protected int removeOldUnitsT(long currentTimeMS) Description copied from class:PamDataBlockRemoves 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:
 removeOldUnitsTin classPamDataBlock<DetectionGroupDataUnit>- Parameters:
 currentTimeMS- Time in milliseconds of the first data which must be kept- Returns:
 - the number of units removed
 
 - 
removeOldUnitsS
protected int removeOldUnitsS(long mastrClockSample) - Overrides:
 removeOldUnitsSin classPamDataBlock<DetectionGroupDataUnit>
 - 
needViewerDataLoad
Description copied from class:PamDataBlockDo we need to reload offline data ? Default behaviour is to reurn true if the time periods of the data load have changed, false otherwise.- Overrides:
 needViewerDataLoadin classPamDataBlock<DetectionGroupDataUnit>- Parameters:
 offlineDataLoadInfo-- Returns:
 - true if we need to reload offline data.
 
 - 
clearAll
public void clearAll()Description copied from class:PamDataBlockClears all PamDataUnits from memoryIn viewer mode, data are also re-saved.
- Overrides:
 clearAllin classPamDataBlock<DetectionGroupDataUnit>
 - 
canSuperDetection
Description copied from class:SuperDetDataBlockReturn whether this type of super detection can hold the passed sub detection data. Default is based on class compatibility, but some super det datablocks should override this if they only manage one stream of data.- Overrides:
 canSuperDetectionin classSuperDetDataBlock<DetectionGroupDataUnit,PamDataUnit> - Parameters:
 subDataBlock- Sub detection data block- Returns:
 - true if this data can hold those sub data.
 
 - 
getTethysDataProvider
Description copied from class:PamDataBlockGets a data provider for Tethys. These will probably need to be bespoke, but for now will autogenerate based on the SQLLogging information.- Overrides:
 getTethysDataProviderin classPamDataBlock<DetectionGroupDataUnit>- Returns:
 - the tethysDataProvider
 
 - 
getDatablockSpeciesManager
Description copied from class:PamDataBlockGet information about species types that may occur within this data block. Primarily for conversion into Tethys compatible data, but may prove to have other uses.- Overrides:
 getDatablockSpeciesManagerin classPamDataBlock<DetectionGroupDataUnit>- Returns:
 - Types of species information available within this datablock.
 
 
 -