Loading...
Searching...
No Matches
AudioParameterChoice Class Reference

Provides a class of AudioProcessorParameter that can be used to select an indexed, named choice from a list. More...

#include <juce_AudioParameterChoice.h>

Inheritance diagram for AudioParameterChoice:

Public Member Functions

 AudioParameterChoice (const ParameterID &parameterID, const String &parameterName, const StringArray &choices, int defaultItemIndex, const AudioParameterChoiceAttributes &attributes={})
 Creates a AudioParameterChoice with the specified parameters.
 
 AudioParameterChoice (const ParameterID &parameterID, const String &parameterName, const StringArray &choicesToUse, int defaultItemIndex, const String &parameterLabel, std::function< String(int index, int maximumStringLength)> stringFromIndex=nullptr, std::function< int(const String &text)> indexFromString=nullptr)
 Creates a AudioParameterChoice with the specified parameters.
 
 ~AudioParameterChoice () override
 Destructor.
 
int getIndex () const noexcept
 Returns the current index of the selected item.
 
 operator int () const noexcept
 Returns the current index of the selected item.
 
String getCurrentChoiceName () const noexcept
 Returns the name of the currently selected item.
 
 operator String () const noexcept
 Returns the name of the currently selected item.
 
AudioParameterChoiceoperator= (int newValue)
 Changes the selected item to a new index.
 
const NormalisableRange< float > & getNormalisableRange () const override
 Returns the range of values that the parameter can take.
 
- Public Member Functions inherited from RangedAudioParameter
int getNumSteps () const override
 Returns the number of steps for this parameter based on the normalisable range's interval.
 
float convertTo0to1 (float v) const noexcept
 Normalises and snaps a value based on the normalisable range.
 
