TracktionEngine
|
#include <tracktion_AutomationCurve.h>
Classes | |
struct | AutomationPoint |
Public Member Functions | |
AutomationCurve () | |
AutomationCurve (const juce::ValueTree &parent, const juce::ValueTree &state) | |
AutomationCurve (const AutomationCurve &) | |
~AutomationCurve () | |
void | setState (const juce::ValueTree &) |
void | setParentState (const juce::ValueTree &) |
void | setOwnerParameter (AutomatableParameter *) |
AutomatableParameter * | getOwnerParameter () const noexcept |
int | getNumPoints () const noexcept |
TimeDuration | getLength () const |
juce::Range< float > | getValueLimits () 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< AutomationPoint > | getPointsInRegion (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::CachedValue< AtomicWrapper< bool > > | bypass |
If set to true, this curve is disabled, having no effect on the AutomatableParameter. | |
juce::ValueTree | parentState |
juce::ValueTree | state |
tracktion::engine::AutomationCurve::AutomationCurve | ( | ) |
tracktion::engine::AutomationCurve::AutomationCurve | ( | const juce::ValueTree & | parent, |
const juce::ValueTree & | state | ||
) |
tracktion::engine::AutomationCurve::AutomationCurve | ( | const AutomationCurve & | ) |
tracktion::engine::AutomationCurve::~AutomationCurve | ( | ) |
void tracktion::engine::AutomationCurve::setState | ( | const juce::ValueTree & | ) |
void tracktion::engine::AutomationCurve::setParentState | ( | const juce::ValueTree & | ) |
void tracktion::engine::AutomationCurve::setOwnerParameter | ( | AutomatableParameter * | ) |
|
noexcept |
|
noexcept |
TimeDuration tracktion::engine::AutomationCurve::getLength | ( | ) | const |
juce::Range< float > tracktion::engine::AutomationCurve::getValueLimits | ( | ) | const |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
float tracktion::engine::AutomationCurve::getValueAt | ( | TimePosition | ) | const |
int tracktion::engine::AutomationCurve::indexBefore | ( | TimePosition | ) | const |
int tracktion::engine::AutomationCurve::nextIndexAfter | ( | TimePosition | ) | const |
int tracktion::engine::AutomationCurve::getNearestPoint | ( | TimePosition & | , |
float & | v, | ||
double | xToYRatio | ||
) | const |
int tracktion::engine::AutomationCurve::countPointsInRegion | ( | TimeRange | ) | const |
void tracktion::engine::AutomationCurve::clear | ( | ) |
int tracktion::engine::AutomationCurve::addPoint | ( | TimePosition | , |
float | value, | ||
float | curve | ||
) |
void tracktion::engine::AutomationCurve::removePoint | ( | int | index | ) |
void tracktion::engine::AutomationCurve::removePointsInRegion | ( | TimeRange | ) |
void tracktion::engine::AutomationCurve::removeRegionAndCloseGap | ( | TimeRange | ) |
void tracktion::engine::AutomationCurve::removeRedundantPoints | ( | TimeRange | ) |
juce::Array< AutomationPoint > tracktion::engine::AutomationCurve::getPointsInRegion | ( | TimeRange | ) | const |
int tracktion::engine::AutomationCurve::movePoint | ( | int | index, |
TimePosition | , | ||
float | newValue, | ||
bool | removeInterveningPoints | ||
) |
void tracktion::engine::AutomationCurve::setPointTime | ( | int | index, |
TimePosition | |||
) |
void tracktion::engine::AutomationCurve::setPointValue | ( | int | index, |
float | newValue | ||
) |
void tracktion::engine::AutomationCurve::setCurveValue | ( | int | index, |
float | newCurve | ||
) |
void tracktion::engine::AutomationCurve::mergeOtherCurve | ( | const AutomationCurve & | source, |
TimeRange | destRange, | ||
TimePosition | sourceStartTime, | ||
TimeDuration | fadeLength, | ||
bool | leaveOpenAtStart, | ||
bool | leaveOpenEnded | ||
) |
void tracktion::engine::AutomationCurve::simplify | ( | TimeRange | , |
double | minTimeDifference, | ||
float | minValueDifference | ||
) |
void tracktion::engine::AutomationCurve::rescaleAllTimes | ( | double | factor | ) |
void tracktion::engine::AutomationCurve::addToAllTimes | ( | TimeDuration | delta | ) |
void tracktion::engine::AutomationCurve::rescaleValues | ( | float | factor, |
TimeRange | |||
) |
void tracktion::engine::AutomationCurve::addToValues | ( | float | valueDelta, |
TimeRange | |||
) |
|
static |
|
static |
|
static |
juce::CachedValue<AtomicWrapper<bool> > tracktion::engine::AutomationCurve::bypass |
If set to true, this curve is disabled, having no effect on the AutomatableParameter.
juce::ValueTree tracktion::engine::AutomationCurve::parentState |
juce::ValueTree tracktion::engine::AutomationCurve::state |