Class Apdsr

All Implemented Interfaces:
CompilableControlFlow, CompilableDataFlow, FloatSignalSource, FloatSupplier, Realtime, SignalSource<Float>, Runnable, Supplier<Float>

public class Apdsr extends FloatClockedSignalSource
APDSR.
Retriggerable.
"p" = "peak" is optional, if == null it defaults to 1.0f, modeling the conventional "Adsr".
Gate is true if input !=0.
Trigger is modelled by any change in the event number = the int source in "trigger".
Execution is re-triggerable, i.e. starts with attack whenever trigger changes.
"a", "d" and "r" are given in "units per msec"; "p" and "s" in those very "units", whatever these may be.
All inputs are fully dynamic, i.e. call "getAsFloat()" in every run. ("S" is only fetched once at beginning of phase "S", since not needed further)
(Perhaps a variant with such local sampling for all four inputs is sensible?)