TracktionEngine
|
#include <tracktion_EnvelopeFollowerModifier.h>
Classes | |
struct | Assignment |
Public Types | |
using | Ptr = juce::ReferenceCountedObjectPtr< EnvelopeFollowerModifier > |
using | Array = juce::ReferenceCountedArray< EnvelopeFollowerModifier > |
![]() | |
enum class | ProcessingPosition { none , preFX , postFX } |
Determines the position in the FX chain where the modifier should be processed. More... | |
using | Ptr = juce::ReferenceCountedObjectPtr< Modifier > |
using | Array = juce::ReferenceCountedArray< Modifier > |
![]() | |
using | WeakRef = juce::WeakReference< Selectable > |
Public Member Functions | |
EnvelopeFollowerModifier (Edit &, const juce::ValueTree &) | |
~EnvelopeFollowerModifier () override | |
void | initialise () override |
Call this once after construction to connect it to the audio graph. | |
float | getCurrentValue () override |
Must return the current value of the modifier. | |
juce::String | getName () const override |
float | getEnvelopeValue () const noexcept |
AutomatableParameter::ModifierAssignment * | createAssignment (const juce::ValueTree &) override |
Must return a new ModifierAssignment for a given state. | |
juce::StringArray | getAudioInputNames () override |
Can return an array of names represeting audio inputs. | |
ProcessingPosition | getProcessingPosition () override |
Should return the position in the plugin chain that this Modifier should be processed. | |
void | initialise (double sampleRate, int blockSizeSamples) override |
Sub classes should implement this to initialise the Modifier. | |
void | deinitialise () override |
Sub classes should implement this to deinitialise the Modifier. | |
void | applyToBuffer (const PluginRenderContext &) override |
Sub classes should implement this to process the Modifier. | |
juce::String | getSelectableDescription () override |
Subclasses must return a description of what they are. | |
![]() | |
Modifier (Edit &, const juce::ValueTree &) | |
Creates a Modifier for a given state. | |
~Modifier () override | |
Destructor. | |
void | remove () |
Removes this Modifier from its parent Track. | |
virtual juce::StringArray | getMidiInputNames () |
Can return an array of names represeting MIDI inputs. | |
bool | baseClassNeedsInitialising () const noexcept |
Returns true if the Modifier needs initialising. | |
void | baseClassInitialise (double sampleRate, int blockSizeSamples) |
Initialises the Modifier. | |
void | baseClassDeinitialise () |
Deinitialises the Modifier. | |
void | baseClassApplyToBuffer (const PluginRenderContext &) |
Updates internal value history and calls the subclass's applyToBuffer method. | |
TimePosition | getCurrentTime () const |
Returns the edit time of the current value. | |
float | getValueAt (TimeDuration numSecondsBeforeNow) const |
Returns the value of the at a given time in the past. | |
std::vector< float > | getValues (TimeDuration numSecondsBeforeNow) const |
Returns a vector of previous sample values. | |
double | getSampleRate () const |
Returns the sample rate the Modifier has been initialised with. | |
void | selectableAboutToBeDeleted () override |
![]() | |
AutomatableEditItem (Edit &, const juce::ValueTree &) | |
~AutomatableEditItem () override | |
virtual void | flushPluginStateToValueTree () |
virtual void | restorePluginStateFromValueTree (const juce::ValueTree &) |
juce::Array< AutomatableParameter * > | getAutomatableParameters () const |
int | getNumAutomatableParameters () const |
AutomatableParameter::Ptr | getAutomatableParameter (int index) const |
AutomatableParameter::Ptr | getAutomatableParameterByID (const juce::String ¶mID) const |
void | visitAllAutomatableParams (const std::function< void(AutomatableParameter &)> &visit) const |
void | deleteParameter (AutomatableParameter *) |
void | deleteAutomatableParameters () |
int | indexOfAutomatableParameter (const AutomatableParameter::Ptr &) const |
AutomatableParameterTree & | getParameterTree () const |
juce::ReferenceCountedArray< AutomatableParameter > | getFlattenedParameterTree () const |
void | addParameterListChangeListener (ParameterListChangeListener *) |
void | removeParameterListChangeListener (ParameterListChangeListener *) |
bool | isAutomationNeeded () const noexcept |
void | setAutomatableParamPosition (TimePosition) |
bool | isBeingActivelyPlayed () const |
virtual void | updateAutomatableParamPosition (TimePosition) |
Updates all the auto params to their positions at this time. | |
void | updateParameterStreams (TimePosition) |
Updates all the parameter streams to their positions at this time. | |
void | updateActiveParameters () |
Iterates all the parameters to find out which ones need to be automated. | |
void | resetRecordingStatus () |
Marks the end of an automation recording stream. | |
![]() | |
EditItem (EditItemID, Edit &) | |
EditItem (Edit &, const juce::ValueTree &) | |
virtual | ~EditItem ()=default |
![]() | |
Selectable () | |
virtual | ~Selectable () |
virtual void | selectionStatusChanged (bool isNowSelected) |
Can be overridden to tell this object that it has just been selected or deselected. | |
virtual void | changed () |
This should be called to send a change notification to any SelectableListeners that are registered with this object. | |
void | addListener (SelectableListener *) |
void | removeListener (SelectableListener *) |
void | addSelectableListener (SelectableListener *) |
void | removeSelectableListener (SelectableListener *) |
void | cancelAnyPendingUpdates () |
If changed() has been called, this will cancel any pending async change notificaions. | |
void | deselect () |
void | propertiesChanged () |
void | notifyListenersOfDeletion () |
WeakRef | getWeakRef () |
![]() | |
ModifierSource ()=default | |
virtual | ~ModifierSource () |
Additional Inherited Members | |
![]() | |
static void | initialise () |
static bool | isSelectableValid (const Selectable *) noexcept |
checks whether this object has been deleted. | |
![]() | |
static constexpr TimeDuration | maxHistoryTime = TimeDuration::fromSeconds (3.0) |
The max number of seconds of modifier value history that is stored. | |
![]() | |
void | setEditTime (TimePosition newEditTime) |
Subclasses can call this to update the edit time of the current value. | |
![]() | |
virtual void | buildParameterTree () const |
void | updateLastPlaybackTime () |
void | clearParameterList () |
void | addAutomatableParameter (const AutomatableParameter::Ptr &) |
void | rebuildParameterTree () |
void | saveChangedParametersToState () |
Saves the explicit value of any parameters that have deviated to the state. | |
void | restoreChangedParametersFromState () |
Restores the value of any explicitly set parameters. | |
using tracktion::engine::EnvelopeFollowerModifier::Ptr = juce::ReferenceCountedObjectPtr<EnvelopeFollowerModifier> |
using tracktion::engine::EnvelopeFollowerModifier::Array = juce::ReferenceCountedArray<EnvelopeFollowerModifier> |
tracktion::engine::EnvelopeFollowerModifier::EnvelopeFollowerModifier | ( | Edit & | , |
const juce::ValueTree & | |||
) |
|
override |
|
overridevirtual |
Call this once after construction to connect it to the audio graph.
Implements tracktion::engine::Modifier.
|
overridevirtual |
Must return the current value of the modifier.
Implements tracktion::engine::Modifier.
|
overridevirtual |
Implements tracktion::engine::EditItem.
Referenced by getSelectableDescription().
|
noexcept |
|
overridevirtual |
Must return a new ModifierAssignment for a given state.
Implements tracktion::engine::Modifier.
|
overridevirtual |
Can return an array of names represeting audio inputs.
Reimplemented from tracktion::engine::Modifier.
|
overridevirtual |
Should return the position in the plugin chain that this Modifier should be processed.
Reimplemented from tracktion::engine::Modifier.
References tracktion::engine::Modifier::postFX.
Sub classes should implement this to initialise the Modifier.
Reimplemented from tracktion::engine::Modifier.
|
overridevirtual |
Sub classes should implement this to deinitialise the Modifier.
Reimplemented from tracktion::engine::Modifier.
|
overridevirtual |
Sub classes should implement this to process the Modifier.
Reimplemented from tracktion::engine::Modifier.
|
overridevirtual |
Subclasses must return a description of what they are.
Implements tracktion::engine::Selectable.
References getName().
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::gainDb |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::attack |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::hold |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::release |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::depth |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::offset |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::lowPassEnabled |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::highPassEnabled |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::lowPassFrequency |
juce::CachedValue<float> tracktion::engine::EnvelopeFollowerModifier::highPassFrequency |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::gainDbParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::attackParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::holdParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::releaseParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::depthParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::offsetParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::lowPassEnabledParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::highPassEnabledParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::lowPassFrequencyParam |
AutomatableParameter::Ptr tracktion::engine::EnvelopeFollowerModifier::highPassFrequencyParam |