Struct rustfft::algorithm::Radix4 [−][src]
pub struct Radix4<T> { /* fields omitted */ }
FFT algorithm optimized for power-of-two sizes
// Computes a forward FFT of size 4096 use rustfft::algorithm::Radix4; use rustfft::FFT; use rustfft::num_complex::Complex; use rustfft::num_traits::Zero; let mut input: Vec<Complex<f32>> = vec![Zero::zero(); 4096]; let mut output: Vec<Complex<f32>> = vec![Zero::zero(); 4096]; let fft = Radix4::new(4096, false); fft.process(&mut input, &mut output);
Methods
impl<T: FFTnum> Radix4<T>
[src]
impl<T: FFTnum> Radix4<T>
pub fn new(len: usize, inverse: bool) -> Self
[src]
pub fn new(len: usize, inverse: bool) -> Self
Preallocates necessary arrays and precomputes necessary data to efficiently compute the power-of-two FFT
Trait Implementations
impl<T: FFTnum> FFT<T> for Radix4<T>
[src]
impl<T: FFTnum> FFT<T> for Radix4<T>
fn process(&self, input: &mut [Complex<T>], output: &mut [Complex<T>])
[src]
fn process(&self, input: &mut [Complex<T>], output: &mut [Complex<T>])
Computes an FFT on the input
buffer and places the result in the output
buffer. Read more
fn process_multi(&self, input: &mut [Complex<T>], output: &mut [Complex<T>])
[src]
fn process_multi(&self, input: &mut [Complex<T>], output: &mut [Complex<T>])
Divides the input
and output
buffers into chunks of length self.len(), then computes an FFT on each chunk. Read more
impl<T> Length for Radix4<T>
[src]
impl<T> Length for Radix4<T>
impl<T> IsInverse for Radix4<T>
[src]
impl<T> IsInverse for Radix4<T>
fn is_inverse(&self) -> bool
[src]
fn is_inverse(&self) -> bool
Returns false if this instance computes forward FFTs, true for inverse FFTs