process method
Implementation
void process(List<double> input, List<double> outputLeft, List<double> outputRight)
{
outputLeft.fillRange(0, outputLeft.length, 0.0);
outputRight.fillRange(0, outputRight.length, 0.0);
for (CombFilter cf in cfsL)
{
cf.process(input, outputLeft);
}
for (AllPassFilter apf in apfsL)
{
apf.process(outputLeft);
}
for (CombFilter cf in cfsR)
{
cf.process(input, outputRight);
}
for (AllPassFilter apf in apfsR)
{
apf.process(outputRight);
}
// With the default settings, we can skip this part.
if (1.0 - _wet1 > 1.0E-3 || _wet2 > 1.0E-3)
{
for (int t = 0; t < input.length; t++)
{
double left = outputLeft[t];
double right = outputRight[t];
outputLeft[t] = left * _wet1 + right * _wet2;
outputRight[t] = right * _wet1 + left * _wet2;
}
}
}