apply method
Implementation
double apply(double input) {
if (length == 0) return input;
delayLine[count] = input;
double result = 0.0;
int index = count;
for (int i = 0; i < length; i++) {
result += impulseResponse[i] * delayLine[index--];
if (index < 0) index = length - 1;
}
if (++count >= length) count = 0;
return result;
}