Sirius  0.0.0
wrapper.h
Go to the documentation of this file.
1 
22 #ifndef SIRIUS_FFTW_WRAPPER_H_
23 #define SIRIUS_FFTW_WRAPPER_H_
24 
25 #include <gsl/gsl>
26 
27 #include "sirius/image.h"
28 #include "sirius/types.h"
29 
30 #include "sirius/fftw/types.h"
31 
32 namespace sirius {
33 namespace fftw {
34 
41 ComplexUPtr CreateComplex(const Size& size);
42 
49 RealUPtr CreateReal(const Size& size);
50 
57 ComplexUPtr FFT(const Image& image);
58 
66 ComplexUPtr FFT(double* values, const Size& size);
67 
75 Image IFFT(const Size& image_size, ComplexUPtr image_fft);
76 
77 } // namespace fftw
78 } // namespace sirius
79 
80 #endif // SIRIUS_FFTW_WRAPPER_H_
RealUPtr CreateReal(const Size &size)
Create real array and initialize it to 0.
ComplexUPtr CreateComplex(const Size &size)
Create complex array and initialize it to 0.
Definition: exception.h:27
std::unique_ptr<::fftw_complex[], detail::ComplexDeleter > ComplexUPtr
Definition: types.h:57
ComplexUPtr FFT(const Image &image)
Compute the FFT of an image.
std::unique_ptr< double[], detail::RealDeleter > RealUPtr
Definition: types.h:84
Image IFFT(const Size &image_size, ComplexUPtr image_fft)
Compute the IFFT of an image FFT.