00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024
00025 #ifndef __FLGR_LINEAR_FFT_H
00026 #define __FLGR_LINEAR_FFT_H
00027
00028 #include <flgrCoreDll.h>
00029 #include <flgrCoreErrors.h>
00030 #include <flgrCoreTypes.h>
00031 #include <flgrCoreData.h>
00032 #include <fftw3.h>
00033
00042
00043
00044
00045
00046 EXPORT_LIB FLGR_Ret flgr1d_fft_forward_cplx(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00047 EXPORT_LIB FLGR_Ret flgr1d_fft_backward_cplx(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00048 EXPORT_LIB FLGR_Ret flgr1d_fft_forward_real(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00049 EXPORT_LIB FLGR_Ret flgr1d_fft_backward_real(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00050
00051
00052 EXPORT_LIB void flgr1d_fft_forward_cplx_fgBIT(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00053 EXPORT_LIB void flgr1d_fft_forward_cplx_fgUINT8(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00054 EXPORT_LIB void flgr1d_fft_forward_cplx_fgUINT16(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00055 EXPORT_LIB void flgr1d_fft_forward_cplx_fgUINT32(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00056 EXPORT_LIB void flgr1d_fft_forward_cplx_fgINT8(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00057 EXPORT_LIB void flgr1d_fft_forward_cplx_fgINT16(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00058 EXPORT_LIB void flgr1d_fft_forward_cplx_fgINT32(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00059 EXPORT_LIB void flgr1d_fft_forward_cplx_fgFLOAT32(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00060 EXPORT_LIB void flgr1d_fft_forward_cplx_fgFLOAT64(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00061
00062 EXPORT_LIB void flgr1d_fft_backward_cplx_fgBIT(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00063 EXPORT_LIB void flgr1d_fft_backward_cplx_fgUINT8(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00064 EXPORT_LIB void flgr1d_fft_backward_cplx_fgUINT16(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00065 EXPORT_LIB void flgr1d_fft_backward_cplx_fgUINT32(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00066 EXPORT_LIB void flgr1d_fft_backward_cplx_fgINT8(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00067 EXPORT_LIB void flgr1d_fft_backward_cplx_fgINT16(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00068 EXPORT_LIB void flgr1d_fft_backward_cplx_fgINT32(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00069 EXPORT_LIB void flgr1d_fft_backward_cplx_fgFLOAT32(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00070 EXPORT_LIB void flgr1d_fft_backward_cplx_fgFLOAT64(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00071
00072 EXPORT_LIB void flgr1d_fft_forward_real_fgBIT(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00073 EXPORT_LIB void flgr1d_fft_forward_real_fgUINT8(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00074 EXPORT_LIB void flgr1d_fft_forward_real_fgUINT16(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00075 EXPORT_LIB void flgr1d_fft_forward_real_fgUINT32(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00076 EXPORT_LIB void flgr1d_fft_forward_real_fgINT8(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00077 EXPORT_LIB void flgr1d_fft_forward_real_fgINT16(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00078 EXPORT_LIB void flgr1d_fft_forward_real_fgINT32(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00079 EXPORT_LIB void flgr1d_fft_forward_real_fgFLOAT32(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00080 EXPORT_LIB void flgr1d_fft_forward_real_fgFLOAT64(FLGR_Data1D *datfft, FLGR_Data1D *datsrc);
00081
00082 EXPORT_LIB void flgr1d_fft_backward_real_fgBIT(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00083 EXPORT_LIB void flgr1d_fft_backward_real_fgUINT8(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00084 EXPORT_LIB void flgr1d_fft_backward_real_fgUINT16(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00085 EXPORT_LIB void flgr1d_fft_backward_real_fgUINT32(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00086 EXPORT_LIB void flgr1d_fft_backward_real_fgINT8(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00087 EXPORT_LIB void flgr1d_fft_backward_real_fgINT16(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00088 EXPORT_LIB void flgr1d_fft_backward_real_fgINT32(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00089 EXPORT_LIB void flgr1d_fft_backward_real_fgFLOAT32(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00090 EXPORT_LIB void flgr1d_fft_backward_real_fgFLOAT64(FLGR_Data1D *datdest, FLGR_Data1D *datfft);
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101 EXPORT_LIB FLGR_Ret flgr2d_fft_forward_cplx(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00102 EXPORT_LIB FLGR_Ret flgr2d_fft_backward_cplx(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00103 EXPORT_LIB FLGR_Ret flgr2d_fft_forward_real(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00104 EXPORT_LIB FLGR_Ret flgr2d_fft_backward_real(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00105
00106 EXPORT_LIB FLGR_Ret flgr2d_fft_switch_corner(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00107
00108
00109 EXPORT_LIB void flgr2d_fft_forward_cplx_fgBIT(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00110 EXPORT_LIB void flgr2d_fft_forward_cplx_fgUINT8(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00111 EXPORT_LIB void flgr2d_fft_forward_cplx_fgUINT16(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00112 EXPORT_LIB void flgr2d_fft_forward_cplx_fgUINT32(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00113 EXPORT_LIB void flgr2d_fft_forward_cplx_fgINT8(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00114 EXPORT_LIB void flgr2d_fft_forward_cplx_fgINT16(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00115 EXPORT_LIB void flgr2d_fft_forward_cplx_fgINT32(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00116 EXPORT_LIB void flgr2d_fft_forward_cplx_fgFLOAT32(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00117 EXPORT_LIB void flgr2d_fft_forward_cplx_fgFLOAT64(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00118
00119 EXPORT_LIB void flgr2d_fft_backward_cplx_fgBIT(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00120 EXPORT_LIB void flgr2d_fft_backward_cplx_fgUINT8(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00121 EXPORT_LIB void flgr2d_fft_backward_cplx_fgUINT16(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00122 EXPORT_LIB void flgr2d_fft_backward_cplx_fgUINT32(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00123 EXPORT_LIB void flgr2d_fft_backward_cplx_fgINT8(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00124 EXPORT_LIB void flgr2d_fft_backward_cplx_fgINT16(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00125 EXPORT_LIB void flgr2d_fft_backward_cplx_fgINT32(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00126 EXPORT_LIB void flgr2d_fft_backward_cplx_fgFLOAT32(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00127 EXPORT_LIB void flgr2d_fft_backward_cplx_fgFLOAT64(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00128
00129 EXPORT_LIB void flgr2d_fft_forward_real_fgBIT(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00130 EXPORT_LIB void flgr2d_fft_forward_real_fgUINT8(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00131 EXPORT_LIB void flgr2d_fft_forward_real_fgUINT16(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00132 EXPORT_LIB void flgr2d_fft_forward_real_fgUINT32(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00133 EXPORT_LIB void flgr2d_fft_forward_real_fgINT8(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00134 EXPORT_LIB void flgr2d_fft_forward_real_fgINT16(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00135 EXPORT_LIB void flgr2d_fft_forward_real_fgINT32(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00136 EXPORT_LIB void flgr2d_fft_forward_real_fgFLOAT32(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00137 EXPORT_LIB void flgr2d_fft_forward_real_fgFLOAT64(FLGR_Data2D *datfft, FLGR_Data2D *datsrc);
00138
00139 EXPORT_LIB void flgr2d_fft_backward_real_fgBIT(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00140 EXPORT_LIB void flgr2d_fft_backward_real_fgUINT8(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00141 EXPORT_LIB void flgr2d_fft_backward_real_fgUINT16(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00142 EXPORT_LIB void flgr2d_fft_backward_real_fgUINT32(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00143 EXPORT_LIB void flgr2d_fft_backward_real_fgINT8(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00144 EXPORT_LIB void flgr2d_fft_backward_real_fgINT16(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00145 EXPORT_LIB void flgr2d_fft_backward_real_fgINT32(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00146 EXPORT_LIB void flgr2d_fft_backward_real_fgFLOAT32(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00147 EXPORT_LIB void flgr2d_fft_backward_real_fgFLOAT64(FLGR_Data2D *datdest, FLGR_Data2D *datfft);
00148
00149
00150 EXPORT_LIB void flgr2d_fft_switch_corner_fgBIT(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00151 EXPORT_LIB void flgr2d_fft_switch_corner_fgUINT8(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00152 EXPORT_LIB void flgr2d_fft_switch_corner_fgUINT16(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00153 EXPORT_LIB void flgr2d_fft_switch_corner_fgUINT32(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00154 EXPORT_LIB void flgr2d_fft_switch_corner_fgINT8(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00155 EXPORT_LIB void flgr2d_fft_switch_corner_fgINT16(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00156 EXPORT_LIB void flgr2d_fft_switch_corner_fgINT32(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00157 EXPORT_LIB void flgr2d_fft_switch_corner_fgFLOAT32(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00158 EXPORT_LIB void flgr2d_fft_switch_corner_fgFLOAT64(FLGR_Data2D *datdest, FLGR_Data2D *datsrc);
00159
00160 #endif
00161
00162 #ifdef __cplusplus
00163 }
00164 #endif