Accord.Audio.ComplexFilters.DifferentialRectificationFilter.ProcessFilter C# (CSharp) Метод

ProcessFilter() защищенный Метод

Processes the filter.
protected ProcessFilter ( ComplexSignal sourceData, ComplexSignal destinationData ) : void
sourceData ComplexSignal
destinationData ComplexSignal
Результат void
        protected unsafe override void ProcessFilter(ComplexSignal sourceData, ComplexSignal destinationData)
        {
            int length = sourceData.Length;

            Complex* src = (Complex*)sourceData.Data.ToPointer();
            Complex* dst = (Complex*)destinationData.Data.ToPointer();

            for (int i = 0; i < length - 1; i++, src++, dst++)
            {
                double re = src[i + 1].Real - src[i].Real;

                // Retain only if difference is positive
                *dst = (re > 0) ? new Complex(re, 0) : Complex.Zero;
            }
        }