Performs complex-real single-precision FIR filtering with decimation and antialiasing.


func vDSP_zrdesamp(_ __A: UnsafePointer<DSPSplitComplex>, _ __DF: vDSP_Stride, _ __F: UnsafePointer<Float>, _ __C: UnsafePointer<DSPSplitComplex>, _ __N: vDSP_Length, _ __P: vDSP_Length)



Single-precision complex input vector. The size of A must be at least DF * (N-1) + P (see below).


Decimation factor.


Single-precision real filter vector.


Single-precision complex output vector.


Length of output vector C.


Length of filter vector F.


Performs finite impulse response (FIR) filtering at selected positions of the input vector C, with the filter F, using the decimation factor DF. Results are left in the output vector C.

This function can run in place, but C cannot be in place with F.

This function’s operation is indicated by the following pseudocode:

for (n = 0; n < N; ++n)
    sum = 0;
    for (p = 0; p < P; ++p)
        sum += A[n*DF+p] * F[p];
    C[n] = sum;

See Also