15 float transitionDuration,
16 std::function<
void()> expandLambdaFunction,
17 std::function<
void()> contractLambdaFunction,
18 std::function<
void()> expandStartedLambdaFunction,
19 std::function<
void()> contractStartedLambdaFunction,
20 std::function<
void()> expandEndedLambdaFunction,
21 std::function<
void()> contractEndedLambdaFunction)
24 this->transitionDuration = transitionDuration;
25 isProfessional = aProcessor.
getTreeState()->getParameterAsValue(
"isProfessional").getValue();
26 aProcessor.
getTreeState()->addParameterListener(
"isProfessional",
this);
27 framesRemaining = float(EDITOR_INITIAL_RATE()) * transitionDuration;
30 expandLambda = expandLambdaFunction;
31 expandStartedLambda = expandStartedLambdaFunction;
32 expandEndedLambda = expandEndedLambdaFunction;
33 contractLambda = contractLambdaFunction;
34 contractStartedLambda = contractStartedLambdaFunction;
35 contractEndedLambda = contractEndedLambdaFunction;
42void GuiTransformer::timerCallback()
45 if (framesRemaining-- > 0)
65 contractEndedLambda();
67 framesRemaining = float(EDITOR_INITIAL_RATE()) * transitionDuration;
72void GuiTransformer::parameterChanged(
const juce::String ¶meterID,
float newValue)
75 isProfessional = bool(newValue);
81 expandStartedLambda();
86 contractStartedLambda();
90 startTimerHz(EDITOR_INITIAL_RATE());
Oscilloscope audio processor.
juce::AudioProcessorValueTreeState * getTreeState()