tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
tracktion::engine::AutomationCurve Class Reference

Classes

struct  AutomationPoint
 

Public Member Functions

 AutomationCurve (const juce::ValueTree &parent, const juce::ValueTree &state)
 
 AutomationCurve (const AutomationCurve &)
 
void setState (const juce::ValueTree &)
 
void setParentState (const juce::ValueTree &)
 
void setOwnerParameter (AutomatableParameter *)
 
AutomatableParametergetOwnerParameter () const noexcept
 
int getNumPoints () const noexcept
 
TimeDuration getLength () const
 
juce::Range< floatgetValueLimits () const
 
AutomationPoint getPoint (int index) const noexcept
 
TimePosition getPointTime (int index) const noexcept
 
float getPointValue (int index) const noexcept
 
float getPointCurve (int index) const noexcept
 
CurvePoint getBezierHandle (int index) const noexcept
 
CurvePoint getBezierPoint (int index) const noexcept
 
void getBezierEnds (int index, double &x1, float &y1, double &x2, float &y2) const noexcept
 
float getValueAt (TimePosition) const
 
int indexBefore (TimePosition) const
 
int nextIndexAfter (TimePosition) const
 
int getNearestPoint (TimePosition &, float &v, double xToYRatio) const
 
int countPointsInRegion (TimeRange) const
 
void clear ()
 
int addPoint (TimePosition, float value, float curve)
 
void removePoint (int index)
 
void removePointsInRegion (TimeRange)
 
void removeRegionAndCloseGap (TimeRange)
 
void removeRedundantPoints (TimeRange)
 
juce::Array< AutomationPointgetPointsInRegion (TimeRange) const
 
int movePoint (int index, TimePosition, float newValue, bool removeInterveningPoints)
 
void setPointTime (int index, TimePosition)
 
void setPointValue (int index, float newValue)
 
void setCurveValue (int index, float newCurve)
 
void mergeOtherCurve (const AutomationCurve &source, TimeRange destRange, TimePosition sourceStartTime, TimeDuration fadeLength, bool leaveOpenAtStart, bool leaveOpenEnded)
 
void simplify (TimeRange, double minTimeDifference, float minValueDifference)
 
void rescaleAllTimes (double factor)
 
void addToAllTimes (TimeDuration delta)
 
void rescaleValues (float factor, TimeRange)
 
void addToValues (float valueDelta, TimeRange)
 

Static Public Member Functions

static double getBezierXfromT (double t, double x1, double xb, double x2)
 
static float getBezierYFromX (double t, double x1, float y1, double xb, float yb, double x2, float y2)
 
static void removeAllAutomationCurvesRecursively (const juce::ValueTree &)
 

Public Attributes

juce::ValueTree parentState
 
juce::ValueTree state
 

Detailed Description

Definition at line 14 of file tracktion_AutomationCurve.h.

Constructor & Destructor Documentation

◆ AutomationCurve() [1/3]

tracktion::engine::AutomationCurve::AutomationCurve ( )

Definition at line 14 of file tracktion_AutomationCurve.cpp.

◆ AutomationCurve() [2/3]

tracktion::engine::AutomationCurve::AutomationCurve ( const juce::ValueTree parent,
const juce::ValueTree state 
)

Definition at line 19 of file tracktion_AutomationCurve.cpp.

◆ AutomationCurve() [3/3]

tracktion::engine::AutomationCurve::AutomationCurve ( const AutomationCurve o)

Definition at line 26 of file tracktion_AutomationCurve.cpp.

◆ ~AutomationCurve()

tracktion::engine::AutomationCurve::~AutomationCurve ( )

Definition at line 31 of file tracktion_AutomationCurve.cpp.

Member Function Documentation

◆ addPoint()

int tracktion::engine::AutomationCurve::addPoint ( TimePosition  time,
float  value,
float  curve 
)

Definition at line 279 of file tracktion_AutomationCurve.cpp.

◆ addToAllTimes()

void tracktion::engine::AutomationCurve::addToAllTimes ( TimeDuration  delta)

