Package dataPlotsFX.spectrogramPlotFX
Class FFTPlotInfo
java.lang.Object
dataPlotsFX.data.TDDataInfoFX
dataPlotsFX.scrollingPlot2D.Scrolling2DPlotInfo
dataPlotsFX.spectrogramPlotFX.FFTPlotInfo
- All Implemented Interfaces:
Plot2DColours
Plots spectrogram data.
- Author:
- Jamie Macaulay
-
Nested Class Summary
Nested classes/interfaces inherited from class dataPlotsFX.data.TDDataInfoFX
TDDataInfoFX.DataLoadObserver
-
Field Summary
Fields inherited from class dataPlotsFX.data.TDDataInfoFX
dataPlugIns, scaleInfoIndex
-
Constructor Summary
ConstructorDescriptionFFTPlotInfo
(TDDataProviderFX tdDataProvider, TDGraphFX tdGraph, PamFFTControl fftControl, DataBlock2D pamDataBlock) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Set up binding between display and control panels.void
Checks the frequency range range to be displayed.Create plot params.createTDScaleInfo
(Scrolling2DPlotInfo scrollingPlotInfo, double minVal, double maxVal) Create a bespoke scale info object reflecting the right type of axis informationvoid
final configuration tasks called from Platform->runLater()Return a hiding settings node which will get incorporated into a larger tabbed sliding pane.long
The TDDisplayFX scroller is based on a master clock update from PAMGuard.Get an object that will be packed up with the serialised settings when information about a plot get's stored.void
notifyChange
(int changeType) Notify of changes from PamController.void
setSampleRate
(float sampleRate, boolean notify) boolean
setStoredSettings
(Serializable storedSettings) Set settings which have been read back from storage (the psf file).Methods inherited from class dataPlotsFX.scrollingPlot2D.Scrolling2DPlotInfo
configureDisplay, drawData, getColours, getDataAxisMaxVal, getDataAxisMinVal, getDataBlock2D, getDataValue, getDisplayColType, getNActivePanels, getnRebuiltPanels, getPlot2DParameters, getRequiredDataHistory, getScaleInfo, getScaleInfo, getSpectrogramColours, getSymbolChooser, getWrapColor, hasOptions, makeScrolling2DPlotData, new2DData, reColourPlots, removeData, setDisplayedDataRange, setnRebuiltPanels, setPlot2DParameters, setSpectrogramColours, timeRangeSpinnerChange, timeScrollRangeChanged, timeScrollValueChanged
Methods inherited from class dataPlotsFX.data.TDDataInfoFX
addScaleInfo, clearDraw, drawAllDataUnits, drawDataUnit, drawHighLightData, editOptions, getCurrentScaleInfo, getDataBlock, getDataDimensions, getDataName, getDataObserver, getDataProvider, getDDataProvider, getLastDrawPoints, getMenuNodes, getPreviousDataUnit, getScaleInfoIndex, getScaleInfos, getShortName, getSourceDataBlock, getTDGraph, getToolTipText, hasAxisName, isPaused, isScrollChanging, isShowing, isViewer, lastUnitDrawn, removeScaleInfo, selectScaleInfo, setCurrentAxisName, setNPlotPanes, setShowing, shouldDraw, shouldDraw
-
Constructor Details
-
FFTPlotInfo
public FFTPlotInfo(TDDataProviderFX tdDataProvider, TDGraphFX tdGraph, PamFFTControl fftControl, DataBlock2D pamDataBlock)
-
-
Method Details
-
createPlotParams
Description copied from class:Scrolling2DPlotInfo
Create plot params. These will generally be extensions o f PlotParams2D to include additional information required by specific plot types.- Specified by:
createPlotParams
in classScrolling2DPlotInfo
- Returns:
- params controlling the plot.
-
createTDScaleInfo
public Scrolling2DScaleInfo createTDScaleInfo(Scrolling2DPlotInfo scrollingPlotInfo, double minVal, double maxVal) Description copied from class:Scrolling2DPlotInfo
Create a bespoke scale info object reflecting the right type of axis information- Specified by:
createTDScaleInfo
in classScrolling2DPlotInfo
- Returns:
- Scale informatoin.
-
getGraphSettingsPane
Description copied from class:TDDataInfoFX
Return a hiding settings node which will get incorporated into a larger tabbed sliding pane.- Overrides:
getGraphSettingsPane
in classTDDataInfoFX
- Returns:
- sliding dialog component.
-
bindPlotParams
public void bindPlotParams()Description copied from class:Scrolling2DPlotInfo
Set up binding between display and control panels. Amplitude params / scales are handled in the base class, but here will need to do the frequency scale for spectrograms and whatever required for other display types.- Specified by:
bindPlotParams
in classScrolling2DPlotInfo
-
setStoredSettings
Description copied from class:Scrolling2DPlotInfo
Set settings which have been read back from storage (the psf file). Assume these are of the right type and cast into whatever is needed !- Overrides:
setStoredSettings
in classScrolling2DPlotInfo
- Returns:
- true if all OK.
-
getStoredSettings
Description copied from class:TDDataInfoFX
Get an object that will be packed up with the serialised settings when information about a plot get's stored.
The Object MUST implement serializable and ideally also cloneable or it will go belly up !
This only gets called when settings are to be saved so there is no need to keep parameters this returns up to date except right at settings save time (when this is called)- Overrides:
getStoredSettings
in classScrolling2DPlotInfo
- Returns:
- serializable object to save.
-
setSampleRate
public void setSampleRate(float sampleRate, boolean notify) - Overrides:
setSampleRate
in classScrolling2DPlotInfo
-
calcFrequencyRangeDisplay
public void calcFrequencyRangeDisplay()Checks the frequency range range to be displayed. This is a direct copy of similar fun in the old spec display -
finalConfigurationTasks
public void finalConfigurationTasks()Description copied from class:Scrolling2DPlotInfo
final configuration tasks called from Platform->runLater()- Overrides:
finalConfigurationTasks
in classScrolling2DPlotInfo
-
notifyChange
public void notifyChange(int changeType) Notify of changes from PamController.- Overrides:
notifyChange
in classTDDataInfoFX
- Parameters:
changeType
- - the chnage type.
-
getSpectrogramControlPane
- Returns:
- the spectrogramControlPane
-
getMasterClockOverride
public long getMasterClockOverride()Description copied from class:TDDataInfoFX
The TDDisplayFX scroller is based on a master clock update from PAMGuard. This can be irritating because the master clock will always be slighter greater than the the processed data leaving a gap at the scroller end. Some data infos with continuous data can act as a better clock (for example the spectrgram or raw data). Data which is discrete like the click detector cannot because they don't have contious data.- Overrides:
getMasterClockOverride
in classTDDataInfoFX
-