Audacity
3.2.0
libraries
lib-builtin-effects
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
19
const
int
kEqOptionGraphic
= 1;
20
const
int
kEqOptionCurve
= (1 << 1) ;
21
// The legacy version offers both Graphic and curve on the same UI.
22
const
int
kEqLegacy
=
kEqOptionGraphic
|
kEqOptionCurve
;
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
29
struct
BUILTIN_EFFECTS_API
EqualizationParameters
{
30
enum
kInterpolations
{
31
kBspline
,
32
kCosine
,
33
kCubic
,
34
nInterpolations
35
};
36
static
const
EnumValueSymbol
kInterpStrings[nInterpolations];
37
38
explicit
EqualizationParameters
(
const
EffectSettingsManager
&
manager
);
39
void
LoadDefaults(
int
options);
40
void
SaveConfig()
const
;
41
bool
IsLinear()
const
;
42
43
const
EffectSettingsManager
&
mSettingsManager
;
44
45
wxString
mCurveName
;
46
float
mdBMin
;
47
float
mdBMax
;
48
size_t
mM
;
49
int
mInterp
;
50
bool
mDrawMode
;
51
bool
mDrawGrid
;
52
bool
mLin
;
53
54
// Not all of these are visited now
55
static
constexpr
EffectParameter
FilterLength{ &
EqualizationParameters::mM
,
56
L
"FilterLength"
, 8191, 21, 8191, 0 };
57
static
constexpr
EffectParameter
CurveName{ &
EqualizationParameters::mCurveName
,
58
L
"CurveName"
, L
"unnamed"
, L
""
, L
""
, L
""
};
59
static
constexpr
EffectParameter
InterpLin{ &
EqualizationParameters::mLin
,
60
L
"InterpolateLin"
,
false
,
false
,
true
,
false
};
61
static
constexpr
EnumParameter
InterpMeth{ &
EqualizationParameters::mInterp
,
62
L
"InterpolationMethod"
, 0, 0, 0, 0, kInterpStrings, nInterpolations };
63
static
constexpr
EffectParameter
DrawMode{ &
EqualizationParameters::mDrawMode
,
64
L
""
,
true
,
false
,
true
,
false
};
65
static
constexpr
EffectParameter
DrawGrid{ &
EqualizationParameters::mDrawGrid
,
66
L
""
,
true
,
false
,
true
,
false
};
67
static
constexpr
EffectParameter
dBMin{ &
EqualizationParameters::mdBMin
,
68
L
""
, -30.0f, -120.0, -10.0, 0 };
69
static
constexpr
EffectParameter
dBMax{ &
EqualizationParameters::mdBMax
,
70
L
""
, 30.0f, 0.0, 60.0, 0 };
71
};
72
73
#endif
kEqLegacy
const int kEqLegacy
Definition:
EqualizationParameters.h:22
kEqOptionCurve
const int kEqOptionCurve
Definition:
EqualizationParameters.h:20
kEqOptionGraphic
const int kEqOptionGraphic
Definition:
EqualizationParameters.h:19
manager
static const AttachedProjectObjects::RegisteredFactory manager
Definition:
RealtimeEffectManager.cpp:21
ShuttleAutomation.h
ComponentInterfaceSymbol
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
Definition:
ComponentInterfaceSymbol.h:27
EffectSettingsManager
EffectSettingsManager is an EffectDefinitionInterface that adds a factory function for EffectSettings...
Definition:
EffectInterface.h:316
EffectParameter
Definition:
SettingsVisitor.h:25
EnumParameter
Definition:
SettingsVisitor.h:50
EqualizationParameters
Parameters of the Equalization effects that persist in configuration files.
Definition:
EqualizationParameters.h:29
EqualizationParameters::mCurveName
wxString mCurveName
Definition:
EqualizationParameters.h:45
EqualizationParameters::mSettingsManager
const EffectSettingsManager & mSettingsManager
Definition:
EqualizationParameters.h:43
EqualizationParameters::mdBMax
float mdBMax
Definition:
EqualizationParameters.h:47
EqualizationParameters::mdBMin
float mdBMin
Definition:
EqualizationParameters.h:46
EqualizationParameters::mDrawGrid
bool mDrawGrid
Definition:
EqualizationParameters.h:51
EqualizationParameters::mDrawMode
bool mDrawMode
Definition:
EqualizationParameters.h:50
EqualizationParameters::mM
size_t mM
Definition:
EqualizationParameters.h:48
EqualizationParameters::mInterp
int mInterp
Definition:
EqualizationParameters.h:49
EqualizationParameters::kInterpolations
kInterpolations
Definition:
EqualizationParameters.h:30
EqualizationParameters::kCosine
@ kCosine
Definition:
EqualizationParameters.h:32
EqualizationParameters::kCubic
@ kCubic
Definition:
EqualizationParameters.h:33
EqualizationParameters::kBspline
@ kBspline
Definition:
EqualizationParameters.h:31
EqualizationParameters::mLin
bool mLin
Definition:
EqualizationParameters.h:52
Generated by
1.9.3