I’m trying to read in some old pre-JUCE AAX session (chunk) data, and apply it to my parameters. However, I have a problem with applying certain of those old parameter values from the chunk data. The parameters they are being applied to are set with a range of [0.0,1.0], but those values may represent a different number of “real world” values, depending upon some other settings.
For example, this one drop-down might have two selections in one case, but three in another case. When I try to set the parameter value to 0.5 (which would be the second selection of a list of three), the underlying setValueNotifyingHost() call always converts that value to 0 (via convertFrom0To1()), and so the first item in my list is selected, even though I need the second item selected.
What I was hoping to do was to modify the range of the parameter so that when there are three items in the parameter, it would be set to [0.0,2.0], and that would allow my 0.5 to get properly mapped to 1 instead of 0. But there is no way to access the Parameter object that was created and added to the AudioProcessorValueTreeState. I can query that range, but the result is a copy, not a reference to the original Parameter’s range. So I can’t change it to allow setValueNotifyingHost() to use the range I need.
How can I apply the value 0.5 to my parameter, when its range is defined initially as [0.0,1.0], such then when convertFrom0To1() is called, it gives me 1 instead of 0?