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 fe7b765ff72472a138467b536bf010c8d378af64
parent d12cb6a765faef2c70e30ed7d9fd0d4ffbf9878c
Author: dsp56300 <dsp56300@users.noreply.github.com>
Date:   Wed, 29 May 2024 23:18:38 +0200

helper funcs to return all region ids for a parameter

Diffstat:
Msource/jucePluginLib/controller.cpp | 20++++++++++++++++++++
Msource/jucePluginLib/controller.h | 3+++
2 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/source/jucePluginLib/controller.cpp b/source/jucePluginLib/controller.cpp @@ -532,6 +532,26 @@ namespace pluginLib return false; } + std::set<std::string> Controller::getRegionIdsForParameter(const Parameter* _param) const + { + if(!_param) + return {}; + return getRegionIdsForParameter(_param->getDescription().name); + } + + std::set<std::string> Controller::getRegionIdsForParameter(const std::string& _name) const + { + const auto& regions = getParameterDescriptions().getRegions(); + + std::set<std::string> result; + for (const auto& region : regions) + { + if(region.second.containsParameter(_name)) + result.insert(region.first); + } + return result; + } + Parameter* Controller::createParameter(Controller& _controller, const Description& _desc, uint8_t _part, int _uid) { return new Parameter(_controller, _desc, _part, _uid); diff --git a/source/jucePluginLib/controller.h b/source/jucePluginLib/controller.h @@ -73,6 +73,9 @@ namespace pluginLib std::unordered_set<std::string> getLockedParameterNames() const; std::unordered_set<const Parameter*> getLockedParameters(uint8_t _part) const; bool isParameterLocked(const std::string& _name) const; + std::set<std::string> getRegionIdsForParameter(const Parameter* _param) const; + std::set<std::string> getRegionIdsForParameter(const std::string& _name) const; + const ParameterDescriptions& getParameterDescriptions() const { return m_descriptions; } const SoftKnob* getSoftknob(const Parameter* _parameter) const