public static void SetButterworthBandrejectCoefficients( ButterworthBandrejectRec Filter, double Cutoff, double Bandwidth, double SamplingRate) { if ((Cutoff == Filter.OldCutoff) && (Bandwidth == Filter.OldBandwidth)) { return; } Filter.OldCutoff = Cutoff; Filter.OldBandwidth = Bandwidth; ComputeButterworthBandrejectCoefficients( ref Filter.iir, Cutoff, Bandwidth, SamplingRate); }
/* apply filter to an array of values, adding result to output array */ public void Apply( float[] XinVector, int XInVectorOffset, float[] YoutVector, int YoutVectorOffset, int VectorLength, float OutputScaling, SynthParamRec SynthParams) { ButterworthBandrejectRec Filter = this; IIR2DirectIMAcc( ref Filter.iir, XinVector, XInVectorOffset, YoutVector, YoutVectorOffset, VectorLength, OutputScaling); }