Skip to content
This repository was archived by the owner on Feb 26, 2026. It is now read-only.

Commit 8dd2ab8

Browse files
committed
Rework global param def, always have bypass, reverb lpf checkbox
Signed-off-by: falkTX <falktx@falktx.com>
1 parent 5867b61 commit 8dd2ab8

26 files changed

Lines changed: 180 additions & 162 deletions

dpf

Submodule dpf updated 68 files

plugins/AB-InputSelector/DistrhoPluginInfo.h

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
enum Parameters {
3434
kParameterSelect,
3535
kParameterMode,
36+
kParameterBypass,
3637
kParameterCount
3738
};
3839

@@ -45,7 +46,10 @@ enum States {
4546
kStateCount
4647
};
4748

48-
static const float kParameterDefaults[kParameterCount] = {
49-
0.0f,
50-
0.0f
49+
static constexpr const struct OneKnobParameterRanges {
50+
float min, def, max;
51+
} kParameterRanges[kParameterCount] = {
52+
{ -100.f, 0.f, 100.f },
53+
{ 0.f, 0.f, 1.f },
54+
{}
5155
};

plugins/AB-InputSelector/OneKnobPlugin.cpp

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -69,19 +69,19 @@ class OneKnobInputSelectorPlugin : public OneKnobPlugin
6969
parameter.name = "A/B Select";
7070
parameter.symbol = "select";
7171
parameter.unit = "%";
72-
parameter.ranges.def = kParameterDefaults[kParameterSelect];
73-
parameter.ranges.min = -100.0f;
74-
parameter.ranges.max = 100.0f;
72+
parameter.ranges.def = kParameterRanges[kParameterSelect].def;
73+
parameter.ranges.min = kParameterRanges[kParameterSelect].min;
74+
parameter.ranges.max = kParameterRanges[kParameterSelect].max;
7575
{
7676
ParameterEnumerationValue *values = new ParameterEnumerationValue[3];
7777
parameter.enumValues.values = values;
7878
parameter.enumValues.count = 3;
7979
parameter.enumValues.restrictedMode = false;
80-
values[0].value = -100.0f;
80+
values[0].value = kParameterRanges[kParameterSelect].min;
8181
values[0].label = "A";
82-
values[1].value = 0.0f;
82+
values[1].value = kParameterRanges[kParameterSelect].def;
8383
values[1].label = "A/B";
84-
values[2].value = 100.0f;
84+
values[2].value = kParameterRanges[kParameterSelect].max;
8585
values[2].label = "B";
8686
}
8787
break;
@@ -90,9 +90,12 @@ class OneKnobInputSelectorPlugin : public OneKnobPlugin
9090
parameter.name = "Mode";
9191
parameter.symbol = "mode";
9292
parameter.unit = "";
93-
parameter.ranges.def = kParameterDefaults[kParameterMode];
94-
parameter.ranges.min = 0.0f;
95-
parameter.ranges.max = 1.0f;
93+
parameter.ranges.def = kParameterRanges[kParameterMode].def;
94+
parameter.ranges.min = kParameterRanges[kParameterMode].min;
95+
parameter.ranges.max = kParameterRanges[kParameterMode].max;
96+
break;
97+
case kParameterBypass:
98+
parameter.initDesignation(kParameterDesignationBypass);
9699
break;
97100
}
98101
}

plugins/AB-InputSelector/OneKnobUI.cpp

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,17 +31,14 @@ static const OneKnobMainControl main = {
3131
kParameterSelect,
3232
"A/B Select",
3333
"%",
34-
-100.0f,
35-
100.0f,
36-
0.0f
3734
};
3835

3936
static const OneKnobAuxiliaryComboBoxValue comboBoxValues[] = {
4037
{
4138
0, "Mode 1", "Explain mode 1"
4239
},
4340
{
44-
0, "Mode 2", "Explain mode 2"
41+
1, "Mode 2", "Explain mode 2"
4542
},
4643
};
4744

@@ -105,8 +102,8 @@ class OneKnobInputSelectorUI : public OneKnobUI
105102
switch (index)
106103
{
107104
case kProgramInit:
108-
setMainControlValue(kParameterDefaults[kParameterSelect]);
109-
setAuxiliaryComboBoxValue(kParameterDefaults[kParameterMode]);
105+
setMainControlValue(kParameterRanges[kParameterSelect].def);
106+
setAuxiliaryComboBoxValue(kParameterRanges[kParameterMode].def);
110107
break;
111108
}
112109

plugins/AB-OutputSelector/DistrhoPluginInfo.h

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
enum Parameters {
3434
kParameterSelect,
3535
kParameterMode,
36+
kParameterBypass,
3637
kParameterCount
3738
};
3839

@@ -45,7 +46,10 @@ enum States {
4546
kStateCount
4647
};
4748

