TracktionEngine
|
#include <tracktion_RandomModifier.h>
Classes | |
struct | Assignment |
Public Types | |
enum | Type { random = 0 , noise = 1 } |
using | Ptr = juce::ReferenceCountedObjectPtr< RandomModifier > |
using | Array = juce::ReferenceCountedArray< RandomModifier > |
![]() | |
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 | |
RandomModifier (Edit &, const juce::ValueTree &) | |
~RandomModifier () override | |
void | initialise () override |
Call this once after construction to connect it to the audio graph. | |
juce::String | getName () const override |
float | getCurrentValue () override |
Returns the current value of the LFO. | |
float | getCurrentPhase () const noexcept |
Returns the current phase between 0 & 1. | |
AutomatableParameter::ModifierAssignment * | createAssignment (const juce::ValueTree &) override |
Must return a new ModifierAssignment for a given state. | |
ProcessingPosition | getProcessingPosition () override |
Should return the position in the plugin chain that this Modifier should be processed. | |
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. | |
virtual void | initialise ()=0 |
Call this once after construction to connect it to the audio graph. | |
virtual void | initialise (double, int) |
Sub classes should implement this to initialise the Modifier. | |
![]() | |
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. | |
virtual juce::StringArray | getAudioInputNames () |
Can return an array of names represeting audio inputs. | |
virtual void | deinitialise () |
Sub classes should implement this to deinitialise the Modifier. | |
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 () |
Static Public Member Functions | |
static juce::StringArray | getTypeNames () |
![]() | |
static void | initialise () |
static bool | isSelectableValid (const Selectable *) noexcept |
checks whether this object has been deleted. | |
Additional Inherited Members | |
![]() | |
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::RandomModifier::Ptr = juce::ReferenceCountedObjectPtr<RandomModifier> |
using tracktion::engine::RandomModifier::Array = juce::ReferenceCountedArray<RandomModifier> |
|
override |
|
overridevirtual |
Call this once after construction to connect it to the audio graph.
Implements tracktion::engine::Modifier.
|
overridevirtual |
Implements tracktion::engine::EditItem.
Referenced by getSelectableDescription().
|
overridevirtual |
Returns the current value of the LFO.
N.B. this may be greater than +-1 if a suitable offset has been applied.
Implements tracktion::engine::Modifier.
|
noexcept |
Returns the current phase between 0 & 1.
|
overridevirtual |
Must return a new ModifierAssignment for a given state.
Implements 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::preFX.
|
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().
|
static |
Call this once after construction to connect it to the audio graph.
Implements tracktion::engine::Modifier.
Sub classes should implement this to initialise the Modifier.
Reimplemented from tracktion::engine::Modifier.
juce::CachedValue<float> tracktion::engine::RandomModifier::type |
juce::CachedValue<float> tracktion::engine::RandomModifier::shape |
juce::CachedValue<float> tracktion::engine::RandomModifier::syncType |
juce::CachedValue<float> tracktion::engine::RandomModifier::rate |
juce::CachedValue<float> tracktion::engine::RandomModifier::rateType |
juce::CachedValue<float> tracktion::engine::RandomModifier::depth |
juce::CachedValue<float> tracktion::engine::RandomModifier::stepDepth |
juce::CachedValue<float> tracktion::engine::RandomModifier::smooth |
juce::CachedValue<float> tracktion::engine::RandomModifier::bipolar |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::typeParam |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::shapeParam |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::syncTypeParam |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::rateParam |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::rateTypeParam |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::depthParam |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::stepDepthParam |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::smoothParam |
AutomatableParameter::Ptr tracktion::engine::RandomModifier::bipolarParam |