/*******************************************/ /* */ /* AllPass Interpolating Delay Line */ /* Object by Perry R. Cook 1995-96 */ /* This one uses a delay line of maximum */ /* length specified on creation, and */ /* interpolates fractional length using */ /* an all-pass filter. This version is */ /* more efficient for computing static */ /* length delay lines (alpha and coeff */ /* are computed only when the length */ /* is set, there probably is a more */ /* efficient computational form if alpha */ /* is changed often (each sample)). */ /* */ /*******************************************/ #include "DLineA.h" DLineA :: DLineA(long max_length) { long i; length = max_length; inputs = (MY_FLOAT *) malloc(length * MY_FLOAT_SIZE); for (i=0;iclear(); inPoint = 0; outPoint = length >> 1; } DLineA :: ~DLineA() { free(inputs); } void DLineA :: clear() { long i; for (i=0;i