summaryrefslogtreecommitdiffstats
path: root/src/effects/chains/equalizereffectchain.cpp
diff options
context:
space:
mode:
authorBe <be@mixxx.org>2021-03-12 14:21:03 -0600
committerBe <be@mixxx.org>2021-03-12 14:31:32 -0600
commit7b0a0d524db99e2b3511e1c196dd15a68ca92371 (patch)
treeab28fc16b600aca12e9110646d9f63a2c8abdcf7 /src/effects/chains/equalizereffectchain.cpp
parent341f6e9fa2e72f6cb613c5abcba95ce28f76660b (diff)
split EffectChain subclasses into separate files
Diffstat (limited to 'src/effects/chains/equalizereffectchain.cpp')
-rw-r--r--src/effects/chains/equalizereffectchain.cpp77
1 files changed, 77 insertions, 0 deletions
diff --git a/src/effects/chains/equalizereffectchain.cpp b/src/effects/chains/equalizereffectchain.cpp
new file mode 100644
index 0000000000..4b5e7ce347
--- /dev/null
+++ b/src/effects/chains/equalizereffectchain.cpp
@@ -0,0 +1,77 @@
+#include "effects/chains/equalizereffectchain.h"
+
+#include "effects/effectslot.h"
+
+EqualizerEffectChain::EqualizerEffectChain(const QString& group,
+ EffectsManager* pEffectsManager,
+ EffectsMessengerPointer pEffectsMessenger)
+ : PerGroupEffectChain(group,
+ formatEffectChainGroup(group),
+ SignalProcessingStage::Prefader,
+ pEffectsManager,
+ pEffectsMessenger),
+ m_pCOFilterWaveform(
+ new ControlObject(ConfigKey(group, "filterWaveformEnable"))) {
+ // Add a single effect slot
+ addEffectSlot(formatEffectSlotGroup(group));
+ m_effectSlots[0]->setEnabled(true);
+ // DlgPrefEq loads the Effect with loadEffectToGroup
+
+ setupLegacyAliasesForGroup(group);
+}
+
+void EqualizerEffectChain::setFilterWaveform(bool state) {
+ m_pCOFilterWaveform->set(state);
+}
+
+QString EqualizerEffectChain::formatEffectChainGroup(const QString& group) {
+ return QString("[EqualizerRack1_%1]").arg(group);
+}
+
+QString EqualizerEffectChain::formatEffectSlotGroup(const QString& group) {
+ return QString("[EqualizerRack1_%1_Effect1]")
+ .arg(group);
+}
+
+void EqualizerEffectChain::setupLegacyAliasesForGroup(const QString& group) {
+ // Create aliases for legacy EQ controls.
+ EffectSlotPointer pEffectSlot = getEffectSlot(0);
+ if (pEffectSlot) {
+ const QString& effectSlotGroup = pEffectSlot->getGroup();
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterLow"),
+ ConfigKey(effectSlotGroup, "parameter1"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterMid"),
+ ConfigKey(effectSlotGroup, "parameter2"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterHigh"),
+ ConfigKey(effectSlotGroup, "parameter3"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterLowKill"),
+ ConfigKey(effectSlotGroup, "button_parameter1"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterMidKill"),
+ ConfigKey(effectSlotGroup, "button_parameter2"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterHighKill"),
+ ConfigKey(effectSlotGroup, "button_parameter3"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterLow_loaded"),
+ ConfigKey(effectSlotGroup, "parameter1_loaded"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterMid_loaded"),
+ ConfigKey(effectSlotGroup, "parameter2_loaded"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterHigh_loaded"),
+ ConfigKey(effectSlotGroup, "parameter3_loaded"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterLowKill_loaded"),
+ ConfigKey(effectSlotGroup, "button_parameter1_loaded"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterMidKill_loaded"),
+ ConfigKey(effectSlotGroup, "button_parameter2_loaded"));
+
+ ControlDoublePrivate::insertAlias(ConfigKey(group, "filterHighKill_loaded"),
+ ConfigKey(effectSlotGroup, "button_parameter3_loaded"));
+ }
+}