20 const int maxDelay = 5024;
35 StkFloat
lastOut(
void )
const {
return lastFrame_[0]; };
38 StkFloat
tick( StkFloat input );
68 unsigned long delayLength_;
69 unsigned long halfLength_;
78 while ( delay_[0] > maxDelay-12 ) delay_[0] -= delayLength_;
79 while ( delay_[0] < 12 ) delay_[0] += delayLength_;
81 delay_[1] = delay_[0] + halfLength_;
82 while ( delay_[1] > maxDelay-12 ) delay_[1] -= delayLength_;
83 while ( delay_[1] < 12 ) delay_[1] += delayLength_;
90 env_[1] = fabs( ( delay_[0] - halfLength_ + 12 ) * ( 1.0 / (halfLength_ + 12 ) ) );
91 env_[0] = 1.0 - env_[1];
94 lastFrame_[0] = env_[0] * delayLine_[0].
tick( input );
95 lastFrame_[0] += env_[1] * delayLine_[1].
tick( input );
98 lastFrame_[0] *= effectMix_;
99 lastFrame_[0] += ( 1.0 - effectMix_ ) * input;
101 return lastFrame_[0];