Definition at line 630 of file tracktion_AutomationCurve.cpp.

◆ addToValues()

void tracktion::engine::AutomationCurve::addToValues ( float  valueDelta,
TimeRange  range 
)

Definition at line 654 of file tracktion_AutomationCurve.cpp.

◆ clear()

void tracktion::engine::AutomationCurve::clear ( )

Definition at line 391 of file tracktion_AutomationCurve.cpp.

◆ countPointsInRegion()

int tracktion::engine::AutomationCurve::countPointsInRegion ( TimeRange  range) const

Definition at line 505 of file tracktion_AutomationCurve.cpp.

◆ getBezierEnds()

void tracktion::engine::AutomationCurve::getBezierEnds ( int  index,
double x1,
float y1,
double x2,
float y2 
) const
noexcept

Definition at line 785 of file tracktion_AutomationCurve.cpp.

◆ getBezierHandle()

CurvePoint tracktion::engine::AutomationCurve::getBezierHandle ( int  index) const
noexcept

Definition at line 740 of file tracktion_AutomationCurve.cpp.

◆ getBezierPoint()

CurvePoint tracktion::engine::AutomationCurve::getBezierPoint ( int  index) const
noexcept

Definition at line 664 of file tracktion_AutomationCurve.cpp.

◆ getBezierXfromT()

double tracktion::engine::AutomationCurve::getBezierXfromT ( double  t,
double  x1,
double  xb,
double  x2 
)
static

Definition at line 698 of file tracktion_AutomationCurve.cpp.

◆ getBezierYFromX()

float tracktion::engine::AutomationCurve::getBezierYFromX ( double  t,
double  x1,
float  y1,
double  xb,
float  yb,
double  x2,
float  y2 
)
static

Definition at line 707 of file tracktion_AutomationCurve.cpp.

◆ getLength()

TimeDuration tracktion::engine::AutomationCurve::getLength ( ) const

Definition at line 116 of file tracktion_AutomationCurve.cpp.

◆ getNearestPoint()

int tracktion::engine::AutomationCurve::getNearestPoint ( TimePosition t,
float v,
double  xToYRatio 
) const

Definition at line 199 of file tracktion_AutomationCurve.cpp.

◆ getNumPoints()

int tracktion::engine::AutomationCurve::getNumPoints ( ) const
noexcept

Definition at line 61 of file tracktion_AutomationCurve.cpp.

◆ getOwnerParameter()

AutomatableParameter * tracktion::engine::AutomationCurve::getOwnerParameter ( ) const
noexcept

Definition at line 26 of file tracktion_AutomationCurve.h.

◆ getPoint()

AutomationCurve::AutomationPoint tracktion::engine::AutomationCurve::getPoint ( int  index) const
noexcept

Definition at line 66 of file tracktion_AutomationCurve.cpp.

◆ getPointCurve()

float tracktion::engine::AutomationCurve::getPointCurve ( int  index) const
noexcept

Definition at line 91 of file tracktion_AutomationCurve.cpp.

◆ getPointsInRegion()

juce::Array< AutomationCurve::AutomationPoint > tracktion::engine::AutomationCurve::getPointsInRegion ( TimeRange  range) const

Definition at line 396 of file tracktion_AutomationCurve.cpp.

◆ getPointTime()

TimePosition tracktion::engine::AutomationCurve::getPointTime ( int  index) const
noexcept

Definition at line 78 of file tracktion_AutomationCurve.cpp.

◆ getPointValue()

float tracktion::engine::AutomationCurve::getPointValue ( int  index) const
noexcept

Definition at line 83 of file tracktion_AutomationCurve.cpp.

◆ getValueAt()

float tracktion::engine::AutomationCurve::getValueAt ( TimePosition  timePos) const

Definition at line 122 of file tracktion_AutomationCurve.cpp.

◆ getValueLimits()

juce::Range< float > tracktion::engine::AutomationCurve::getValueLimits ( ) const

Definition at line 827 of file tracktion_AutomationCurve.cpp.

◆ indexBefore()

