TracktionEngine
Loading...
Searching...
No Matches
Classes | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
engine::AutomatableEditItem Class Reference

Base class for elements that have some kind of automatable parameters. More...

#include <tracktion_AutomatableEditItem.h>

Inheritance diagram for engine::AutomatableEditItem:

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 &paramID) const
 
void visitAllAutomatableParams (const std::function< void(AutomatableParameter &)> &visit) const
 
void deleteParameter (AutomatableParameter *)
 
void deleteAutomatableParameters ()
 
int indexOfAutomatableParameter (const AutomatableParameter::Ptr &) const
 
AutomatableParameterTreegetParameterTree () const
 
juce::ReferenceCountedArray< AutomatableParametergetFlattenedParameterTree () 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 resetRecordingStatus ()
 Marks the end of an automation recording stream.
 
void updateStreamIterators ()
 
void addActiveParameter (const AutomatableParameter &)
 
void removeActiveParameter (const AutomatableParameter &)
 
bool isActiveParameter (AutomatableParameter &)
 
- Public Member Functions inherited from engine::EditItem
 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
 
- Public Attributes inherited from engine::EditItem
Editedit
 
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.
 

Detailed Description

Base class for elements that have some kind of automatable parameters.

Constructor & Destructor Documentation

◆ AutomatableEditItem()

engine::AutomatableEditItem::AutomatableEditItem ( Edit ,
const juce::ValueTree &   
)

◆ ~AutomatableEditItem()

engine::AutomatableEditItem::~AutomatableEditItem ( )
override

Member Function Documentation

◆ flushPluginStateToValueTree()

virtual void engine::AutomatableEditItem::flushPluginStateToValueTree ( )
virtual

◆ restorePluginStateFromValueTree()

virtual void engine::AutomatableEditItem::restorePluginStateFromValueTree ( const juce::ValueTree &  )
virtual

◆ getAutomatableParameters()

juce::Array< AutomatableParameter * > engine::AutomatableEditItem::getAutomatableParameters ( ) const

◆ getNumAutomatableParameters()

int engine::AutomatableEditItem::getNumAutomatableParameters ( ) const

◆ getAutomatableParameter()

AutomatableParameter::Ptr engine::AutomatableEditItem::getAutomatableParameter ( int  index) const

◆ getAutomatableParameterByID()

AutomatableParameter::Ptr engine::AutomatableEditItem::getAutomatableParameterByID ( const juce::String &  paramID) const

◆ visitAllAutomatableParams()

void engine::AutomatableEditItem::visitAllAutomatableParams ( const std::function< void(AutomatableParameter &)> &  visit) const

◆ deleteParameter()

void engine::AutomatableEditItem::deleteParameter ( AutomatableParameter )

◆ deleteAutomatableParameters()

void engine::AutomatableEditItem::deleteAutomatableParameters ( )

◆ indexOfAutomatableParameter()

int engine::AutomatableEditItem::indexOfAutomatableParameter ( const AutomatableParameter::Ptr ) const

◆ getParameterTree()

AutomatableParameterTree & engine::AutomatableEditItem::getParameterTree ( ) const

◆ getFlattenedParameterTree()

juce::ReferenceCountedArray< AutomatableParameter > engine::AutomatableEditItem::getFlattenedParameterTree ( ) const

◆ addParameterListChangeListener()

void engine::AutomatableEditItem::addParameterListChangeListener ( ParameterListChangeListener )

◆ removeParameterListChangeListener()

void engine::AutomatableEditItem::removeParameterListChangeListener ( ParameterListChangeListener )

◆ isAutomationNeeded()

bool engine::AutomatableEditItem::isAutomationNeeded ( ) const
noexcept

◆ setAutomatableParamPosition()

void engine::AutomatableEditItem::setAutomatableParamPosition ( TimePosition  )

◆ isBeingActivelyPlayed()

bool engine::AutomatableEditItem::isBeingActivelyPlayed ( ) const

◆ updateAutomatableParamPosition()

virtual void engine::AutomatableEditItem::updateAutomatableParamPosition ( TimePosition  )
virtual

Updates all the auto params to their positions at this time.

[[ message_thread ]]

Reimplemented in engine::RackInstance.

◆ updateParameterStreams()

void 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 but is called automatically by the audio graph so shouldn't really be called manually.

◆ resetRecordingStatus()

void engine::AutomatableEditItem::resetRecordingStatus ( )

Marks the end of an automation recording stream.

Call this when play stops or starts.

◆ updateStreamIterators()

void engine::AutomatableEditItem::updateStreamIterators ( )

.

◆ addActiveParameter()

void engine::AutomatableEditItem::addActiveParameter ( const AutomatableParameter )

.

◆ removeActiveParameter()

void engine::AutomatableEditItem::removeActiveParameter ( const AutomatableParameter )

.

◆ isActiveParameter()

bool engine::AutomatableEditItem::isActiveParameter ( AutomatableParameter )

. Testing only.

◆ buildParameterTree()

virtual void engine::AutomatableEditItem::buildParameterTree ( ) const
protectedvirtual

◆ updateLastPlaybackTime()

void engine::AutomatableEditItem::updateLastPlaybackTime ( )
protected

◆ clearParameterList()

void engine::AutomatableEditItem::clearParameterList ( )
protected

◆ addAutomatableParameter()

void engine::AutomatableEditItem::addAutomatableParameter ( const AutomatableParameter::Ptr )
protected

◆ rebuildParameterTree()

void engine::AutomatableEditItem::rebuildParameterTree ( )
protected

◆ saveChangedParametersToState()

void engine::AutomatableEditItem::saveChangedParametersToState ( )
protected

Saves the explicit value of any parameters that have deviated to the state.

◆ restoreChangedParametersFromState()

void engine::AutomatableEditItem::restoreChangedParametersFromState ( )
protected

Restores the value of any explicitly set parameters.

Member Data Documentation

◆ elementState

juce::ValueTree engine::AutomatableEditItem::elementState

◆ remapOnTempoChange

juce::CachedValue<bool> engine::AutomatableEditItem::remapOnTempoChange

The documentation for this class was generated from the following file: