Public Member Functions | Public Attributes | List of all members
AudioProcessorParameterWithID Class Reference

This abstract base class is used by some AudioProcessorParameter helper classes. More...

Inheritance diagram for AudioProcessorParameterWithID:

Public Member Functions

 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. More...
 
 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. 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...
 
String getParameterID () const override
 Returns an ID that is unique to this parameter. 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 isOrientationInverted () const override
 This can be overridden to tell the host that this parameter operates in the reverse direction. More...
 
- 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. More...
 
- 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. More...
 
virtual ~AudioProcessorParameter ()
 Destructor. More...
 
virtual float getValue () const =0
 Called by the host to find out the value of this parameter. More...
 
virtual void setValue (float newValue)=0
 The host will call this method to change the value of a parameter. 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 float getDefaultValue () const =0
 This should return the default value for this parameter. More...
 
virtual int getNumSteps () const
 Returns the number of steps that this parameter's range should be quantised into. More...
 
virtual bool isDiscrete () const
 Returns whether the parameter uses discrete values, based on the result of getNumSteps, or allows the host to select values continuously. More...
 
virtual bool isBoolean () const
 Returns whether the parameter represents a boolean switch, typically with "On" and "Off" states. More...
 
virtual String getText (float normalisedValue, int) const
 Returns a textual version of the supplied normalised parameter value. More...
 
virtual float getValueForText (const String &text) const =0
 Should parse a string and return the appropriate value for it. 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...
 
int getVersionHint () const
 
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)
 

Public Attributes

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...
 

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

This abstract base class is used by some AudioProcessorParameter helper classes.

See also
AudioParameterFloat, AudioParameterInt, AudioParameterBool, AudioParameterChoice

Constructor & Destructor Documentation

◆ AudioProcessorParameterWithID() [1/2]

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.

Given that AudioProcessorParameterWithID is abstract, you'll probably call this constructor from a derived class constructor, e.g.

MyParameterType (String paramID, String name, String label, bool automatable)
.withAutomatable (automatable))
{
}
Parameters
parameterIDSpecifies the identifier, and optionally the parameter's version hint.
parameterNameThe user-facing parameter name.
attributesOther parameter properties.

◆ AudioProcessorParameterWithID() [2/2]

AudioProcessorParameterWithID::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.

Parameters
parameterIDUsed to uniquely identify the parameter
parameterNameThe user-facing name of the parameter
parameterLabelAn optional label for the parameter's value
parameterCategoryThe semantics of this parameter

Member Function Documentation

◆ getName()

String AudioProcessorParameterWithID::getName ( int  maximumStringLength) const
overridevirtual

Returns the name to display for this parameter, which should be made to fit within the given string length.

Implements AudioProcessorParameter.

◆ getLabel()

String AudioProcessorParameterWithID::getLabel ( ) const
overridevirtual

Some parameters may be able to return a label string for their units.

For example "Hz" or "%".

Implements AudioProcessorParameter.

◆ getCategory()

Category AudioProcessorParameterWithID::getCategory ( ) const
overridevirtual

Returns the parameter's category.

Reimplemented from AudioProcessorParameter.

◆ getParameterID()

String AudioProcessorParameterWithID::getParameterID ( ) const
overridevirtual

Returns an ID that is unique to this parameter.

Parameter indices are unstable across plugin versions, which means that the parameter found at a particular index in one version of a plugin might move to a different index in the subsequent version.

Unlike the parameter index, the ID returned by this function should be somewhat stable (depending on the format of the plugin), so it is more suitable for storing/recalling automation data.

Implements HostedAudioProcessorParameter.

◆ isMetaParameter()

bool AudioProcessorParameterWithID::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 AudioProcessorParameterWithID::isAutomatable ( ) const
overridevirtual

Returns true if the host can automate this parameter.

By default, this returns true.

Reimplemented from AudioProcessorParameter.

◆ isOrientationInverted()

bool AudioProcessorParameterWithID::isOrientationInverted ( ) const
overridevirtual

This can be overridden to tell the host that this parameter operates in the reverse direction.

(Not all plugin formats or hosts will actually use this information).

Reimplemented from AudioProcessorParameter.

Member Data Documentation

◆ paramID

const String AudioProcessorParameterWithID::paramID

Provides access to the parameter's ID string.

◆ name

const String AudioProcessorParameterWithID::name

Provides access to the parameter's name.

◆ label

const String AudioProcessorParameterWithID::label

Provides access to the parameter's label.

◆ category

const Category AudioProcessorParameterWithID::category

Provides access to the parameter's category.


The documentation for this class was generated from the following file:
AudioProcessorParameterWithID::label
const String label
Provides access to the parameter's label.
Definition: juce_AudioProcessorParameterWithID.h:170
AudioProcessorParameterWithID
This abstract base class is used by some AudioProcessorParameter helper classes.
Definition: juce_AudioProcessorParameterWithID.h:120
String
The JUCE String class!
Definition: juce_String.h:55
AudioProcessorParameterWithIDAttributes
An instance of this class may be passed to the constructor of an AudioProcessorParameterWithID to set...
Definition: juce_AudioProcessorParameterWithID.h:69
AudioProcessorParameterWithID::name
const String name
Provides access to the parameter's name.
Definition: juce_AudioProcessorParameterWithID.h:167
AudioProcessorParameterWithID::paramID
const String paramID
Provides access to the parameter's ID string.
Definition: juce_AudioProcessorParameterWithID.h:164