TracktionEngine
|
#include <tracktion_AutomationCurve.h>
Classes | |
struct | AutomationPoint |
Public Types | |
enum class | TimeBase { time , beats } |
Public Member Functions | |
AutomationCurve (Edit &, TimeBase) | |
AutomationCurve (Edit &, TimeBase, const juce::ValueTree &parent, const juce::ValueTree &state) | |
AutomationCurve (const AutomationCurve &) | |
void | setState (const juce::ValueTree &) |
void | setParentState (const juce::ValueTree &) |
void | setParameterID (juce::String) |
Sets the paramID to store in the state. | |
juce::String | getParameterID () const |
Returns the parameter ID set or an empty string. | |
int | getNumPoints () const noexcept |
EditDuration | getDuration () const noexcept |
AutomationPoint | getPoint (int index) const noexcept |
EditPosition | getPointPosition (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 |
std::pair< CurvePoint, CurvePoint > | getBezierEnds (int index) const |
void | getBezierEnds (int index, double &x1, float &y1, double &x2, float &y2) const noexcept |
float | getValueAt (EditPosition, float defaultValue) const |
int | indexBefore (EditPosition) const |
int | nextIndexAfter (EditPosition) const |
void | clear (juce::UndoManager *) |
int | addPoint (EditPosition, float value, float curve, juce::UndoManager *) |
void | removePoint (int index, juce::UndoManager *) |
void | removePoints (EditTimeRange, juce::UndoManager *) |
void | removePointsAndCloseGap (AutomatableParameter &, EditTimeRange, juce::UndoManager *) |
void | removeRedundantPoints (EditTimeRange, juce::UndoManager *) |
juce::Array< AutomationPoint > | getPointsInRegion (EditTimeRange) const |
int | movePoint (int index, EditPosition, float newValue, std::optional< juce::Range< float > > valueLimits, bool removeInterveningPoints, juce::UndoManager *) |
void | setPointValue (int index, float newValue, juce::UndoManager *) |
void | setCurveValue (int index, float newCurve, juce::UndoManager *) |
void | rescaleAllPositions (double factor, juce::UndoManager *) |
void | rescaleValues (float factor, EditTimeRange, juce::Range< float > valueRange, juce::UndoManager *) |
void | addToValues (float valueDelta, EditTimeRange, juce::Range< float > valueRange, juce::UndoManager *) |
void | simplify (EditTimeRange, EditDuration minTimeDifference, float minValueDifference, juce::UndoManager *) |
TimePosition | getPointTime (int index) const noexcept |
float | getValueAt (TimePosition, float defaultValue) const |
int | indexBefore (TimePosition) const |
TimeDuration | getLength () const |
int | nextIndexAfter (TimePosition) const |
int | countPointsInRegion (EditTimeRange) const |
int | addPoint (TimePosition, float value, float curve, juce::UndoManager *) |
void | removePointsInRegion (TimeRange, juce::UndoManager *) |
void | removeRegionAndCloseGap (AutomatableParameter &, TimeRange, juce::UndoManager *) |
void | removeRedundantPoints (TimeRange, juce::UndoManager *) |
juce::Array< AutomationPoint > | getPointsInRegion (TimeRange) const |
void | rescaleValues (float factor, TimeRange, juce::Range< float > valueRange, juce::UndoManager *) |
void | addToValues (float valueDelta, TimeRange, juce::Range< float > valueRange, juce::UndoManager *) |
int | movePoint (AutomatableParameter &, int index, TimePosition, float newValue, bool removeInterveningPoints, juce::UndoManager *) |
void | simplify (TimeRange, double minTimeDifference, float minValueDifference, juce::UndoManager *) |
void | setPointPosition (int index, EditPosition, juce::UndoManager *) |
Static Public Member Functions | |
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. | |
Edit & | edit |
const TimeBase | timeBase |
juce::ValueTree | parentState |
juce::ValueTree | state |
|
strong |
engine::AutomationCurve::AutomationCurve | ( | Edit & | , |
TimeBase | |||
) |
engine::AutomationCurve::AutomationCurve | ( | Edit & | , |
TimeBase | , | ||
const juce::ValueTree & | parent, | ||
const juce::ValueTree & | state | ||
) |
engine::AutomationCurve::AutomationCurve | ( | const AutomationCurve & | ) |
void engine::AutomationCurve::setState | ( | const juce::ValueTree & | ) |
void engine::AutomationCurve::setParentState | ( | const juce::ValueTree & | ) |
void engine::AutomationCurve::setParameterID | ( | juce::String | ) |
Sets the paramID to store in the state.
juce::String engine::AutomationCurve::getParameterID | ( | ) | const |
Returns the parameter ID set or an empty string.
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
std::pair< CurvePoint, CurvePoint > engine::AutomationCurve::getBezierEnds | ( | int | index | ) | const |
|
noexcept |
float engine::AutomationCurve::getValueAt | ( | EditPosition | , |
float | defaultValue | ||
) | const |
int engine::AutomationCurve::indexBefore | ( | EditPosition | ) | const |
int engine::AutomationCurve::nextIndexAfter | ( | EditPosition | ) | const |
void engine::AutomationCurve::clear | ( | juce::UndoManager * | ) |
int engine::AutomationCurve::addPoint | ( | EditPosition | , |
float | value, | ||
float | curve, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::removePoint | ( | int | index, |
juce::UndoManager * | |||
) |
void engine::AutomationCurve::removePoints | ( | EditTimeRange | , |
juce::UndoManager * | |||
) |
void engine::AutomationCurve::removePointsAndCloseGap | ( | AutomatableParameter & | , |
EditTimeRange | , | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::removeRedundantPoints | ( | EditTimeRange | , |
juce::UndoManager * | |||
) |
juce::Array< AutomationPoint > engine::AutomationCurve::getPointsInRegion | ( | EditTimeRange | ) | const |
int engine::AutomationCurve::movePoint | ( | int | index, |
EditPosition | , | ||
float | newValue, | ||
std::optional< juce::Range< float > > | valueLimits, | ||
bool | removeInterveningPoints, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::setPointValue | ( | int | index, |
float | newValue, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::setCurveValue | ( | int | index, |
float | newCurve, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::rescaleAllPositions | ( | double | factor, |
juce::UndoManager * | |||
) |
void engine::AutomationCurve::rescaleValues | ( | float | factor, |
EditTimeRange | , | ||
juce::Range< float > | valueRange, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::addToValues | ( | float | valueDelta, |
EditTimeRange | , | ||
juce::Range< float > | valueRange, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::simplify | ( | EditTimeRange | , |
EditDuration | minTimeDifference, | ||
float | minValueDifference, | ||
juce::UndoManager * | |||
) |
|
static |
|
noexcept |
float engine::AutomationCurve::getValueAt | ( | TimePosition | , |
float | defaultValue | ||
) | const |
int engine::AutomationCurve::indexBefore | ( | TimePosition | ) | const |
TimeDuration engine::AutomationCurve::getLength | ( | ) | const |
int engine::AutomationCurve::nextIndexAfter | ( | TimePosition | ) | const |
int engine::AutomationCurve::countPointsInRegion | ( | EditTimeRange | ) | const |
int engine::AutomationCurve::addPoint | ( | TimePosition | , |
float | value, | ||
float | curve, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::removePointsInRegion | ( | TimeRange | , |
juce::UndoManager * | |||
) |
void engine::AutomationCurve::removeRegionAndCloseGap | ( | AutomatableParameter & | , |
TimeRange | , | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::removeRedundantPoints | ( | TimeRange | , |
juce::UndoManager * | |||
) |
juce::Array< AutomationPoint > engine::AutomationCurve::getPointsInRegion | ( | TimeRange | ) | const |
void engine::AutomationCurve::rescaleValues | ( | float | factor, |
TimeRange | , | ||
juce::Range< float > | valueRange, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::addToValues | ( | float | valueDelta, |
TimeRange | , | ||
juce::Range< float > | valueRange, | ||
juce::UndoManager * | |||
) |
int engine::AutomationCurve::movePoint | ( | AutomatableParameter & | , |
int | index, | ||
TimePosition | , | ||
float | newValue, | ||
bool | removeInterveningPoints, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::simplify | ( | TimeRange | , |
double | minTimeDifference, | ||
float | minValueDifference, | ||
juce::UndoManager * | |||
) |
void engine::AutomationCurve::setPointPosition | ( | int | index, |
EditPosition | , | ||
juce::UndoManager * | |||
) |
juce::CachedValue<AtomicWrapper<bool> > engine::AutomationCurve::bypass |
If set to true, this curve is disabled, having no effect on the AutomatableParameter.
Edit& engine::AutomationCurve::edit |
const TimeBase engine::AutomationCurve::timeBase |
juce::ValueTree engine::AutomationCurve::parentState |
juce::ValueTree engine::AutomationCurve::state |