int tracktion::engine::AutomationCurve::indexBefore ( TimePosition  t) const

Definition at line 96 of file tracktion_AutomationCurve.cpp.

◆ mergeOtherCurve()

void tracktion::engine::AutomationCurve::mergeOtherCurve ( const AutomationCurve source,
TimeRange  destRange,
TimePosition  sourceStartTime,
TimeDuration  fadeLength,
bool  leaveOpenAtStart,
bool  leaveOpenEnded 
)

Definition at line 523 of file tracktion_AutomationCurve.cpp.

◆ movePoint()

int tracktion::engine::AutomationCurve::movePoint ( int  index,
TimePosition  newTime,
float  newValue,
bool  removeInterveningPoints 
)

Definition at line 322 of file tracktion_AutomationCurve.cpp.

◆ nextIndexAfter()

int tracktion::engine::AutomationCurve::nextIndexAfter ( TimePosition  t) const

Definition at line 105 of file tracktion_AutomationCurve.cpp.

◆ removeAllAutomationCurvesRecursively()

void tracktion::engine::AutomationCurve::removeAllAutomationCurvesRecursively ( const juce::ValueTree v)
static

Definition at line 816 of file tracktion_AutomationCurve.cpp.

◆ removePoint()

void tracktion::engine::AutomationCurve::removePoint ( int  index)

Definition at line 296 of file tracktion_AutomationCurve.cpp.

◆ removePointsInRegion()

void tracktion::engine::AutomationCurve::removePointsInRegion ( TimeRange  range)

Definition at line 413 of file tracktion_AutomationCurve.cpp.

◆ removeRedundantPoints()

void tracktion::engine::AutomationCurve::removeRedundantPoints ( TimeRange  range)

Definition at line 427 of file tracktion_AutomationCurve.cpp.

◆ removeRegionAndCloseGap()

void tracktion::engine::AutomationCurve::removeRegionAndCloseGap ( TimeRange  range)

Definition at line 474 of file tracktion_AutomationCurve.cpp.

◆ rescaleAllTimes()

void tracktion::engine::AutomationCurve::rescaleAllTimes ( double  factor)

Definition at line 637 of file tracktion_AutomationCurve.cpp.

◆ rescaleValues()

void tracktion::engine::AutomationCurve::rescaleValues ( float  factor,
TimeRange  range 
)

Definition at line 644 of file tracktion_AutomationCurve.cpp.

◆ setCurveValue()

void tracktion::engine::AutomationCurve::setCurveValue ( int  index,
float  newCurve 
)

Definition at line 320 of file tracktion_AutomationCurve.cpp.

◆ setOwnerParameter()

void tracktion::engine::AutomationCurve::setOwnerParameter ( AutomatableParameter p)

Definition at line 47 of file tracktion_AutomationCurve.cpp.

◆ setParentState()

void tracktion::engine::AutomationCurve::setParentState ( const juce::ValueTree v)

Definition at line 42 of file tracktion_AutomationCurve.cpp.

◆ setPointTime()

void tracktion::engine::AutomationCurve::setPointTime ( int  index,
TimePosition  newTime 
)

Definition at line 318 of file tracktion_AutomationCurve.cpp.

◆ setPointValue()

void tracktion::engine::AutomationCurve::setPointValue ( int  index,
float  newValue 
)

Definition at line 319 of file tracktion_AutomationCurve.cpp.

◆ setState()

void tracktion::engine::AutomationCurve::setState ( const juce::ValueTree v)

Definition at line 35 of file tracktion_AutomationCurve.cpp.

◆ simplify()

void tracktion::engine::AutomationCurve::simplify ( TimeRange  range,
double  minTimeDifference,
float  minValueDifference 
)

Definition at line 588 of file tracktion_AutomationCurve.cpp.

Member Data Documentation

◆ parentState

juce::ValueTree tracktion::engine::AutomationCurve::parentState

Definition at line 110 of file tracktion_AutomationCurve.h.

◆ state

juce::ValueTree tracktion::engine::AutomationCurve::state

Definition at line 110 of file tracktion_AutomationCurve.h.


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