Can I find related information about Fast Fourier Transform? Please help.

Here is the related C code I found from internet.

/*

This computes an in-place complex-to-complex FFT

x and y are the real and imaginary arrays of 2^m points.

dir = 1 gives forward transform

dir = -1 gives reverse transform

*/

short FFT(short int dir,long m,double *x,double *y)

{

long n,i,i1,j,k,i2,l,l1,l2;

double c1,c2,tx,ty,t1,t2,u1,u2,z;

/* Calculate the number of points */

n = 1;

for (i=0;i n *= 2;

/* Do the bit reversal */

i2 = n >> 1;

j = 0;

for (i=0;i if (i < j) {

tx = x;

ty = y;

x = x[j];

y = y[j];

x[j] = tx;

y[j] = ty;

}

k = i2;

while (k <= j) {

j -= k;

k >>= 1;

}

j += k;

}

/* Compute the FFT */

c1 = -1.0;

c2 = 0.0;

l2 = 1;

for (l=0;l l1 = l2;

l2 <<= 1;

u1 = 1.0;

u2 = 0.0;

for (j=0;j for (i=j;i i1 = i + l1;

t1 = u1 * x - u2 * y;

t2 = u1 * y + u2 * x;

x = x - t1;

y = y - t2;

x += t1;

y += t2;

}

z = u1 * c1 - u2 * c2;

u2 = u1 * c2 + u2 * c1;

u1 = z;

}

c2 = sqrt((1.0 - c1) / 2.0);

if (dir == 1)

c2 = -c2;

c1 = sqrt((1.0 + c1) / 2.0);

}

/* Scaling for forward transform */

if (dir == 1) {

for (i=0;i x /= n;

y /= n;

}

}

return(TRUE);

}

does anyone know if an indicator like this exist in mt4?