Public Member Functions | List of all members
AudioProcessorValueTreeState::Parameter Class Referencefinal

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...
 
AudioParameterFloatoperator= (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

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

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

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
overridevirtual

This should return the default value for this parameter.

Reimplemented from AudioParameterFloat.

◆ getNumSteps()

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

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
overridevirtual

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
overridevirtual

Returns true if the host can automate this parameter.

By default, this returns true.

Reimplemented from AudioProcessorParameter.

◆ isDiscrete()

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

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
overridevirtual

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:
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:365
AudioProcessorValueTreeState::Parameter
A parameter class that maintains backwards compatibility with deprecated AudioProcessorValueTreeState...
Definition: juce_AudioProcessorValueTreeState.h:399
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...