apply method

double apply(
  1. double input
)
override

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;
}