float convertFrom0to1 (float v) const noexcept
 Denormalises and snaps a value based on the normalisable range.
 
 AudioProcessorParameterWithID (const ParameterID &parameterID, const String &parameterName, const AudioProcessorParameterWithIDAttributes &attributes={})
 The creation of this object requires providing a name and ID which will be constant for its lifetime.
 
 AudioProcessorParameterWithID (const ParameterID &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.
 
- Public Member Functions inherited from AudioProcessorParameterWithID
 AudioProcessorParameterWithID (const ParameterID &parameterID, const String &parameterName, const AudioProcessorParameterWithIDAttributes &attributes={})
 The creation of this object requires providing a name and ID which will be constant for its lifetime.
 
 AudioProcessorParameterWithID (const ParameterID &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.
 
String getName (int) const override
 Returns the name to display for this parameter, which should be made to fit within the given string length.
 
String getLabel () const override
 Some parameters may be able to return a label string for their units.
 
Category getCategory () const override
 Returns the parameter's category.
 
String getParameterID () const override
 Returns an ID that is unique to this parameter.
 
bool isMetaParameter () const override
 Should return true if this parameter is a "meta" parameter.
 
bool isAutomatable () const override
 Returns true if the host can automate this parameter.
 
bool isOrientationInverted () const override
 This can be overridden to tell the host that this parameter operates in the reverse direction.
 
- Public Member Functions inherited from HostedAudioProcessorParameter
 AudioProcessorParameter () noexcept=default
 
 AudioProcessorParameter (int versionHint)
 The version hint supplied to this constructor is used in Audio Unit plugins to aid ordering parameter identifiers when JUCE_FORCE_USE_LEGACY_PARAM_IDS is not enabled.
 
- Public Member Functions inherited from AudioProcessorParameter
 AudioProcessorParameter () noexcept=default
 
 AudioProcessorParameter (int versionHint)
 The version hint supplied to this constructor is used in Audio Unit plugins to aid ordering parameter identifiers when JUCE_FORCE_USE_LEGACY_PARAM_IDS is not enabled.
 
virtual ~AudioProcessorParameter ()
 Destructor.
 
void setValueNotifyingHost (float newValue)
 A processor should call this when it needs to change one of its parameters.
 
void beginChangeGesture ()
 Sends a signal to the host to tell it that the user is about to start changing this parameter.
 
void endChangeGesture ()
 Tells the host that the user has finished changing this parameter.
 
virtual bool isBoolean () const
 Returns whether the parameter represents a boolean switch, typically with "On" and "Off" states.
 
int getParameterIndex () const noexcept
 Returns the index of this parameter in its parent processor's parameter list.
 
virtual String getCurrentValueAsText () const
 Returns the current value of the parameter as a String.
 
virtual StringArray getAllValueStrings () const
 Returns the set of strings which represent the possible states a parameter can be in.
 
int getVersionHint () const
 
void addListener (Listener *newListener)
 Registers a listener to receive events when the parameter's state changes.
 
void removeListener (Listener *listener)
 Removes a previously registered parameter listener.
 
void sendValueChangedMessageToListeners (float newValue)
 

Public Attributes

const StringArray choices
 Provides access to the list of choices that this parameter is working with.
 
- Public Attributes inherited from AudioProcessorParameterWithID
const String paramID
 Provides access to the parameter's ID string.
 
const String name
 Provides access to the parameter's name.
 
const String label
 Provides access to the parameter's label.
 
const Category category
 Provides access to the parameter's category.
 

Protected Member Functions

virtual void valueChanged (int newValue)
 Override this method if you are interested in receiving callbacks when the parameter value changes.
 

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
}
 

Detailed Description

Provides a class of AudioProcessorParameter that can be used to select an indexed, named choice from a list.

See also
AudioParameterFloat, AudioParameterInt, AudioParameterBool

Constructor & Destructor Documentation

◆ AudioParameterChoice() [1/2]

AudioParameterChoice::AudioParameterChoice ( const ParameterID & parameterID,
const String & parameterName,
const StringArray & choices,
int defaultItemIndex,
const AudioParameterChoiceAttributes & attributes = {} )

Creates a AudioParameterChoice with the specified parameters.

Note that the attributes argument is optional and only needs to be supplied if you want to change options from their default values.

Example usage:

auto attributes = AudioParameterChoiceAttributes().withLabel ("selected");
auto param = std::make_unique<AudioParameterChoice> ("paramID", "Parameter Name", StringArray { "a", "b", "c" }, 0, attributes);
Properties of an AudioParameterChoice.
Definition juce_AudioParameterChoice.h:47
auto withLabel(String x) const
See AudioProcessorParameterWithIDAttributes::withLabel()
Definition juce_RangedAudioParameter.h:72
A special array for holding a list of strings.
Definition juce_StringArray.h:50
Parameters
parameterIDThe parameter ID to use
parameterNameThe parameter name to use
choicesThe set of choices to use
defaultItemIndexThe index of the default choice
attributesOptional characteristics

◆ AudioParameterChoice() [2/2]

AudioParameterChoice::AudioParameterChoice ( const ParameterID & parameterID,
const String & parameterName,
const StringArray & choicesToUse,
int defaultItemIndex,
const String & parameterLabel,
std::function< String(int index, int maximumStringLength)> stringFromIndex = nullptr,
std::function< int(const String &text)> indexFromString = nullptr )

Creates a AudioParameterChoice with the specified parameters.

Parameters
parameterIDThe parameter ID to use
parameterNameThe parameter name to use
choicesToUseThe set of choices to use
defaultItemIndexThe index of the default choice
parameterLabelAn optional label for the parameter's value
stringFromIndexAn optional lambda function that converts a choice index to a string with a maximum length. This may be used by hosts to display the parameter's value.
indexFromStringAn optional lambda function that parses a string and converts it into a choice index. Some hosts use this to allow users to type in parameter values.

◆ ~AudioParameterChoice()

AudioParameterChoice::~AudioParameterChoice ( )
override

Destructor.

Member Function Documentation

◆ getIndex()

int AudioParameterChoice::getIndex ( ) const
noexcept

Returns the current index of the selected item.

References roundToInt().

◆ operator int()

AudioParameterChoice::operator int ( ) const
noexcept

Returns the current index of the selected item.

◆ getCurrentChoiceName()

String AudioParameterChoice::getCurrentChoiceName ( ) const
noexcept

Returns the name of the currently selected item.

◆ operator String()

AudioParameterChoice::operator String ( ) const
noexcept

Returns the name of the currently selected item.

◆ operator=()

AudioParameterChoice & AudioParameterChoice::operator= ( int newValue)

Changes the selected item to a new index.

◆ getNormalisableRange()

const NormalisableRange< float > & AudioParameterChoice::getNormalisableRange ( ) const
overridevirtual

Returns the range of values that the parameter can take.

Implements RangedAudioParameter.

◆ valueChanged()

virtual void AudioParameterChoice::valueChanged ( int newValue)
protectedvirtual

Override this method if you are interested in receiving callbacks when the parameter value changes.

Member Data Documentation

◆ choices

const StringArray AudioParameterChoice::choices

Provides access to the list of choices that this parameter is working with.


The documentation for this class was generated from the following file:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram