TracktionEngine
|
Base class for elements that have some kind of automatable parameters. More...
#include <tracktion_AutomatableEditItem.h>
Classes | |
struct | ParameterListChangeListener |
Public Member Functions | |
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 |
virtual juce::String | getName () const =0 |
Public Attributes | |
juce::ValueTree | elementState |
juce::CachedValue< bool > | remapOnTempoChange |
![]() | |
Edit & | edit |
const EditItemID | itemID |
Every EditItem has an ID which is unique within the edit. | |
Protected Member Functions | |
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. | |
Base class for elements that have some kind of automatable parameters.
tracktion::engine::AutomatableEditItem::AutomatableEditItem | ( | Edit & | , |
const juce::ValueTree & | |||
) |
|
override |
|
virtual |
Reimplemented in tracktion::engine::AirWindowsPlugin, tracktion::engine::ExternalPlugin, and tracktion::engine::Plugin.
|
virtual |
Reimplemented in tracktion::engine::MacroParameterList, tracktion::engine::AirWindowsPlugin, tracktion::engine::ChorusPlugin, tracktion::engine::CompressorPlugin, tracktion::engine::DelayPlugin, tracktion::engine::EqualiserPlugin, tracktion::engine::FourOscPlugin, tracktion::engine::ImpulseResponsePlugin, tracktion::engine::LatencyPlugin, tracktion::engine::MidiModifierPlugin, tracktion::engine::PhaserPlugin, tracktion::engine::PitchShiftPlugin, tracktion::engine::ReverbPlugin, tracktion::engine::SamplerPlugin, tracktion::engine::ToneGeneratorPlugin, tracktion::engine::ExternalPlugin, tracktion::engine::AuxReturnPlugin, tracktion::engine::AuxSendPlugin, tracktion::engine::InsertPlugin, tracktion::engine::LevelMeterPlugin, tracktion::engine::VCAPlugin, and tracktion::engine::VolumeAndPanPlugin.
juce::Array< AutomatableParameter * > tracktion::engine::AutomatableEditItem::getAutomatableParameters | ( | ) | const |
int tracktion::engine::AutomatableEditItem::getNumAutomatableParameters | ( | ) | const |
AutomatableParameter::Ptr tracktion::engine::AutomatableEditItem::getAutomatableParameter | ( | int | index | ) | const |
AutomatableParameter::Ptr tracktion::engine::AutomatableEditItem::getAutomatableParameterByID | ( | const juce::String & | paramID | ) | const |
void tracktion::engine::AutomatableEditItem::visitAllAutomatableParams | ( | const std::function< void(AutomatableParameter &)> & | visit | ) | const |
void tracktion::engine::AutomatableEditItem::deleteParameter | ( | AutomatableParameter * | ) |
void tracktion::engine::AutomatableEditItem::deleteAutomatableParameters | ( | ) |
int tracktion::engine::AutomatableEditItem::indexOfAutomatableParameter | ( | const AutomatableParameter::Ptr & | ) | const |
AutomatableParameterTree & tracktion::engine::AutomatableEditItem::getParameterTree | ( | ) | const |
juce::ReferenceCountedArray< AutomatableParameter > tracktion::engine::AutomatableEditItem::getFlattenedParameterTree | ( | ) | const |
void tracktion::engine::AutomatableEditItem::addParameterListChangeListener | ( | ParameterListChangeListener * | ) |
void tracktion::engine::AutomatableEditItem::removeParameterListChangeListener | ( | ParameterListChangeListener * | ) |
|
noexcept |
void tracktion::engine::AutomatableEditItem::setAutomatableParamPosition | ( | TimePosition | ) |
bool tracktion::engine::AutomatableEditItem::isBeingActivelyPlayed | ( | ) | const |
|
virtual |
Updates all the auto params to their positions at this time.
Reimplemented in tracktion::engine::RackInstance.
void tracktion::engine::AutomatableEditItem::updateParameterStreams | ( | TimePosition | ) |
Updates all the parameter streams to their positions at this time.
This should be used during real time processing as it's a lot quicker than the above method.
void tracktion::engine::AutomatableEditItem::updateActiveParameters | ( | ) |
Iterates all the parameters to find out which ones need to be automated.
void tracktion::engine::AutomatableEditItem::resetRecordingStatus | ( | ) |
Marks the end of an automation recording stream.
Call this when play stops or starts.
|
protectedvirtual |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Saves the explicit value of any parameters that have deviated to the state.
|
protected |
Restores the value of any explicitly set parameters.
juce::ValueTree tracktion::engine::AutomatableEditItem::elementState |
juce::CachedValue<bool> tracktion::engine::AutomatableEditItem::remapOnTempoChange |