|
tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications
« « « Anklang Documentation |
Public Types | |
| using | Ptr = juce::ReferenceCountedObjectPtr< FolderTrack > |
Public Types inherited from tracktion::engine::Track | |
| enum | FreezeType { groupFreeze , individualFreeze , anyFreeze } |
| Determines the type of freeze. More... | |
| enum | MuteAndSoloLightState { soloLit , soloFlashing , soloIsolate , muteLit , muteFlashing } |
| Determines the status of the mute and solo indicators. More... | |
| using | Ptr = juce::ReferenceCountedObjectPtr< Track > |
| using | Array = juce::ReferenceCountedArray< Track > |
Public Types inherited from tracktion::engine::Selectable | |
| using | WeakRef = juce::WeakReference< Selectable > |
Public Member Functions | |
| FolderTrack (Edit &, const juce::ValueTree &) | |
| juce::String | getSelectableDescription () override |
| Subclasses must return a description of what they are. | |
| bool | isFolderTrack () const override |
| Returns true if this is a FolderTrack. | |
| void | initialise () override |
| Initialises the Track. | |
| void | sanityCheckName () override |
| Sub-classes can impliment this to avoid certain characters being used in a name. | |
| juce::String | getName () const override |
| int | getFolderTrackNumber () const noexcept |
| bool | isSubmixFolder () const |
| TrackOutput * | getOutput () const noexcept |
| Returns the output if this track is a submix folder. | |
| juce::Array< Track * > | getInputTracks () const override |
| Should return any tracks which feed into this track. | |
| bool | isFrozen (FreezeType) const override |
| Returns true if this track is frozen using the given type. | |
| float | getVcaDb (TimePosition) |
| VCAPlugin * | getVCAPlugin () |
| VolumeAndPanPlugin * | getVolumePlugin () |
| void | generateCollectionClips (SelectionManager &) |
| CollectionClip * | getCollectionClip (int index) const noexcept |
| int | getNumCollectionClips () const noexcept |
| int | indexOfCollectionClip (CollectionClip *) const |
| int | getIndexOfNextCollectionClipAt (TimePosition) |
| CollectionClip * | getNextCollectionClipAt (TimePosition) |
| bool | contains (CollectionClip *) const |
| int | getNumTrackItems () const override |
| Should return the number of TrackItem[s] on this Track. | |
| TrackItem * | getTrackItem (int idx) const override |
| Should return the TrackItem at the given index. | |
| int | indexOfTrackItem (TrackItem *) const override |
| Should return the index of the given TrackItem. | |
| int | getIndexOfNextTrackItemAt (TimePosition) override |
| Should return the index of the TrackItem after this time. | |
| TrackItem * | getNextTrackItemAt (TimePosition) override |
| Should return the TrackItem after this time. | |
| bool | isMuted (bool includeMutingByDestination) const override |
| Returns true if this track is muted. | |
| bool | isSolo (bool includeIndirectSolo) const override |
| Returns true if this track is soloed. | |
| bool | isSoloIsolate (bool includeIndirectSolo) const override |
| Returns true if this track is solo isolated. | |
| void | setMute (bool) override |
| Subclasses should implement this to mute themselves. | |
| void | setSolo (bool) override |
| Subclasses should implement this to solo themselves. | |
| void | setSoloIsolate (bool) override |
| Subclasses should implement this to solo isolate themselves. | |
| void | setDirtyClips () |
| bool | canContainPlugin (Plugin *) const override |
| Returns true if this track can contain a specific Plugin. | |
| bool | willAcceptPlugin (Plugin &) |
Public Member Functions inherited from tracktion::engine::Track | |
| Track (Edit &, const juce::ValueTree &, bool hasModifierList) | |
| Creates a track with a given state. | |
| ~Track () override | |
| Destructor. | |
| virtual void | flushStateToValueTree () |
| Flushes all plugin states on the track to the state object. | |
| void | refreshCurrentAutoParam () |
| Updates the current parameter bases on the set IDs. | |
| juce::String | getName () const override |
| Returns the name of the Track. | |
| void | setName (const juce::String &) |
| Sets the name of the Track. | |
| void | resetName () |
| Sets the name of the Track to an empty string. | |
| virtual bool | isAudioTrack () const |
| Returns true if this is an AudioTrack. | |
| virtual bool | isAutomationTrack () const |
| Returns true if this is an AutomationTrack. | |
| virtual bool | isMarkerTrack () const |
| Returns true if this is a MarkerTrack. | |
| virtual bool | isTempoTrack () const |
| Returns true if this is a TempoTrack. | |
| virtual bool | isChordTrack () const |
| Returns true if this is a ChordTrack. | |
| virtual bool | isArrangerTrack () const |
| Returns true if this is an ArrangerTrack. | |
| virtual bool | isMasterTrack () const |
| Returns true if this is a MasterTrack. | |
| bool | canContainMarkers () const |
| Returns true if this Track can contain MarkerClip[s]. | |
| bool | canContainMIDI () const |
| Returns true if this Track can contain MidiClip[s]. | |
| bool | canContainAudio () const |
| Returns true if this Track can contain WaveAudioClip[s]. | |
| bool | canContainEditClips () const |
| Returns true if this Track can contain EditClip[s]. | |
| bool | canContainPlugins () const |
| Returns true if this Track can contain Plugin[s]. | |
| bool | isMovable () const |
| Returns true if this Track is movable. | |
| bool | acceptsInput () const |
| Returns true if this track can have inputs assigned to it. | |
| bool | createsOutput () const |
| Returns true if this track creates audible output. | |
| bool | wantsAutomation () const |
| Returns true if this track can show automation. | |
| virtual void | setFrozen (bool, FreezeType) |
| Attempts to freeze or unfreeze the track using a given FreezeType. | |
| bool | isHidden () const |
| Returns true if this track should be hidden from view. | |
| void | setHidden (bool h) |
| Sets whether this track should be hidden from view. | |
| bool | isProcessing (bool includeParents) const |
| Returns true if this track should be included in playback. | |
| void | setProcessing (bool p) |
| Sets whether this track should be included in playback. | |
| virtual bool | processAudioNodesWhileMuted () const |
| Subclasses can override this to ensure track contents are still played even when the track is muted. | |
| juce::Array< Track * > | getAllSubTracks (bool recursive) const |
| Returns all nested tracks. | |
| juce::Array< AudioTrack * > | getAllAudioSubTracks (bool recursive) const |
| Returns all nested AudioTrack[s]. | |
| TrackList * | getSubTrackList () const |
| Returns the TrackList if this Track has any sub-tracks. | |
| bool | hasSubTracks () const |
| Returns true if this track has any subtracks. | |
| virtual Clip * | findClipForID (EditItemID) const |
| Returns a clip one with a matching ID can be found on this Track. | |
| Track * | getSiblingTrack (int delta, bool keepWithinSameParent) const |
| Returns a sibling Track to this one. | |
| virtual void | insertSpaceIntoTrack (TimePosition, TimeDuration) |
| Should insert empty space in to the track, shuffling down any items after the time. | |
| juce::ValueTree | getParentTrackTree () const |
| Returns the state of the parent Track. | |
| Track * | getParentTrack () const |
| Returns the parent Track if this is a nested track. | |
| FolderTrack * | getParentFolderTrack () const |
| Returns the parent FolderTrack if this is nested in one. | |
| bool | isAChildOf (const Track &possibleParent) const |
| Tests whether this is a child of a given Track. | |
| bool | isPartOfSubmix () const |
| Tests whether this nested within a submix FolderTrack. | |
| int | getIndexInEditTrackList () const |
| Returns the index of this track in a flat list of tracks contained in an Edit. | |
| int | getTrackDepth () const |
| Returns the number of parents within which this track is nested. | |
| MuteAndSoloLightState | getMuteAndSoloLightState () const |
| Returns the mute a solo status. | |
| bool | shouldBePlayed () const noexcept |
| Tests whether this track should be audible in the playback graph i.e. | |
| void | updateAudibility (bool areAnyTracksSolo) |
| Updates the audibility state of the Track. | |
| juce::Array< AutomatableParameter * > | getAllAutomatableParams () const |
| Returns all the parameters for this track's Plugin[s] and Modifier[s]. | |
| void | visitAllAutomatableParams (const std::function< void(AutomatableParameter &)> &) const |
| Visits all the parameters for this track's Plugin[s] and Modifier[s]. | |
| AutomatableParameter * | getCurrentlyShownAutoParam () const noexcept |
| Returns the parameter whos curve should be shown on this Track. | |
| void | setCurrentlyShownAutoParam (const AutomatableParameter::Ptr &) |
| Sets a parameter to display on this Track. | |
| void | hideAutomatableParametersForSource (EditItemID pluginOrParameterID) |
| Hides a shown parameter if it matches the given ID. | |
| virtual bool | containsPlugin (const Plugin *) const |
| Tests whether this Track or a clip on it contains the given plugin. | |
| bool | hasFreezePointPlugin () const |
| Tests whether this Track contains a FreezePointPlugin. | |
| juce::Array< AutomatableEditItem * > | getAllAutomatableEditItems () const |
| Returns all AutomatableEditItem[s] on this Track. | |
| virtual Plugin::Array | getAllPlugins () const |
| Returns all pugins on this Track. | |
| virtual void | sendMirrorUpdateToAllPlugins (Plugin &changedPlugin) const |
| Sends a message to all plugins that the given plugin has changed. | |
| void | flipAllPluginsEnablement () |
| Toggles the Plugin::isEnabled state for all Plugin[s] on this Track. | |
| ModifierList * | getModifierList () const |
| Returns the ModifierList for this track, if it has one. | |
| void | setColour (juce::Colour newColour) |
| Sets a colour for this track to use. | |
| juce::Colour | getColour () const |
| Returns the the of this. | |
| bool | canShowImage () const |
| Tests whether this Track can show an image. | |
| void | setTrackImage (const juce::String &idOrData) |
| Sets some image data to use. | |
| juce::String | getTrackImage () const |
| Returns previously set image data. | |
| bool | imageHasChanged () |
| Tests and resets a flag internally kept when the image changes. | |
| void | setTags (const juce::StringArray &) |
| Sets an array of Strings to use as tags. | |
| juce::String | getTags () const |
| Returns the tags as a pipe-separated single String. | |
| const juce::StringArray & | getTagsArray () const noexcept |
| Returns the array of tags. | |
Public Member Functions inherited from tracktion::engine::EditItem | |
| EditItem (EditItemID, Edit &) | |
Public Member Functions inherited from tracktion::engine::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 () |
Public Member Functions inherited from juce::ReferenceCountedObject | |
| void | incReferenceCount () noexcept |
| void | decReferenceCount () noexcept |
| bool | decReferenceCountWithoutDeleting () noexcept |
| int | getReferenceCount () const noexcept |
Friends | |
| class | Edit |
Additional Inherited Members | |
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. | |
Public Attributes inherited from tracktion::engine::Track | |
| juce::ValueTree | state |
| The state of this Track. | |
| PluginList | pluginList |
| The Track's PluginList. | |
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::Selectable | |
| WeakRef::Master | masterReference |
Static Public Attributes inherited from tracktion::engine::Track | |
| static const int | minTrackHeightForDetail |
| The minimim height to show track contents at. | |
| static const int | trackHeightForEditor |
| The height at which inline editors should be shown. | |
| static const int | frozenTrackHeight |
| The height to show group frozen tracks. | |
Protected Member Functions inherited from tracktion::engine::Track | |
| void | valueTreePropertyChanged (juce::ValueTree &, const juce::Identifier &) override |
| void | valueTreeChildAdded (juce::ValueTree &, juce::ValueTree &) override |
| void | valueTreeChildRemoved (juce::ValueTree &, juce::ValueTree &, int) override |
| void | valueTreeChildOrderChanged (juce::ValueTree &, int, int) override |
| void | valueTreeParentChanged (juce::ValueTree &) override |
| void | handleAsyncUpdate () override |
| virtual bool | isTrackAudible (bool areAnyTracksSolo) const |
| Returns whether this Track should be audible. | |
Protected Member Functions inherited from juce::ReferenceCountedObject | |
| ReferenceCountedObject (const ReferenceCountedObject &) noexcept | |
| ReferenceCountedObject (ReferenceCountedObject &&) noexcept | |
| ReferenceCountedObject & | operator= (const ReferenceCountedObject &) noexcept |
| ReferenceCountedObject & | operator= (ReferenceCountedObject &&) noexcept |
| void | resetReferenceCount () noexcept |
Protected Member Functions inherited from juce::ValueTree::Listener | |
| virtual void | valueTreeRedirected (ValueTree &treeWhichHasBeenChanged) |
Protected Member Functions inherited from juce::AsyncUpdater | |
| void | triggerAsyncUpdate () |
| void | cancelPendingUpdate () noexcept |
| void | handleUpdateNowIfNeeded () |
| bool | isUpdatePending () const noexcept |
Definition at line 15 of file tracktion_FolderTrack.h.
Definition at line 21 of file tracktion_FolderTrack.h.
| tracktion::engine::FolderTrack::FolderTrack | ( | Edit & | ed, |
| const juce::ValueTree & | v | ||
| ) |
Definition at line 14 of file tracktion_FolderTrack.cpp.
|
override |
Definition at line 24 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Returns true if this track can contain a specific Plugin.
Subclasses can override this to avoid specific plugins such as VCAPlugin[s] on AudioTrack[s].
Implements tracktion::engine::Track.
Definition at line 468 of file tracktion_FolderTrack.cpp.
| bool tracktion::engine::FolderTrack::contains | ( | CollectionClip * | clip | ) | const |
Definition at line 414 of file tracktion_FolderTrack.cpp.
| void tracktion::engine::FolderTrack::generateCollectionClips | ( | SelectionManager & | sm | ) |
Definition at line 238 of file tracktion_FolderTrack.cpp.
|
noexcept |
Definition at line 389 of file tracktion_FolderTrack.cpp.
|
noexcept |
Definition at line 74 of file tracktion_FolderTrack.cpp.
| int tracktion::engine::FolderTrack::getIndexOfNextCollectionClipAt | ( | TimePosition | time | ) |
Definition at line 404 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Should return the index of the TrackItem after this time.
Reimplemented from tracktion::engine::Track.
Definition at line 429 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Should return any tracks which feed into this track.
Reimplemented from tracktion::engine::Track.
Definition at line 113 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Implements tracktion::engine::EditItem.
Definition at line 63 of file tracktion_FolderTrack.cpp.
| CollectionClip * tracktion::engine::FolderTrack::getNextCollectionClipAt | ( | TimePosition | time | ) |
Definition at line 409 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Should return the TrackItem after this time.
Reimplemented from tracktion::engine::Track.
Definition at line 439 of file tracktion_FolderTrack.cpp.
|
noexcept |
Definition at line 394 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Should return the number of TrackItem[s] on this Track.
Reimplemented from tracktion::engine::Track.
Definition at line 424 of file tracktion_FolderTrack.cpp.
|
noexcept |
Returns the output if this track is a submix folder.
Definition at line 101 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Subclasses must return a description of what they are.
Implements tracktion::engine::Selectable.
Definition at line 35 of file tracktion_FolderTrack.cpp.
Should return the TrackItem at the given index.
Reimplemented from tracktion::engine::Track.
Definition at line 434 of file tracktion_FolderTrack.cpp.
| float tracktion::engine::FolderTrack::getVcaDb | ( | TimePosition | time | ) |
Definition at line 218 of file tracktion_FolderTrack.cpp.
| VCAPlugin * tracktion::engine::FolderTrack::getVCAPlugin | ( | ) |
Definition at line 444 of file tracktion_FolderTrack.cpp.
| VolumeAndPanPlugin * tracktion::engine::FolderTrack::getVolumePlugin | ( | ) |
Definition at line 445 of file tracktion_FolderTrack.cpp.
| int tracktion::engine::FolderTrack::indexOfCollectionClip | ( | CollectionClip * | c | ) | const |
Definition at line 399 of file tracktion_FolderTrack.cpp.
Should return the index of the given TrackItem.
Reimplemented from tracktion::engine::Track.
Definition at line 419 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Initialises the Track.
You shouldn't need to call this directly, it will be called by the track creation methods.
Reimplemented from tracktion::engine::Track.
Definition at line 29 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Returns true if this is a FolderTrack.
Reimplemented from tracktion::engine::Track.
Definition at line 40 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Returns true if this track is frozen using the given type.
Reimplemented from tracktion::engine::Track.
Definition at line 455 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Returns true if this track is muted.
| includeMutingByDestination | If this is true, this will retrn true if any tracks this feeds in to are muted. |
Reimplemented from tracktion::engine::Track.
Definition at line 130 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Returns true if this track is soloed.
| includeIndirectSolo | If this is true, this will retrn true if any tracks this feeds in to are soloed. |
Reimplemented from tracktion::engine::Track.
Definition at line 142 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Returns true if this track is solo isolated.
| includeIndirectSolo | If this is true, this will retrn true if any tracks this feeds in to are solo isolated. |
Reimplemented from tracktion::engine::Track.
Definition at line 180 of file tracktion_FolderTrack.cpp.
| bool tracktion::engine::FolderTrack::isSubmixFolder | ( | ) | const |
Definition at line 92 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Sub-classes can impliment this to avoid certain characters being used in a name.
Reimplemented from tracktion::engine::Track.
Definition at line 45 of file tracktion_FolderTrack.cpp.
| void tracktion::engine::FolderTrack::setDirtyClips | ( | ) |
Definition at line 447 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Subclasses should implement this to mute themselves.
Reimplemented from tracktion::engine::Track.
Definition at line 490 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Subclasses should implement this to solo themselves.
Reimplemented from tracktion::engine::Track.
Definition at line 491 of file tracktion_FolderTrack.cpp.
|
overridevirtual |
Subclasses should implement this to solo isolate themselves.
Reimplemented from tracktion::engine::Track.
Definition at line 492 of file tracktion_FolderTrack.cpp.
| bool tracktion::engine::FolderTrack::willAcceptPlugin | ( | Plugin & | p | ) |
Definition at line 473 of file tracktion_FolderTrack.cpp.
|
friend |
Definition at line 83 of file tracktion_FolderTrack.h.