TracktionEngine
|
#include <tracktion_RackType.h>
Classes | |
struct | WindowState |
Public Types | |
using | Ptr = juce::ReferenceCountedObjectPtr< RackType > |
![]() | |
using | WeakRef = juce::WeakReference< Selectable > |
Public Member Functions | |
RackType (Edit &, const juce::ValueTree &) | |
~RackType () override | |
juce::ValueTree | createStateCopy (bool includeAutomation) |
juce::Result | restoreStateFromValueTree (const juce::ValueTree &) |
void | registerInstance (RackInstance *, const PluginInitialisationInfo &) |
void | initialisePluginsIfNeeded (const PluginInitialisationInfo &) const |
void | deregisterInstance (RackInstance *) |
void | updateAutomatableParamPositions (TimePosition) |
double | getLatencySeconds (double sampleRate, int blockSize) |
juce::Array< Plugin * > | getPlugins () const |
bool | addPlugin (const Plugin::Ptr &, juce::Point< float > pos, bool canAutoConnect) |
Adds a plugin to the Rack optionally connecting it to the input and outputs. | |
Plugin * | getPluginForID (EditItemID) |
juce::Point< float > | getPluginPosition (const Plugin::Ptr &) const |
juce::Point< float > | getPluginPosition (int index) const |
void | setPluginPosition (int index, juce::Point< float > pos) |
void | flushStateToValueTree () |
juce::Array< const RackConnection * > | getConnections () const noexcept |
bool | addConnection (EditItemID source, int sourcePin, EditItemID dest, int destPin) |
bool | removeConnection (EditItemID source, int sourcePin, EditItemID dest, int destPin) |
bool | isConnectionLegal (EditItemID source, int sourcePin, EditItemID dest, int destPin) const |
juce::Array< EditItemID > | getPluginsWhichTakeInputFrom (EditItemID) const |
void | checkConnections () |
void | createInstanceForSideChain (Track &, const juce::BigInteger &channelMask, EditItemID pluginID, int pinIndex) |
juce::String | getName () const override |
juce::StringArray | getInputNames () const |
juce::StringArray | getOutputNames () const |
int | addInput (int index, const juce::String &name) |
int | addOutput (int index, const juce::String &name) |
void | removeInput (int index) |
void | removeOutput (int index) |
void | renameInput (int index, const juce::String &name) |
void | renameOutput (int index, const juce::String &name) |
bool | pasteClipboard () |
ModifierList & | getModifierList () const noexcept |
juce::UndoManager * | getUndoManager () const |
juce::String | getSelectableDescription () override |
Subclasses must return a description of what they are. | |
juce::StringArray | getAudioInputNamesWithChannels () const |
juce::StringArray | getAudioOutputNamesWithChannels () const |
juce::Array< WindowState * > | getWindowStates () const |
void | loadWindowPosition () |
void | saveWindowPosition () |
void | hideWindowForShutdown () |
![]() | |
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. | |
virtual void | selectableAboutToBeDeleted () |
Called just before the selectable is about to be deleted so any subclasses should still be valid at this point. | |
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 () |
![]() | |
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 Ptr | createTypeToWrapPlugins (const Plugin::Array &, Edit &) |
static bool | isPluginAllowed (const Plugin::Ptr &) |
static void | removeBrokenConnections (juce::ValueTree &, juce::UndoManager *) |
static RackType::Ptr | findRackTypeContaining (const Plugin &) |
static const char * | getRackPresetPrefix () noexcept |
![]() | |
static void | initialise () |
static bool | isSelectableValid (const Selectable *) noexcept |
checks whether this object has been deleted. | |
Public Attributes | |
juce::ValueTree | state |
juce::CachedValue< juce::String > | rackName |
![]() | |
Edit & | edit |
const EditItemID | itemID |
Every EditItem has an ID which is unique within the edit. | |
![]() | |
WeakRef::Master | masterReference |
![]() | |
Edit & | ownerEdit |
juce::ValueTree | parentStateForList |
using tracktion::engine::RackType::Ptr = juce::ReferenceCountedObjectPtr<RackType> |
tracktion::engine::RackType::RackType | ( | Edit & | , |
const juce::ValueTree & | |||
) |
|
override |
juce::ValueTree tracktion::engine::RackType::createStateCopy | ( | bool | includeAutomation | ) |
juce::Result tracktion::engine::RackType::restoreStateFromValueTree | ( | const juce::ValueTree & | ) |
|
static |
void tracktion::engine::RackType::registerInstance | ( | RackInstance * | , |
const PluginInitialisationInfo & | |||
) |
void tracktion::engine::RackType::initialisePluginsIfNeeded | ( | const PluginInitialisationInfo & | ) | const |
void tracktion::engine::RackType::deregisterInstance | ( | RackInstance * | ) |
void tracktion::engine::RackType::updateAutomatableParamPositions | ( | TimePosition | ) |
double tracktion::engine::RackType::getLatencySeconds | ( | double | sampleRate, |
int | blockSize | ||
) |
juce::Array< Plugin * > tracktion::engine::RackType::getPlugins | ( | ) | const |
|
static |
bool tracktion::engine::RackType::addPlugin | ( | const Plugin::Ptr & | , |
juce::Point< float > | pos, | ||
bool | canAutoConnect | ||
) |
Adds a plugin to the Rack optionally connecting it to the input and outputs.
Plugin * tracktion::engine::RackType::getPluginForID | ( | EditItemID | ) |
juce::Point< float > tracktion::engine::RackType::getPluginPosition | ( | const Plugin::Ptr & | ) | const |
juce::Point< float > tracktion::engine::RackType::getPluginPosition | ( | int | index | ) | const |
void tracktion::engine::RackType::setPluginPosition | ( | int | index, |
juce::Point< float > | pos | ||
) |
void tracktion::engine::RackType::flushStateToValueTree | ( | ) |
|
noexcept |
bool tracktion::engine::RackType::addConnection | ( | EditItemID | source, |
int | sourcePin, | ||
EditItemID | dest, | ||
int | destPin | ||
) |
bool tracktion::engine::RackType::removeConnection | ( | EditItemID | source, |
int | sourcePin, | ||
EditItemID | dest, | ||
int | destPin | ||
) |
bool tracktion::engine::RackType::isConnectionLegal | ( | EditItemID | source, |
int | sourcePin, | ||
EditItemID | dest, | ||
int | destPin | ||
) | const |
juce::Array< EditItemID > tracktion::engine::RackType::getPluginsWhichTakeInputFrom | ( | EditItemID | ) | const |
void tracktion::engine::RackType::checkConnections | ( | ) |
|
static |
void tracktion::engine::RackType::createInstanceForSideChain | ( | Track & | , |
const juce::BigInteger & | channelMask, | ||
EditItemID | pluginID, | ||
int | pinIndex | ||
) |
|
overridevirtual |
Implements tracktion::engine::EditItem.
References rackName.
juce::StringArray tracktion::engine::RackType::getInputNames | ( | ) | const |
juce::StringArray tracktion::engine::RackType::getOutputNames | ( | ) | const |
int tracktion::engine::RackType::addInput | ( | int | index, |
const juce::String & | name | ||
) |
int tracktion::engine::RackType::addOutput | ( | int | index, |
const juce::String & | name | ||
) |
void tracktion::engine::RackType::removeInput | ( | int | index | ) |
void tracktion::engine::RackType::removeOutput | ( | int | index | ) |
void tracktion::engine::RackType::renameInput | ( | int | index, |
const juce::String & | name | ||
) |
void tracktion::engine::RackType::renameOutput | ( | int | index, |
const juce::String & | name | ||
) |
bool tracktion::engine::RackType::pasteClipboard | ( | ) |
|
noexcept |
juce::UndoManager * tracktion::engine::RackType::getUndoManager | ( | ) | const |
|
overridevirtual |
Subclasses must return a description of what they are.
Implements tracktion::engine::Selectable.
juce::StringArray tracktion::engine::RackType::getAudioInputNamesWithChannels | ( | ) | const |
juce::StringArray tracktion::engine::RackType::getAudioOutputNamesWithChannels | ( | ) | const |
|
static |
|
staticnoexcept |
juce::Array< WindowState * > tracktion::engine::RackType::getWindowStates | ( | ) | const |
void tracktion::engine::RackType::loadWindowPosition | ( | ) |
void tracktion::engine::RackType::saveWindowPosition | ( | ) |
void tracktion::engine::RackType::hideWindowForShutdown | ( | ) |
juce::ValueTree tracktion::engine::RackType::state |
juce::CachedValue<juce::String> tracktion::engine::RackType::rackName |
Referenced by getName().