AudioProcessorValueTreeState::Parameter Class Referencefinal
juce_audio_processors » utilities

A parameter class that maintains backwards compatibility with deprecated AudioProcessorValueTreeState functionality. More...

Inheritance diagram for AudioProcessorValueTreeState::Parameter:

## Public Member Functions

Parameter (const String &parameterID, const String &parameterName, const String &labelText, NormalisableRange< float > valueRange, float defaultValue, std::function< String(float)> valueToTextFunction, std::function< float(const String &)> textToValueFunction, bool isMetaParameter=false, bool isAutomatableParameter=true, bool isDiscrete=false, AudioProcessorParameter::Category parameterCategory=AudioProcessorParameter::genericParameter, bool isBoolean=false)

float | getDefaultValue () const override
| This should return the default value for this parameter. More...
int | getNumSteps () const override
| Returns the number of steps that this parameter's range should be quantised into. More...
bool | isMetaParameter () const override
| Should return true if this parameter is a "meta" parameter. More...
bool | isAutomatable () const override
| Returns true if the host can automate this parameter. More...
bool | isDiscrete () const override
| Returns whether the parameter uses discrete values, based on the result of getNumSteps, or allows the host to select values continuously. More...
bool | isBoolean () const override
| Returns whether the parameter represents a boolean switch, typically with "On" and "Off" states. More...
Public Member Functions inherited from AudioParameterFloat

AudioParameterFloat (const String &parameterID, const String &parameterName, NormalisableRange< float > normalisableRange, float defaultValue, const String &parameterLabel=String(), Category parameterCategory=AudioProcessorParameter::genericParameter, std::function< String(float value, int maximumStringLength)> stringFromValue=nullptr, std::function< float(const String &text)> valueFromString=nullptr)

| Creates a AudioParameterFloat with the specified parameters. More...
| AudioParameterFloat (String parameterID, String parameterName, float minValue, float maxValue, float defaultValue)
| Creates a AudioParameterFloat with an ID, name, and range. More...
| ~AudioParameterFloat () override
| Destructor. More...
float | get () const noexcept
| Returns the parameter's current value. More...
| operator float () const noexcept
| Returns the parameter's current value. More...
AudioParameterFloat & | operator= (float newValue)
| Changes the parameter's current value. More...
const NormalisableRange< float > & | getNormalisableRange () const override
| Returns the range of values that the parameter can take. More...
Public Member Functions inherited from RangedAudioParameter
| RangedAudioParameter (const String &parameterID, const String &parameterName, const String &parameterLabel={}, Category parameterCategory=AudioProcessorParameter::genericParameter)
| The creation of this object requires providing a name and ID which will be constant for its lifetime. More...
int | getNumSteps () const override
| Returns the number of steps for this parameter based on the normalisable range's interval. More...
float | convertTo0to1 (float v) const noexcept
| Normalises and snaps a value based on the normalisable range. More...
float | convertFrom0to1 (float v) const noexcept
| Denormalises and snaps a value based on the normalisable range. More...
Public Member Functions inherited from AudioProcessorParameterWithID
| AudioProcessorParameterWithID (const String &parameterID, const String &parameterName, const String &parameterLabel={}, Category parameterCategory=AudioProcessorParameter::genericParameter)
| The creation of this object requires providing a name and ID which will be constant for its lifetime. More...
| ~AudioProcessorParameterWithID () override
| Destructor. More...
String | getName (int) const override
| Returns the name to display for this parameter, which should be made to fit within the given string length. More...
String | getLabel () const override
| Some parameters may be able to return a label string for their units. More...
Category | getCategory () const override
| Returns the parameter's category. More...
Public Member Functions inherited from AudioProcessorParameter
| AudioProcessorParameter () noexcept
virtual | ~AudioProcessorParameter ()
| Destructor. More...
void | setValueNotifyingHost (float newValue)
| A processor should call this when it needs to change one of its parameters. More...
void | beginChangeGesture ()
| Sends a signal to the host to tell it that the user is about to start changing this parameter. More...
void | endChangeGesture ()
| Tells the host that the user has finished changing this parameter. More...
virtual bool | isOrientationInverted () const
| This can be overridden to tell the host that this parameter operates in the reverse direction. More...
int | getParameterIndex () const noexcept
| Returns the index of this parameter in its parent processor's parameter list. More...
virtual String | getCurrentValueAsText () const
| Returns the current value of the parameter as a String. More...
virtual StringArray | getAllValueStrings () const
| Returns the set of strings which represent the possible states a parameter can be in. More...
void | addListener (Listener *newListener)
| Registers a listener to receive events when the parameter's state changes. More...
void | removeListener (Listener *listener)
| Removes a previously registered parameter listener. More...
void | sendValueChangedMessageToListeners (float newValue)

## Additional Inherited Members

Public Types inherited from AudioProcessorParameter
enum | Category { genericParameter = (0 << 16) | 0, inputGain = (1 << 16) | 0, outputGain = (1 << 16) | 1, inputMeter = (2 << 16) | 0, outputMeter = (2 << 16) | 1, compressorLimiterGainReductionMeter = (2 << 16) | 2, expanderGateGainReductionMeter = (2 << 16) | 3, analysisMeter = (2 << 16) | 4, otherMeter = (2 << 16) | 5 }
Public Attributes inherited from AudioParameterFloat
NormalisableRange< float > | range
| Provides access to the parameter's range. More...
Public Attributes inherited from AudioProcessorParameterWithID
const String | paramID
| Provides access to the parameter's ID string. More...
const String | name
| Provides access to the parameter's name. More...
const String | label
| Provides access to the parameter's label. More...
const Category | category
| Provides access to the parameter's category. More...

