diff options
author | Be <be@mixxx.org> | 2021-03-12 14:21:03 -0600 |
---|---|---|
committer | Be <be@mixxx.org> | 2021-03-12 14:31:32 -0600 |
commit | 7b0a0d524db99e2b3511e1c196dd15a68ca92371 (patch) | |
tree | ab28fc16b600aca12e9110646d9f63a2c8abdcf7 /src/effects/chains/equalizereffectchain.cpp | |
parent | 341f6e9fa2e72f6cb613c5abcba95ce28f76660b (diff) |
split EffectChain subclasses into separate files
Diffstat (limited to 'src/effects/chains/equalizereffectchain.cpp')
-rw-r--r-- | src/effects/chains/equalizereffectchain.cpp | 77 |
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")); + } +} |