start method
void
start({})
Implementation
void start({required double delay,
required double attack,
required double hold,
required double decay,
required double sustain,
required double release})
{
_attackSlope = 1 / attack;
_decaySlope = -9.226 / decay;
_releaseSlope = -9.226 / release;
_attackStartTime = delay;
_holdStartTime = delay + attack;
_decayStartTime = delay + attack + hold;
_releaseStartTime = 0;
_sustainLevel = sustain.clamp(0.0, 1.0);
_releaseLevel = 0;
_processedSampleCount = 0;
_stage = EnvelopeStage.delay;
_value = 0;
_process(0);
}