Sure, I was just suggesting something that was easy to fit into the initialization list.
AudioProcessorValueTreeState::ParameterLayout createParameterLayout()
{
std::vector<std::unique_ptr<RangedAudioParameter>> params;
// Add your other parameters programmatically
auto param = std::make_unique<AudioParameterInt> ("intParam", "Int Param", 2, 7, 5);
yourIntParam = param.get();
params.push_back (std::move (param));
return { params.begin(), params.end() };
}
YourProcessor()
{
// Do something with yourIntParam
DBG (*yourIntParam);
}
AudioParameterInt* yourIntParam = nullptr;
AudioProcessorValueTreeState parameters { *this, nullptr, "PARAMS", createParameterLayout() };
The ParameterLayout
also has a variadic constructor, so you could avoid the std::vector
if you don’t need to add parameters programatically.