gearmulator

Emulation of classic VA synths of the late 90s/2000s that are based on Motorola 56300 family DSPs
Log | Files | Refs | Submodules | README | LICENSE

commit 50d40b58019cc7267913fa1f66c509064840c059
parent 3fd6a31153cfe9b191a342ae1d920f3c8e9e2e47
Author: dsp56300 <dsp56300@users.noreply.github.com>
Date:   Tue, 30 Jul 2024 15:58:58 +0200

move applyPatchParameters function to base class

Diffstat:
Msource/jucePluginLib/controller.cpp | 14++++++++++++++
Msource/jucePluginLib/controller.h | 2++
Msource/mqJucePlugin/mqController.cpp | 14--------------
Msource/mqJucePlugin/mqController.h | 1-
Msource/xtJucePlugin/xtController.cpp | 14--------------
Msource/xtJucePlugin/xtController.h | 1-
6 files changed, 16 insertions(+), 30 deletions(-)

diff --git a/source/jucePluginLib/controller.cpp b/source/jucePluginLib/controller.cpp @@ -238,6 +238,20 @@ namespace pluginLib return true; } + void Controller::applyPatchParameters(const MidiPacket::ParamValues& _params, const uint8_t _part) const + { + for (const auto& it : _params) + { + auto* p = getParameter(it.first.second, _part); + p->setValueFromSynth(it.second, pluginLib::Parameter::Origin::PresetChange); + + for (const auto& derivedParam : p->getDerivedParameters()) + derivedParam->setValueFromSynth(it.second, pluginLib::Parameter::Origin::PresetChange); + } + + getProcessor().updateHostDisplay(juce::AudioProcessorListener::ChangeDetails().withProgramChanged(true)); + } + void Controller::timerCallback() { processMidiMessages(); diff --git a/source/jucePluginLib/controller.h b/source/jucePluginLib/controller.h @@ -108,6 +108,8 @@ namespace pluginLib bool combineParameterChange(uint8_t& _result, const std::string& _midiPacket, const Parameter& _parameter, uint8_t _value) const; + void applyPatchParameters(const MidiPacket::ParamValues& _params, const uint8_t _part) const; + virtual bool isDerivedParameter(Parameter& _derived, Parameter& _base) const { return true; } struct ParamIndex diff --git a/source/mqJucePlugin/mqController.cpp b/source/mqJucePlugin/mqController.cpp @@ -179,20 +179,6 @@ bool Controller::setCategory(pluginLib::MidiPacket::AnyPartParamValues& _values, return setString(_values, "Category", 4, _value); } -void Controller::applyPatchParameters(const pluginLib::MidiPacket::ParamValues& _params, const uint8_t _part) const -{ - for (const auto& it : _params) - { - auto* p = getParameter(it.first.second, _part); - p->setValueFromSynth(it.second, pluginLib::Parameter::Origin::PresetChange); - - for (const auto& derivedParam : p->getDerivedParameters()) - derivedParam->setValueFromSynth(it.second, pluginLib::Parameter::Origin::PresetChange); - } - - getProcessor().updateHostDisplay(juce::AudioProcessorListener::ChangeDetails().withProgramChanged(true)); -} - void Controller::parseSingle(const pluginLib::SysEx& _msg, const pluginLib::MidiPacket::Data& _data, const pluginLib::MidiPacket::ParamValues& _params) { Patch patch; diff --git a/source/mqJucePlugin/mqController.h b/source/mqJucePlugin/mqController.h @@ -85,7 +85,6 @@ private: void onStateLoaded() override; - void applyPatchParameters(const pluginLib::MidiPacket::ParamValues& _params, uint8_t _part) const; void parseSingle(const pluginLib::SysEx& _msg, const pluginLib::MidiPacket::Data& _data, const pluginLib::MidiPacket::ParamValues& _params); void parseMulti(const pluginLib::SysEx& _msg, const pluginLib::MidiPacket::Data& _data, const pluginLib::MidiPacket::ParamValues& _params); bool parseMidiPacket(MidiPacketType _type, pluginLib::MidiPacket::Data& _data, pluginLib::MidiPacket::AnyPartParamValues& _params, const pluginLib::SysEx& _sysex) const; diff --git a/source/xtJucePlugin/xtController.cpp b/source/xtJucePlugin/xtController.cpp @@ -242,20 +242,6 @@ bool Controller::setSingleName(pluginLib::MidiPacket::AnyPartParamValues& _value return setString(_values, "Name", 16, _value); } -void Controller::applyPatchParameters(const pluginLib::MidiPacket::ParamValues& _params, const uint8_t _part) const -{ - for (const auto& it : _params) - { - auto* p = getParameter(it.first.second, _part); - p->setValueFromSynth(it.second, pluginLib::Parameter::Origin::PresetChange); - - for (const auto& derivedParam : p->getDerivedParameters()) - derivedParam->setValueFromSynth(it.second, pluginLib::Parameter::Origin::PresetChange); - } - - getProcessor().updateHostDisplay(juce::AudioProcessorListener::ChangeDetails().withProgramChanged(true)); -} - void Controller::parseSingle(const pluginLib::SysEx& _msg, const pluginLib::MidiPacket::Data& _data, const pluginLib::MidiPacket::ParamValues& _params) { Patch patch; diff --git a/source/xtJucePlugin/xtController.h b/source/xtJucePlugin/xtController.h @@ -100,7 +100,6 @@ private: void onStateLoaded() override; uint8_t getPartCount() override; - void applyPatchParameters(const pluginLib::MidiPacket::ParamValues& _params, uint8_t _part) const; void parseSingle(const pluginLib::SysEx& _msg, const pluginLib::MidiPacket::Data& _data, const pluginLib::MidiPacket::ParamValues& _params); void parseMulti(const pluginLib::SysEx& _msg, const pluginLib::MidiPacket::Data& _data, const pluginLib::MidiPacket::ParamValues& _params) const; void parseGlobal(const pluginLib::SysEx& _msg, const pluginLib::MidiPacket::Data& _data, const pluginLib::MidiPacket::ParamValues& _params);