Go to the documentation of this file.
   47     return kiss_fft_next_fast_size(desired_length);    
 
   94     if (is_inverse != 1 && is_inverse != -1)
 
   98     *plan_ptr = fftw_plan_dft_1d(fft_length, in, out, is_inverse, FFTW_ESTIMATE);
 
  102     *plan_ptr = kiss_fft_alloc(fft_length, (is_inverse+1)/2, NULL, NULL);
 
  105     if (*plan_ptr == NULL)
 
  131     fftw_execute_dft((fftw_plan)plan, (fftw_complex *)in, (fftw_complex *)out);
 
  133     kiss_fft((kiss_fft_cfg)plan, (kiss_fft_cpx *)in, (kiss_fft_cpx *)out);
 
  154     if (plan_ptr == NULL)
 
  157     fftw_destroy_plan(*plan_ptr);
 
  159     KISS_FFT_FREE(*plan_ptr);
 
  177     return fftw_malloc(size);
 
  179     return KISS_FFT_MALLOC(size);
 
  201 #ifdef FNFT_ENABLE_SHORT_NAMES 
  202 #ifndef FNFT__FFT_WRAPPER_SHORT_NAMES 
  203 #define FNFT__FFT_WRAPPER_SHORT_NAMES 
  204 #define fft_wrapper_next_fft_length(...) fnft__fft_wrapper_next_fft_length(__VA_ARGS__) 
  205 #define fft_wrapper_safe_plan_init(...) fnft__fft_wrapper_safe_plan_init(__VA_ARGS__) 
  206 #define fft_wrapper_create_plan(...) fnft__fft_wrapper_create_plan(__VA_ARGS__) 
  207 #define fft_wrapper_execute_plan(...) fnft__fft_wrapper_execute_plan(__VA_ARGS__) 
  208 #define fft_wrapper_destroy_plan(...) fnft__fft_wrapper_destroy_plan(__VA_ARGS__) 
  209 #define fft_wrapper_malloc(...) fnft__fft_wrapper_malloc(__VA_ARGS__) 
  210 #define fft_wrapper_free(...) fnft__fft_wrapper_free(__VA_ARGS__) 
  
static void * fnft__fft_wrapper_malloc(FNFT_UINT size)
Memory allocation for the FFT wrapper.
Definition: fnft__fft_wrapper.h:174
 
int32_t FNFT_INT
Definition: fnft_numtypes.h:56
 
static void fnft__fft_wrapper_free(void *ptr)
Memory deallocation for the FFT wrapper.
Definition: fnft__fft_wrapper.h:192
 
size_t FNFT_UINT
Definition: fnft_numtypes.h:62
 
kiss_fft_cfg fnft__fft_wrapper_plan_t
Stores information needed by fnft__fft_wrapper_execute_plan to perform a (inverse) FFT.
Definition: fnft__fft_wrapper_plan_t.h:41
 
static FNFT_INT fnft__fft_wrapper_execute_plan(fnft__fft_wrapper_plan_t plan, FNFT_COMPLEX *in, FNFT_COMPLEX *out)
Computes a fast Fourier transform (FFT).
Definition: fnft__fft_wrapper.h:124
 
#define FNFT__E_INVALID_ARGUMENT(name)
Definition: fnft__errwarn.h:48
 
static FNFT_INT fnft__fft_wrapper_create_plan(fnft__fft_wrapper_plan_t *plan_ptr, FNFT_UINT fft_length, FNFT_COMPLEX *in, FNFT_COMPLEX *out, FNFT_INT is_inverse)
Prepares a new (inverse) fast Fourier transform (FFT).
Definition: fnft__fft_wrapper.h:83
 
#define FNFT__E_NOMEM
Definition: fnft__errwarn.h:42
 
#define FNFT_SUCCESS
Definition: fnft_errwarn.h:44
 
static FNFT_UINT fnft__fft_wrapper_next_fft_length(FNFT_UINT desired_length)
Next valid number of samples for the FFT routines.
Definition: fnft__fft_wrapper.h:43
 
double complex FNFT_COMPLEX
Definition: fnft_numtypes.h:47
 
static fnft__fft_wrapper_plan_t fnft__fft_wrapper_safe_plan_init()
Value to initialize plan variables.
Definition: fnft__fft_wrapper.h:57
 
static FNFT_INT fnft__fft_wrapper_destroy_plan(fnft__fft_wrapper_plan_t *plan_ptr)
Destroys a FFT plan when it is no longer needed.
Definition: fnft__fft_wrapper.h:151