48-
static const float kParameterDefaults[kParameterCount] = {
49-
0.0f,
50-
0.0f
49+
static constexpr const struct OneKnobParameterRanges {
50+
float min, def, max;
51+
} kParameterRanges[kParameterCount] = {
52+
{ -100.f, 0.f, 100.f },
53+
{ 0.f, 0.f, 1.f },
54+
{}
5155
};

plugins/AB-OutputSelector/OneKnobPlugin.cpp

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -69,19 +69,19 @@ class OneKnobOutputSelectorPlugin : public OneKnobPlugin
6969
parameter.name = "A/B Select";
7070
parameter.symbol = "select";
7171
parameter.unit = "%";
72-
parameter.ranges.def = kParameterDefaults[kParameterSelect];
73-
parameter.ranges.min = -100.0f;
74-
parameter.ranges.max = 100.0f;
72+
parameter.ranges.def = kParameterRanges[kParameterSelect].def;
73+
parameter.ranges.min = kParameterRanges[kParameterSelect].min;
74+
parameter.ranges.max = kParameterRanges[kParameterSelect].max;
7575
{
7676
ParameterEnumerationValue *values = new ParameterEnumerationValue[3];
7777
parameter.enumValues.values = values;
7878
parameter.enumValues.count = 3;
7979
parameter.enumValues.restrictedMode = false;
80-
values[0].value = -100.0f;
80+
values[0].value = kParameterRanges[kParameterSelect].min;
8181
values[0].label = "A";
82-
values[1].value = 0.0f;
82+
values[1].value = kParameterRanges[kParameterSelect].def;
8383
values[1].label = "A/B";
84-
values[2].value = 100.0f;
84+
values[2].value = kParameterRanges[kParameterSelect].max;
8585
values[2].label = "B";
8686
}
8787
break;
@@ -90,9 +90,12 @@ class OneKnobOutputSelectorPlugin : public OneKnobPlugin
9090
parameter.name = "Mode";
9191
parameter.symbol = "mode";
9292
parameter.unit = "";
93-
parameter.ranges.def = kParameterDefaults[kParameterMode];
94-
parameter.ranges.min = 0.0f;
95-
parameter.ranges.max = 1.0f;
93+
parameter.ranges.def = kParameterRanges[kParameterMode].def;
94+
parameter.ranges.min = kParameterRanges[kParameterMode].min;
95+
parameter.ranges.max = kParameterRanges[kParameterMode].max;
96+
break;
97+
case kParameterBypass:
98+
parameter.initDesignation(kParameterDesignationBypass);
9699
break;
97100
}
98101
}

plugins/AB-OutputSelector/OneKnobUI.cpp

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,17 +31,14 @@ static const OneKnobMainControl main = {
3131
kParameterSelect,
3232
"A/B Select",
3333
"%",
34-
-100.0f,
35-
100.0f,
36-
0.0f
3734
};
3835

3936
static const OneKnobAuxiliaryComboBoxValue comboBoxValues[] = {
4037
{
4138
0, "Mode 1", "Explain mode 1"
4239
},
4340
{
44-
0, "Mode 2", "Explain mode 2"
41+
1, "Mode 2", "Explain mode 2"
4542
},
4643
};
4744

@@ -105,8 +102,8 @@ class OneKnobOutputSelectorUI : public OneKnobUI
105102
switch (index)
106103
{
107104
case kProgramInit:
108-
setMainControlValue(kParameterDefaults[kParameterSelect]);
109-
setAuxiliaryComboBoxValue(kParameterDefaults[kParameterMode]);
105+
setMainControlValue(kParameterRanges[kParameterSelect].def);
106+
setAuxiliaryComboBoxValue(kParameterRanges[kParameterMode].def);
110107
break;
111108
}
112109

plugins/BrickwallLimiter/DistrhoPluginInfo.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
enum Parameters {
3131
kParameterThreshold,
3232
kParameterAutoGain,
33+
kParameterBypass,
3334
kParameterCount
3435
};
3536

@@ -49,3 +50,10 @@ static const float kParameterDefaults[kParameterCount] = {
4950
0.0f,
5051
1.0f
5152
};
53+
54+
static constexpr const struct OneKnobParameterRanges {
55+
float min, def, max;
56+
} kParameterRanges[kParameterCount] = {
57+
{ },
58+
{}
59+
};

plugins/BrickwallLimiter/OneKnobPlugin.cpp

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,9 @@ class OneKnobBrickwallLimiterPlugin : public OneKnobPlugin
8989
parameter.name = "Threshold";
9090
parameter.symbol = "threshold";
9191
parameter.unit = "dB";
92-
parameter.ranges.def = kParameterDefaults[kParameterThreshold];
92+
parameter.ranges.def = kParameterRanges[kParameterThreshold].def;
93+
parameter.ranges.min = kParameterRanges[kParameterThreshold].min;
94+
parameter.ranges.max = kParameterRanges[kParameterThreshold].max;
9395
parameter.ranges.min = -50.0f;
9496
parameter.ranges.max = 0.0f;
9597
break;
@@ -98,10 +100,15 @@ class OneKnobBrickwallLimiterPlugin : public OneKnobPlugin
98100
parameter.name = "Auto-Gain";
99101
parameter.symbol = "autogain";
100102
parameter.unit = "";
101-
parameter.ranges.def = kParameterDefaults[kParameterAutoGain];
103+
parameter.ranges.def = kParameterRanges[kParameterAutoGain].def;
104+
parameter.ranges.min = kParameterRanges[kParameterAutoGain].min;
105+
parameter.ranges.max = kParameterRanges[kParameterAutoGain].max;
102106
parameter.ranges.min = 0.0f;
103107
parameter.ranges.max = 1.0f;
104108
break;
109+
case kParameterBypass:
110+
parameter.initDesignation(kParameterDesignationBypass);
111+
break;
105112
}
106113
}
107114

0 commit comments

Comments
 (0)