Audacity 3.2.0
EqualizationParameters.h
Go to the documentation of this file.
1/**********************************************************************
2
3 Audacity: A Digital Audio Editor
4
5 EqualizationParameters.h
6
7 Mitch Golden
8 Vaughan Johnson (Preview)
9
10 Paul Licameli split from Equalization.h
11
12***********************************************************************/
13#ifndef __AUDACITY_EQUALIZATION_PARAMETERS__
14#define __AUDACITY_EQUALIZATION_PARAMETERS__
15
16#include "ShuttleAutomation.h"
17
18// Flags to specialise the UI
19const int kEqOptionGraphic = 1;
20const int kEqOptionCurve = (1 << 1) ;
21// The legacy version offers both Graphic and curve on the same UI.
23
24// Define to enable the old combined UI with both curves and sliders, and
25// management of a set of curves
26#undef LEGACY_EQ
27
29struct BUILTIN_EFFECTS_API EqualizationParameters {
34 nInterpolations
35 };
36 static const EnumValueSymbol kInterpStrings[nInterpolations];
37
39 void LoadDefaults(int options);
40 void SaveConfig() const;
41 bool IsLinear() const;
42
44
45 wxString mCurveName;
46 float mdBMin;
47 float mdBMax;
48 size_t mM;
52 bool mLin;
53
54// Not all of these are visited now
55static constexpr EffectParameter FilterLength{ &EqualizationParameters::mM,
56 L"FilterLength", 8191, 21, 8191, 0 };
58 L"CurveName", L"unnamed", L"", L"", L""};
59static constexpr EffectParameter InterpLin{ &EqualizationParameters::mLin,
60 L"InterpolateLin", false, false, true, false };
61static constexpr EnumParameter InterpMeth{ &EqualizationParameters::mInterp,
62 L"InterpolationMethod", 0, 0, 0, 0, kInterpStrings, nInterpolations };
64 L"", true, false, true, false };
66 L"", true, false, true, false };
68 L"", -30.0f, -120.0, -10.0, 0 };
70 L"", 30.0f, 0.0, 60.0, 0 };
71};
72
73#endif
const int kEqLegacy
const int kEqOptionCurve
const int kEqOptionGraphic
static const AttachedProjectObjects::RegisteredFactory manager
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
EffectSettingsManager is an EffectDefinitionInterface that adds a factory function for EffectSettings...
Parameters of the Equalization effects that persist in configuration files.
const EffectSettingsManager & mSettingsManager