Point Cloud Library (PCL) 1.14.0
Loading...
Searching...
No Matches
kiss_fftr.h
1#pragma once
2
3#include "kiss_fft.h"
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8
9/*
10
11 Real optimized version can save about 45% cpu time vs. complex fft of a real seq.
12
13
14
15 */
16
17typedef struct kiss_fftr_state *kiss_fftr_cfg; // NOLINT
18
19
20kiss_fftr_cfg PCL_EXPORTS kiss_fftr_alloc(int nfft,int inverse_fft,void * mem, size_t * lenmem);
21/*
22 nfft must be even
23
24 If you don't care to allocate space, use mem = lenmem = NULL
25*/
26
27
28void PCL_EXPORTS kiss_fftr(kiss_fftr_cfg cfg,const kiss_fft_scalar *timedata,kiss_fft_cpx *freqdata);
29/*
30 input timedata has nfft scalar points
31 output freqdata has nfft/2+1 complex points
32*/
33
34void PCL_EXPORTS kiss_fftri(kiss_fftr_cfg cfg,const kiss_fft_cpx *freqdata,kiss_fft_scalar *timedata);
35/*
36 input freqdata has nfft/2+1 complex points
37 output timedata has nfft scalar points
38*/
39
40#define kiss_fftr_free free
41
42#ifdef __cplusplus
43}
44#endif