|
tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications
« « « Anklang Documentation |
Classes | |
| struct | EditorComponent |
| struct | WindowState |
| struct | Wire |
| struct | WireList |
Public Types | |
| enum class | Type { allPlugins , folderTrackPlugins , effectPlugins } |
| using | Ptr = juce::ReferenceCountedObjectPtr< Plugin > |
| using | Array = juce::ReferenceCountedArray< Plugin > |
Public Types inherited from tracktion::engine::Selectable | |
| using | WeakRef = juce::WeakReference< Selectable > |
Public Member Functions | |
| Plugin (PluginCreationInfo) | |
| void | selectableAboutToBeDeleted () override |
| Called just before the selectable is about to be deleted so any subclasses should still be valid at this point. | |
| void | playStartedOrStopped () |
| called by the system to let the plugin manage its automation stuff | |
| virtual void | initialiseFully () |
| Gives the plugin a chance to do extra initialisation when it's been added to an edit. | |
| virtual void | flushPluginStateToValueTree () override |
| virtual juce::String | getName () const override=0 |
| The name of the type, e.g. | |
| virtual juce::String | getPluginType ()=0 |
| virtual juce::String | getVendor () |
| virtual juce::String | getShortName (int) |
| virtual juce::String | getIdentifierString () |
| A unique string to idenitify plugin independant of install location. | |
| virtual juce::String | getTooltip () |
| default returns the name, others can return special stuff if needed | |
| virtual void | setEnabled (bool) |
| Enable/disable the plugin. | |
| bool | isEnabled () const noexcept |
| void | setFrozen (bool shouldBeFrozen) |
| This is a bit different to being enabled as when frozen a plugin can't be interacted with. | |
| bool | isFrozen () const noexcept |
| void | setProcessingEnabled (bool p) |
| Enable/Disable processing. | |
| bool | isProcessingEnabled () const noexcept |
| virtual void | initialise (const PluginInitialisationInfo &)=0 |
| Gives the plugin a chance to set itself up before being played. | |
| virtual void | initialiseWithoutStopping (const PluginInitialisationInfo &) |
| Tells the plugin that the audio graph has changed but the plugin isn't being re-initialised - i.e. | |
| bool | isInitialising () const |
| virtual void | deinitialise ()=0 |
| Called after play stops to release resources. | |
| virtual void | reset () |
| Should reset synth voices, tails, clear delay buffers, etc. | |
| virtual void | trackPropertiesChanged () |
| Track name or colour has changed. | |
| virtual void | applyToBuffer (const PluginRenderContext &)=0 |
| Process the next block of data. | |
| virtual void | prepareForNextBlock (TimePosition) |
| Called between successive rendering blocks. | |
| void | applyToBufferWithAutomation (const PluginRenderContext &) |
| virtual bool | shoulMeasureCpuUsage () const noexcept |
| Plugins can return false if they want to avoid the overhead of measuring the CPU usage. | |
| double | getCpuUsage () const noexcept |
| Returns the proportion of the current buffer size spent processing this plugin. | |
| virtual int | getNumOutputChannelsGivenInputs (int numInputChannels) |
| This must return the number of output channels that the plugin will produce, given a number of input channels. | |
| virtual bool | producesAudioWhenNoAudioInput () |
| virtual bool | noTail () |
| virtual void | getChannelNames (juce::StringArray *ins, juce::StringArray *outs) |
| virtual bool | takesAudioInput () |
| virtual bool | takesMidiInput () |
| virtual bool | isSynth () |
| virtual double | getLatencySeconds () |
| virtual double | getTailLength () const |
| virtual bool | canSidechain () |
| juce::StringArray | getInputChannelNames () |
| juce::StringArray | getSidechainSourceNames (bool allowNone) |
| void | setSidechainSourceByName (const juce::String &name) |
| juce::String | getSidechainSourceName () |
| void | guessSidechainRouting () |
| int | getNumWires () const |
| Wire * | getWire (int index) const |
| void | makeConnection (int srcChannel, int dstChannel, juce::UndoManager *) |
| void | breakConnection (int srcChannel, int dstChannel) |
| virtual bool | hasNameForMidiNoteNumber (int note, int midiChannel, juce::String &name) |
| If it's a synth that names its notes, this can return the name it uses for this note 0-127. | |
| virtual bool | hasNameForMidiProgram (int programNum, int bank, juce::String &name) |
| Returns the name for a midi program, if there is one. | |
| virtual bool | hasNameForMidiBank (int bank, juce::String &name) |
| virtual bool | canBeAddedToClip () |
| virtual bool | canBeAddedToRack () |
| virtual bool | canBeAddedToFolderTrack () |
| virtual bool | canBeAddedToMaster () |
| virtual bool | canBeDisabled () |
| virtual bool | canBeMoved () |
| virtual bool | needsConstantBufferSize ()=0 |
| virtual bool | isMissing () |
| for things like VSTs where the DLL is missing. | |
| virtual bool | isDisabled () |
| Plugins can be disabled to avoid them crashing Edits. | |
| bool | isInRack () const |
| juce::ReferenceCountedObjectPtr< RackType > | getOwnerRackType () const |
| bool | isClipEffectPlugin () const |
| virtual juce::AudioProcessor * | getWrappedAudioProcessor () const |
| AutomatableParameter::Ptr | getQuickControlParameter () const |
| void | setQuickControlParameter (AutomatableParameter *) |
| virtual void | deleteFromParent () |
| Attempts to delete this plugin, whether it's a master plugin, track plugin, etc. | |
| void | removeFromParent () |
| Detaches the plugin from any parent it might be in. | |
| Track * | getOwnerTrack () const |
| Returns the track if it's a track or clip plugin. | |
| Clip * | getOwnerClip () const |
| Returns the clip if that's what it's in. | |
| PluginList * | getOwnerList () const |
| Ptr | findPluginThatFeedsIntoThis () const |
| Ptr | findPluginThatThisFeedsInto () const |
| void | changed () override |
| method from Selectable, that's been overridden here to also tell the edit that it's changed. | |
| juce::Array< ReferencedItem > | getReferencedItems () override |
| void | reassignReferencedItem (const ReferencedItem &, ProjectItemID newID, double newStartTime) override |
| virtual void | sourceMediaChanged () |
| Called when ProjectItem sources are re-assigned so you can reload from the new source. | |
| bool | setPluginToMirror (const Plugin::Ptr &) |
| virtual void | updateFromMirroredPluginIfNeeded (Plugin &) |
| Plugin::Ptr | getMirroredPlugin () const |
| bool | baseClassNeedsInitialising () const noexcept |
| void | baseClassInitialise (const PluginInitialisationInfo &) |
| void | baseClassDeinitialise () |
| void | setSidechainSourceID (EditItemID newID) |
| EditItemID | getSidechainSourceID () const |
| virtual std::unique_ptr< EditorComponent > | createEditor () |
| void | showWindowExplicitly () |
| void | hideWindowForShutdown () |
| juce::UndoManager * | getUndoManager () const noexcept |
Public Member Functions inherited from tracktion::engine::Selectable | |
| virtual juce::String | getSelectableDescription ()=0 |
| Subclasses must return a description of what they are. | |
| virtual void | selectionStatusChanged (bool isNowSelected) |
| Can be overridden to tell this object that it has just been selected or deselected. | |
| 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 () |
Public Member Functions inherited from juce::ReferenceCountedObject | |
| void | incReferenceCount () noexcept |
| void | decReferenceCount () noexcept |
| bool | decReferenceCountWithoutDeleting () noexcept |
| int | getReferenceCount () const noexcept |
Public Member Functions inherited from tracktion::engine::AutomatableEditItem | |
| AutomatableEditItem (Edit &, const juce::ValueTree &) | |
| 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. | |
Public Member Functions inherited from tracktion::engine::EditItem | |
| EditItem (EditItemID, Edit &) | |
Public Member Functions inherited from tracktion::engine::MacroParameterElement | |
| MacroParameterElement (Edit &, const juce::ValueTree &) | |
| Constructor. | |
| virtual | ~MacroParameterElement ()=default |
| Destructor. | |
| MacroParameterList * | getMacroParameterList () |
| If no parameters have been created, this may return nullptr. | |
| MacroParameterList & | getMacroParameterListForWriting () |
| This ensures that the list has been created. | |
| juce::ReferenceCountedArray< MacroParameter > | getMacroParameters () const |
Static Public Member Functions | |
| static bool | areSelectedPluginsRackable (SelectionManager &) |
| static RackInstance * | wrapSelectedPluginsInRack (SelectionManager &) |
| static void | sortPlugins (Plugin::Array &) |
| static void | sortPlugins (std::vector< Plugin * > &) |
Static Public Member Functions inherited from tracktion::engine::Selectable | |
| static void | initialise () |
| static bool | isSelectableValid (const Selectable *) noexcept |
| checks whether this object has been deleted. | |
Static Public Member Functions inherited from tracktion::engine::Exportable | |
| static juce::Array< Exportable * > | addAllExportables (Edit &) |
| Returns all the Exportables contained in an Edit. | |
Public Attributes | |
| std::unique_ptr< WindowState > | windowState |
| Engine & | engine |
| juce::ValueTree | state |
Public Attributes inherited from tracktion::engine::Selectable | |
| WeakRef::Master | masterReference |
Public Attributes inherited from tracktion::engine::AutomatableEditItem | |
| juce::ValueTree | elementState |
| juce::CachedValue< bool > | remapOnTempoChange |
Public Attributes inherited from tracktion::engine::EditItem | |
| Edit & | edit |
| const EditItemID | itemID |
| Every EditItem has an ID which is unique within the edit. | |
Public Attributes inherited from tracktion::engine::MacroParameterElement | |
| Edit & | ownerEdit |
| juce::ValueTree | parentStateForList |
Static Protected Member Functions | |
| static void | getLeftRightChannelNames (juce::StringArray *ins, juce::StringArray *outs) |
| static void | getLeftRightChannelNames (juce::StringArray *chans) |
Protected Attributes | |
| juce::CachedValue< AtomicWrapper< bool > > | enabled |
| juce::CachedValue< bool > | frozen |
| juce::CachedValue< bool > | processing |
| juce::CachedValue< juce::String > | quickParamName |
| juce::CachedValue< EditItemID > | masterPluginID |
| juce::CachedValue< EditItemID > | sidechainSourceID |
| double | sampleRate |
| int | blockSizeSamples |
Definition at line 108 of file tracktion_Plugin.h.
Definition at line 123 of file tracktion_Plugin.h.
Definition at line 122 of file tracktion_Plugin.h.
|
strong |
Definition at line 355 of file tracktion_Plugin.h.
| tracktion::engine::Plugin::Plugin | ( | PluginCreationInfo | info | ) |
Definition at line 68 of file tracktion_Plugin.cpp.
|
override |
Definition at line 120 of file tracktion_Plugin.cpp.
|
protected |
Definition at line 570 of file tracktion_Plugin.cpp.
|
protected |
Definition at line 578 of file tracktion_Plugin.cpp.
|
pure virtual |
Process the next block of data.
The incoming buffer will have an unknown number of channels, and the plugin has to deal with them however it wants to.
The buffer should be resized to the number of output channels that the plugin wants to return (which should be the same or less than the number of output channel names it returns from getChannelNames() - never more than this).
Implemented in tracktion::engine::ChorusPlugin, tracktion::engine::CompressorPlugin, tracktion::engine::DelayPlugin, tracktion::engine::EqualiserPlugin, tracktion::engine::FourOscPlugin, tracktion::engine::ImpulseResponsePlugin, tracktion::engine::LatencyPlugin, tracktion::engine::LowPassPlugin, tracktion::engine::MidiModifierPlugin, tracktion::engine::MidiPatchBayPlugin, tracktion::engine::PatchBayPlugin, 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::FreezePointPlugin, tracktion::engine::InsertPlugin, tracktion::engine::LevelMeterPlugin, tracktion::engine::RackInstance, tracktion::engine::TextPlugin, tracktion::engine::VCAPlugin, and tracktion::engine::VolumeAndPanPlugin.
| void tracktion::engine::Plugin::applyToBufferWithAutomation | ( | const PluginRenderContext & | pc | ) |
Definition at line 654 of file tracktion_Plugin.cpp.
|
static |
Definition at line 830 of file tracktion_Plugin.cpp.
| void tracktion::engine::Plugin::baseClassDeinitialise | ( | ) |
Definition at line 493 of file tracktion_Plugin.cpp.
| void tracktion::engine::Plugin::baseClassInitialise | ( | const PluginInitialisationInfo & | info | ) |
Definition at line 447 of file tracktion_Plugin.cpp.
|
noexcept |
Definition at line 363 of file tracktion_Plugin.h.
Definition at line 189 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 281 of file tracktion_Plugin.h.
|
virtual |
Definition at line 283 of file tracktion_Plugin.h.
|
virtual |
Definition at line 284 of file tracktion_Plugin.h.
|
virtual |
Definition at line 282 of file tracktion_Plugin.h.
|
virtual |
Definition at line 285 of file tracktion_Plugin.h.
|
virtual |
Definition at line 286 of file tracktion_Plugin.h.
|
virtual |
Definition at line 209 of file tracktion_Plugin.cpp.
|
overridevirtual |
method from Selectable, that's been overridden here to also tell the edit that it's changed.
Reimplemented from tracktion::engine::Selectable.
Definition at line 413 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 378 of file tracktion_Plugin.h.
|
pure virtual |
Called after play stops to release resources.
Don't call this directly or the initialise count will become out of sync.
Implemented in tracktion::engine::ChorusPlugin, tracktion::engine::CompressorPlugin, tracktion::engine::DelayPlugin, tracktion::engine::EqualiserPlugin, tracktion::engine::FourOscPlugin, tracktion::engine::ImpulseResponsePlugin, tracktion::engine::LatencyPlugin, tracktion::engine::LowPassPlugin, tracktion::engine::MidiModifierPlugin, tracktion::engine::MidiPatchBayPlugin, tracktion::engine::PatchBayPlugin, 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::FreezePointPlugin, tracktion::engine::InsertPlugin, tracktion::engine::LevelMeterPlugin, tracktion::engine::RackInstance, tracktion::engine::TextPlugin, tracktion::engine::VCAPlugin, and tracktion::engine::VolumeAndPanPlugin.
|
virtual |
Attempts to delete this plugin, whether it's a master plugin, track plugin, etc.
This will call removeFromParent but also hide any automation parameters etc. being shown on tracks and hide plugin windows etc. Use this method if the plugin is being fully deleted from the Edit.
Reimplemented in tracktion::engine::ExternalPlugin.
Definition at line 509 of file tracktion_Plugin.cpp.
| Plugin::Ptr tracktion::engine::Plugin::findPluginThatFeedsIntoThis | ( | ) | const |
Definition at line 548 of file tracktion_Plugin.cpp.
| Plugin::Ptr tracktion::engine::Plugin::findPluginThatThisFeedsInto | ( | ) | const |
Definition at line 556 of file tracktion_Plugin.cpp.
|
overridevirtual |
Reimplemented from tracktion::engine::AutomatableEditItem.
Definition at line 922 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 313 of file tracktion_Plugin.cpp.
|
noexcept |
Returns the proportion of the current buffer size spent processing this plugin.
Definition at line 223 of file tracktion_Plugin.h.
|
virtual |
A unique string to idenitify plugin independant of install location.
Reimplemented in tracktion::engine::ExternalPlugin.
Definition at line 144 of file tracktion_Plugin.h.
| juce::StringArray tracktion::engine::Plugin::getInputChannelNames | ( | ) |
Definition at line 318 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 242 of file tracktion_Plugin.h.
|
staticprotected |
Definition at line 890 of file tracktion_Plugin.cpp.
|
staticprotected |
Definition at line 899 of file tracktion_Plugin.cpp.
| Plugin::Ptr tracktion::engine::Plugin::getMirroredPlugin | ( | ) | const |
Definition at line 771 of file tracktion_Plugin.cpp.
|
overridepure virtual |
The name of the type, e.g.
"Compressor"
Implements tracktion::engine::EditItem.
Implemented in tracktion::engine::ChorusPlugin, tracktion::engine::CompressorPlugin, tracktion::engine::DelayPlugin, tracktion::engine::EqualiserPlugin, tracktion::engine::FourOscPlugin, tracktion::engine::ImpulseResponsePlugin, tracktion::engine::LatencyPlugin, tracktion::engine::LowPassPlugin, tracktion::engine::MidiModifierPlugin, tracktion::engine::MidiPatchBayPlugin, tracktion::engine::PatchBayPlugin, 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::FreezePointPlugin, tracktion::engine::InsertPlugin, tracktion::engine::LevelMeterPlugin, tracktion::engine::RackInstance, tracktion::engine::TextPlugin, tracktion::engine::VCAPlugin, and tracktion::engine::VolumeAndPanPlugin.
This must return the number of output channels that the plugin will produce, given a number of input channels.
E.g. some might be able to do mono, so will return 1 if the input is 1, 2 if it is 2, etc.
The default impl just returns the number of items that getChannelNames() returns.
Reimplemented in tracktion::engine::ChorusPlugin, tracktion::engine::CompressorPlugin, tracktion::engine::DelayPlugin, tracktion::engine::EqualiserPlugin, tracktion::engine::FourOscPlugin, tracktion::engine::LowPassPlugin, tracktion::engine::PhaserPlugin, tracktion::engine::PitchShiftPlugin, tracktion::engine::ReverbPlugin, tracktion::engine::SamplerPlugin, tracktion::engine::ToneGeneratorPlugin, tracktion::engine::AuxReturnPlugin, tracktion::engine::AuxSendPlugin, tracktion::engine::FreezePointPlugin, tracktion::engine::LevelMeterPlugin, tracktion::engine::TextPlugin, tracktion::engine::ExternalPlugin, tracktion::engine::VolumeAndPanPlugin, tracktion::engine::MidiModifierPlugin, tracktion::engine::MidiPatchBayPlugin, and tracktion::engine::RackInstance.
Definition at line 140 of file tracktion_Plugin.cpp.
| int tracktion::engine::Plugin::getNumWires | ( | ) | const |
Definition at line 147 of file tracktion_Plugin.cpp.
| Clip * tracktion::engine::Plugin::getOwnerClip | ( | ) | const |
Returns the clip if that's what it's in.
Definition at line 527 of file tracktion_Plugin.cpp.
| PluginList * tracktion::engine::Plugin::getOwnerList | ( | ) | const |
Definition at line 564 of file tracktion_Plugin.cpp.
| RackType::Ptr tracktion::engine::Plugin::getOwnerRackType | ( | ) | const |
Definition at line 362 of file tracktion_Plugin.cpp.
| Track * tracktion::engine::Plugin::getOwnerTrack | ( | ) | const |
Returns the track if it's a track or clip plugin.
Definition at line 522 of file tracktion_Plugin.cpp.
| AutomatableParameter::Ptr tracktion::engine::Plugin::getQuickControlParameter | ( | ) | const |
Definition at line 589 of file tracktion_Plugin.cpp.
|
overridevirtual |
Implements tracktion::engine::Exportable.
Definition at line 716 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 141 of file tracktion_Plugin.h.
| EditItemID tracktion::engine::Plugin::getSidechainSourceID | ( | ) | const |
Definition at line 369 of file tracktion_Plugin.h.
| juce::String tracktion::engine::Plugin::getSidechainSourceName | ( | ) |
Definition at line 304 of file tracktion_Plugin.cpp.
| juce::StringArray tracktion::engine::Plugin::getSidechainSourceNames | ( | bool | allowNone | ) |
Definition at line 221 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 243 of file tracktion_Plugin.h.
|
virtual |
default returns the name, others can return special stuff if needed
Reimplemented in tracktion::engine::EqualiserPlugin, tracktion::engine::ExternalPlugin, tracktion::engine::FreezePointPlugin, tracktion::engine::LevelMeterPlugin, and tracktion::engine::RackInstance.
Definition at line 437 of file tracktion_Plugin.cpp.
|
noexcept |
Definition at line 326 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 140 of file tracktion_Plugin.h.
| Plugin::Wire * tracktion::engine::Plugin::getWire | ( | int | index | ) | const |
Definition at line 155 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 300 of file tracktion_Plugin.h.
| void tracktion::engine::Plugin::guessSidechainRouting | ( | ) |
Definition at line 266 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 710 of file tracktion_Plugin.cpp.
|
virtual |
If it's a synth that names its notes, this can return the name it uses for this note 0-127.
Midi channel is 1-16
Reimplemented in tracktion::engine::SamplerPlugin, and tracktion::engine::ExternalPlugin.
Definition at line 698 of file tracktion_Plugin.cpp.
|
virtual |
Returns the name for a midi program, if there is one.
programNum = 0 to 127.
Reimplemented in tracktion::engine::ExternalPlugin.
Definition at line 705 of file tracktion_Plugin.cpp.
| void tracktion::engine::Plugin::hideWindowForShutdown | ( | ) |
Definition at line 911 of file tracktion_Plugin.cpp.
|
pure virtual |
Gives the plugin a chance to set itself up before being played.
This won't be called concurrently with the process thread.
The sample rate and the average block size - although the blocks won't always be the same, and may be bigger.
Don't call this directly or the initialise count will become out of sync.
Implemented in tracktion::engine::ChorusPlugin, tracktion::engine::CompressorPlugin, tracktion::engine::DelayPlugin, tracktion::engine::EqualiserPlugin, tracktion::engine::FourOscPlugin, tracktion::engine::ImpulseResponsePlugin, tracktion::engine::LatencyPlugin, tracktion::engine::LowPassPlugin, tracktion::engine::MidiModifierPlugin, tracktion::engine::MidiPatchBayPlugin, tracktion::engine::PatchBayPlugin, 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::FreezePointPlugin, tracktion::engine::InsertPlugin, tracktion::engine::LevelMeterPlugin, tracktion::engine::RackInstance, tracktion::engine::TextPlugin, tracktion::engine::VCAPlugin, and tracktion::engine::VolumeAndPanPlugin.
|
virtual |
Gives the plugin a chance to do extra initialisation when it's been added to an edit.
Reimplemented in tracktion::engine::ExternalPlugin, and tracktion::engine::FreezePointPlugin.
Definition at line 336 of file tracktion_Plugin.cpp.
|
virtual |
Tells the plugin that the audio graph has changed but the plugin isn't being re-initialised - i.e.
it's being re-used, maybe by being moved to a different track, etc. This can be called concurrently whilst the plugin is being processed so implementations of it must be thread safe. [[ message_thread ]]
Reimplemented in tracktion::engine::AuxSendPlugin, tracktion::engine::InsertPlugin, tracktion::engine::LevelMeterPlugin, and tracktion::engine::VolumeAndPanPlugin.
Definition at line 183 of file tracktion_Plugin.h.
| bool tracktion::engine::Plugin::isClipEffectPlugin | ( | ) | const |
Definition at line 370 of file tracktion_Plugin.cpp.
|
virtual |
Plugins can be disabled to avoid them crashing Edits.
Reimplemented in tracktion::engine::ExternalPlugin.
Definition at line 293 of file tracktion_Plugin.h.
|
noexcept |
Definition at line 152 of file tracktion_Plugin.h.
|
noexcept |
Definition at line 156 of file tracktion_Plugin.h.
| bool tracktion::engine::Plugin::isInitialising | ( | ) | const |
Definition at line 185 of file tracktion_Plugin.h.
| bool tracktion::engine::Plugin::isInRack | ( | ) | const |
Definition at line 357 of file tracktion_Plugin.cpp.
|
virtual |
for things like VSTs where the DLL is missing.
Reimplemented in tracktion::engine::ExternalPlugin.
Definition at line 290 of file tracktion_Plugin.h.
|
noexcept |
Definition at line 161 of file tracktion_Plugin.h.
|
virtual |
Definition at line 241 of file tracktion_Plugin.h.
| void tracktion::engine::Plugin::makeConnection | ( | int | srcChannel, |
| int | dstChannel, | ||
| juce::UndoManager * | um | ||
| ) |
Definition at line 175 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 236 of file tracktion_Plugin.h.
| void tracktion::engine::Plugin::playStartedOrStopped | ( | ) |
called by the system to let the plugin manage its automation stuff
Definition at line 331 of file tracktion_Plugin.cpp.
|
virtual |
Called between successive rendering blocks.
Reimplemented in tracktion::engine::RackInstance.
Definition at line 212 of file tracktion_Plugin.h.
|
protectedvirtual |
Definition at line 916 of file tracktion_Plugin.cpp.
|
virtual |
Definition at line 235 of file tracktion_Plugin.h.
|
overridevirtual |
Implements tracktion::engine::Exportable.
Definition at line 717 of file tracktion_Plugin.cpp.
| void tracktion::engine::Plugin::removeFromParent | ( | ) |
Detaches the plugin from any parent it might be in.
This is a little more complicated than just removing its ValueTree from its parent one. Use this method if the plugin is to be inserted somewhere else in the Edit.
Definition at line 341 of file tracktion_Plugin.cpp.
|
virtual |
Should reset synth voices, tails, clear delay buffers, etc.
Reimplemented in tracktion::engine::DelayPlugin, tracktion::engine::FourOscPlugin, tracktion::engine::ImpulseResponsePlugin, tracktion::engine::ReverbPlugin, and tracktion::engine::ExternalPlugin.
Definition at line 442 of file tracktion_Plugin.cpp.
|
overridevirtual |
Called just before the selectable is about to be deleted so any subclasses should still be valid at this point.
Reimplemented from tracktion::engine::Selectable.
Definition at line 131 of file tracktion_Plugin.cpp.
|
virtual |
Enable/disable the plugin.
Reimplemented in tracktion::engine::ExternalPlugin.
Definition at line 421 of file tracktion_Plugin.cpp.
| void tracktion::engine::Plugin::setFrozen | ( | bool | shouldBeFrozen | ) |
This is a bit different to being enabled as when frozen a plugin can't be interacted with.
Definition at line 429 of file tracktion_Plugin.cpp.
| bool tracktion::engine::Plugin::setPluginToMirror | ( | const Plugin::Ptr & | newMaster | ) |
Definition at line 731 of file tracktion_Plugin.cpp.
| void tracktion::engine::Plugin::setProcessingEnabled | ( | bool | p | ) |
Enable/Disable processing.
If processing is disabled, plugin should minimize memory usage and release any resources possilbe
Definition at line 160 of file tracktion_Plugin.h.
| void tracktion::engine::Plugin::setQuickControlParameter | ( | AutomatableParameter * | param | ) |
Definition at line 646 of file tracktion_Plugin.cpp.
| void tracktion::engine::Plugin::setSidechainSourceByName | ( | const juce::String & | name | ) |
Definition at line 241 of file tracktion_Plugin.cpp.
| void tracktion::engine::Plugin::setSidechainSourceID | ( | EditItemID | newID | ) |
Definition at line 368 of file tracktion_Plugin.h.
|
virtualnoexcept |
Plugins can return false if they want to avoid the overhead of measuring the CPU usage.
It's a small overhead but with many tracks, the level meters and vol/pan plugins can make a difference.
Reimplemented in tracktion::engine::LevelMeterPlugin, and tracktion::engine::VolumeAndPanPlugin.
Definition at line 220 of file tracktion_Plugin.h.
| void tracktion::engine::Plugin::showWindowExplicitly | ( | ) |
Definition at line 906 of file tracktion_Plugin.cpp.
|
static |
Definition at line 856 of file tracktion_Plugin.cpp.
|
static |
Definition at line 872 of file tracktion_Plugin.cpp.
|
virtual |
Called when ProjectItem sources are re-assigned so you can reload from the new source.
Reimplemented in tracktion::engine::SamplerPlugin.
Definition at line 340 of file tracktion_Plugin.h.
|
virtual |
Definition at line 239 of file tracktion_Plugin.h.
|
virtual |
Definition at line 240 of file tracktion_Plugin.h.
|
virtual |
Track name or colour has changed.
Reimplemented in tracktion::engine::ExternalPlugin.
Definition at line 197 of file tracktion_Plugin.h.
|
virtual |
Definition at line 351 of file tracktion_Plugin.h.
|
overrideprotectedvirtual |
Implements tracktion::engine::ValueTreeAllEventListener.
Definition at line 383 of file tracktion_Plugin.cpp.
|
overrideprotectedvirtual |
Reimplemented from juce::ValueTree::Listener.
Definition at line 388 of file tracktion_Plugin.cpp.
|
overrideprotectedvirtual |
Reimplemented from juce::ValueTree::Listener.
Definition at line 396 of file tracktion_Plugin.cpp.
|
overrideprotectedvirtual |
Reimplemented from juce::ValueTree::Listener.
Definition at line 404 of file tracktion_Plugin.cpp.
|
overrideprotectedvirtual |
Reimplemented from juce::ValueTree::Listener.
Definition at line 375 of file tracktion_Plugin.cpp.
|
static |
Definition at line 835 of file tracktion_Plugin.cpp.
|
protected |
Definition at line 411 of file tracktion_Plugin.h.
|
protected |
Definition at line 405 of file tracktion_Plugin.h.
| Engine& tracktion::engine::Plugin::engine |
Definition at line 398 of file tracktion_Plugin.h.
|
protected |
Definition at line 406 of file tracktion_Plugin.h.
|
protected |
Definition at line 408 of file tracktion_Plugin.h.
|
protected |
Definition at line 406 of file tracktion_Plugin.h.
|
protected |
Definition at line 407 of file tracktion_Plugin.h.
|
protected |
Definition at line 410 of file tracktion_Plugin.h.
|
protected |
Definition at line 408 of file tracktion_Plugin.h.
| juce::ValueTree tracktion::engine::Plugin::state |
Definition at line 399 of file tracktion_Plugin.h.
| std::unique_ptr<WindowState> tracktion::engine::Plugin::windowState |
Definition at line 392 of file tracktion_Plugin.h.