JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins

« « « Anklang Documentation
Loading...
Searching...
No Matches
juce_RangedAudioParameter.cpp
Go to the documentation of this file.
1 /*
2 ==============================================================================
3
4 This file is part of the JUCE library.
5 Copyright (c) 2022 - Raw Material Software Limited
6
7 JUCE is an open source library subject to commercial or open-source
8 licensing.
9
10 By using JUCE, you agree to the terms of both the JUCE 7 End-User License
11 Agreement and JUCE Privacy Policy.
12
13 End User License Agreement: www.juce.com/juce-7-licence
14 Privacy Policy: www.juce.com/juce-privacy-policy
15
16 Or: You may also use this code under the terms of the GPL v3 (see
17 www.gnu.org/licenses).
18
19 JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
20 EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
21 DISCLAIMED.
22
23 ==============================================================================
24*/
25
26namespace juce
27{
28
30{
31 const auto& range = getNormalisableRange();
32
33 if (range.interval > 0)
34 return (static_cast<int> ((range.end - range.start) / range.interval) + 1);
35
37}
38
39float RangedAudioParameter::convertTo0to1 (float v) const noexcept
40{
41 const auto& range = getNormalisableRange();
42 return range.convertTo0to1 (range.snapToLegalValue (v));
43}
44
45float RangedAudioParameter::convertFrom0to1 (float v) const noexcept
46{
47 const auto& range = getNormalisableRange();
48 return range.snapToLegalValue (range.convertFrom0to1 (jlimit (0.0f, 1.0f, v)));
49}
50
51} // namespace juce
static int getDefaultNumParameterSteps() noexcept
Returns the default number of steps for a parameter.
float convertTo0to1(float v) const noexcept
Normalises and snaps a value based on the normalisable range.
int getNumSteps() const override
Returns the number of steps for this parameter based on the normalisable range's interval.
virtual const NormalisableRange< float > & getNormalisableRange() const =0
Returns the range of values that the parameter can take.
float convertFrom0to1(float v) const noexcept
Denormalises and snaps a value based on the normalisable range.
JUCE Namespace.
Type jlimit(Type lowerLimit, Type upperLimit, Type valueToConstrain) noexcept
Constrains a value to keep it within a given range.