## Detailed Description

A parameter class that maintains backwards compatibility with deprecated AudioProcessorValueTreeState functionality.

Previous calls to

createAndAddParameter (paramID1, paramName1, ...);

can be replaced with

using Parameter = AudioProcessorValueTreeState::Parameter;
createAndAddParameter (std::make_unique<Parameter> (paramID1, paramName1, ...));

However, a much better approach is to use the AudioProcessorValueTreeState constructor directly

using Parameter = AudioProcessorValueTreeState::Parameter;
YourAudioProcessor()
: apvts (*this, &undoManager, "PARAMETERS", { std::make_unique<Parameter> (paramID1, paramName1, ...),
std::make_unique<Parameter> (paramID2, paramName2, ...),
... })

## Constructor & Destructor Documentation

## Parameter()

AudioProcessorValueTreeState::Parameter::Parameter | ( | const String & | parameterID,
|  | const String & | parameterName,
|  | const String & | labelText,
|  | NormalisableRange< float > | valueRange,
|  | float | defaultValue,
|  | std::function< String(float)> | valueToTextFunction,
|  | std::function< float(const String &)> | textToValueFunction,
|  | bool | isMetaParameter = `false`,
|  | bool | isAutomatableParameter = `true`,
|  | bool | isDiscrete = `false`,
|  | AudioProcessorParameter::Category | parameterCategory = `AudioProcessorParameter::genericParameter`,
|  | bool | isBoolean = `false`
| ) |  |

## Member Function Documentation

## getDefaultValue()

float AudioProcessorValueTreeState::Parameter::getDefaultValue | ( |  | ) | const

override virtual

This should return the default value for this parameter.

Reimplemented from AudioParameterFloat.

## getNumSteps()

int AudioProcessorValueTreeState::Parameter::getNumSteps | ( |  | ) | const

override virtual

Returns the number of steps that this parameter's range should be quantised into.

If you want a continuous range of values, don't override this method, and allow the default implementation to return AudioProcessor::getDefaultNumParameterSteps().

If your parameter is boolean, then you may want to make this return 2.

The value that is returned may or may not be used, depending on the host. If you want the host to display stepped automation values, rather than a continuous interpolation between successive values, you should override isDiscrete to return true.

See also
  isDiscrete

Reimplemented from AudioParameterFloat.

## isMetaParameter()

bool AudioProcessorValueTreeState::Parameter::isMetaParameter | ( |  | ) | const

override virtual

Should return true if this parameter is a "meta" parameter.

A meta-parameter is a parameter that changes other params. It is used by some hosts (e.g. AudioUnit hosts). By default this returns false.

Reimplemented from AudioProcessorParameter.

## isAutomatable()

bool AudioProcessorValueTreeState::Parameter::isAutomatable | ( |  | ) | const

override virtual

Returns true if the host can automate this parameter.

By default, this returns true.

Reimplemented from AudioProcessorParameter.

## isDiscrete()

bool AudioProcessorValueTreeState::Parameter::isDiscrete | ( |  | ) | const

override virtual

Returns whether the parameter uses discrete values, based on the result of getNumSteps, or allows the host to select values continuously.

This information may or may not be used, depending on the host. If you want the host to display stepped automation values, rather than a continuous interpolation between successive values, override this method to return true.

See also
  getNumSteps

Reimplemented from AudioProcessorParameter.

## isBoolean()

bool AudioProcessorValueTreeState::Parameter::isBoolean | ( |  | ) | const

override virtual

Returns whether the parameter represents a boolean switch, typically with "On" and "Off" states.

This information may or may not be used, depending on the host. If you want the host to display a switch, rather than a two item dropdown menu, override this method to return true. You also need to override isDiscrete() to return `true` and getNumSteps() to return `2`.

See also
  isDiscrete getNumSteps

Reimplemented from AudioProcessorParameter.

The documentation for this class was generated from the following file:

- juce_AudioProcessorValueTreeState.h

AudioProcessorValueTreeState::Parameter::Parameter
Parameter(const String &parameterID, const String &parameterName, const String &labelText, NormalisableRange< float > valueRange, float defaultValue, std::function< String(float)> valueToTextFunction, std::function< float(const String &)> textToValueFunction, bool isMetaParameter=false, bool isAutomatableParameter=true, bool isDiscrete=false, AudioProcessorParameter::Category parameterCategory=AudioProcessorParameter::genericParameter, bool isBoolean=false)
AudioProcessorValueTreeState::undoManager
UndoManager *const undoManager
Provides access to the undo manager that this object is using.
Definition: juce_AudioProcessorValueTreeState.h:363
AudioProcessorValueTreeState::Parameter
A parameter class that maintains backwards compatibility with deprecated AudioProcessorValueTreeState...
Definition: juce_AudioProcessorValueTreeState.h:397
AudioProcessorValueTreeState::createAndAddParameter
RangedAudioParameter * createAndAddParameter(std::unique_ptr< RangedAudioParameter > parameter)
This function adds a parameter to the attached AudioProcessor and that parameter will be managed by t...