11#ifndef __AUDACITY_SPECTROGRAM_SETTINGS__
12#define __AUDACITY_SPECTROGRAM_SETTINGS__
18#undef SPECTRAL_SELECTION_GLOBAL_SWITCH
38#ifdef SPECTRAL_SELECTION_GLOBAL_SWITCH
39 bool spectralSelection;
49 LogMaxWindowSize = 15,
51 NumWindowSizes = LogMaxWindowSize - LogMinWindowSize + 1,
81 return this == &defaults();
84 bool Validate(
bool quiet);
90 void InvalidateCaches();
91 void DestroyWindows();
92 void CacheWindows()
const;
93 void ConvertToEnumeratedWindowSizes();
94 void ConvertToActualWindowSizes();
98 float findBin(
float frequency,
float binUnit )
const;
101 NumberScale GetScale(
float minFreq,
float maxFreq )
const;
106 bool SpectralSelectionEnabled()
const;
124 return algorithm == algPitchEAC ? 1 : zeroPaddingFactor;
127 size_t GetFFTLength()
const;
128 size_t NBins()
const;
143 void Migrate(wxString &value)
override;
149#ifndef SPECTRAL_SELECTION_GLOBAL_SWITCH
163#ifdef EXPERIMENTAL_FFT_Y_GRID
167#ifdef EXPERIMENTAL_FIND_NOTES
169 double findNotesMinA;
171 bool findNotesQuantize;
std::unique_ptr< FFTParam, FFTDeleter > HFFT
AUDACITY_DLL_API IntSetting SpectrumMaxFreq
std::vector< TranslatableString > TranslatableStrings
Adapts EnumSettingBase to a particular enumeration type.
Specialization of Setting for int.
A listener notified of changes in preferences.
virtual void UpdatePrefs()=0
Spectrogram settings, either for one track or as defaults.
static ColorSchemeEnumSetting colorSchemeSetting
size_t ZeroPaddingFactor() const
size_t WindowSize() const
A PrefsPanel for spectrum settings.
Extend wxArrayString with move operations and construction and insertion fromstd::initializer_list.
Services * Get()
Fetch the global instance, or nullptr if none is yet installed.