Package offlineProcessing.superdet
Class OfflineSuperDetFilter
java.lang.Object
offlineProcessing.superdet.OfflineSuperDetFilter
Super detection filter for offline tasks. When added to a offlinetaskgroup it will 
 show options (if there are any) for filtering processed data units by super detections. 
 e.g. for click processing, this should be able to restrict processing to just files
 that have porpoise events. Key will be to not even load a file that hasn't any data
 associated with super detections.
- Author:
 - dg50
 
- 
Method Summary
Modifier and TypeMethodDescriptionbooleancheckSubDetection(PamDataUnit dataUnit) Called to see if this sub detection will pass the super detection filter, i.e.voidstatic ArrayList<SuperDetDataBlock> findPossibleSuperDetections(PamDataBlock coreDataBlock) Make a list of all possible data blocks that might hold super detection data for the data in the given data block.Get a dataname that can be used with data selectors.getSwingComponent(Window parent) static OfflineSuperDetFiltermakeSuperDetFilter(PamDataBlock subDataBlock, String dataName) Make a super detection filter for the given datablock.voidsetFilterDataBlock(SuperDetDataBlock currentSuperBlock) booleanshouldProcess(OfflineDataMapPoint mapPoint) Work out if any of the data in the mapPoint, which is for the main OfflineTask datablock, might be associated with a super detection which passes this filter. 
- 
Method Details
- 
findPossibleSuperDetections
Make a list of all possible data blocks that might hold super detection data for the data in the given data block.For a datablock to be identified as a super data block it must have SQLLogging with a sub table and the subDetectionType of the data in that block must be compatible with the data in the core data block.
- Parameters:
 coreDataBlock- datablock containing sub detections- Returns:
 - list of datablocks that might have super detections.
 
 - 
makeSuperDetFilter
Make a super detection filter for the given datablock. Return null if no appropriate super detections are available.- Parameters:
 subDataBlock- datablock of the sub detectionsdataName- data name (will be used in dataselector settings for the super detection).- Returns:
 - null if no suitable super detections, otherwise the basis of a filter.
 
 - 
getSwingComponent
 - 
getAvailableSuperDetctors
- Returns:
 - the availableSuperDetctors
 
 - 
getDataName
Get a dataname that can be used with data selectors.- Returns:
 - the dataName
 
 - 
checkSubDetection
Called to see if this sub detection will pass the super detection filter, i.e. find an appropriate super detection then test that in the superdetection filter.Defaults to returning true if there isn't a filter data block selected or if the super datablock doesn't have a data selector. Data selectors can themselves how to handle a null dataunit, e.g. if we're looking at super detections of clicks - clcik trains - then the data selector has an option to unclude clicks which are not part of a train, in which case the superdetection of the click will be null
- Parameters:
 dataUnit- Sub detectoin data unit.- Returns:
 - true if conditions are met ...
 
 - 
setFilterDataBlock
 - 
shouldProcess
Work out if any of the data in the mapPoint, which is for the main OfflineTask datablock, might be associated with a super detection which passes this filter. Will involve some querying of database tables, but hopefully this will be faster than loading a lot of data we don't need to process.- Parameters:
 mapPoint- Map Point for sub detection data.- Returns:
 - true if there are data worth processing.
 
 - 
checkSubDetectionLinks
public void checkSubDetectionLinks() 
 -