Sirius
0.0.0
|
Namespaces | |
detail | |
Classes | |
class | Exception |
Exception wrapper for FFTW error. More... | |
class | Fftw |
fftw3 management class More... | |
Typedefs | |
using | PlanUPtr = std::unique_ptr< std::remove_pointer_t<::fftw_plan >, detail::PlanDeleter > |
using | PlanSPtr = std::shared_ptr< std::remove_pointer_t<::fftw_plan > > |
using | ComplexUPtr = std::unique_ptr<::fftw_complex[], detail::ComplexDeleter > |
using | ComplexSPtr = std::shared_ptr<::fftw_complex > |
using | RealUPtr = std::unique_ptr< double[], detail::RealDeleter > |
Enumerations | |
enum | ErrorCode { ErrorCode::kSuccess = 0, ErrorCode::kMemoryAllocationFailed, ErrorCode::kPlanCreationFailed, ErrorCode::kComplexAllocationFailed, ErrorCode::kRealAllocationFailed } |
FFTW error codes. More... | |
Functions | |
ComplexUPtr | CreateComplex (const Size &size) |
Create complex array and initialize it to 0. More... | |
RealUPtr | CreateReal (const Size &size) |
Create real array and initialize it to 0. More... | |
ComplexUPtr | FFT (const Image &image) |
Compute the FFT of an image. More... | |
ComplexUPtr | FFT (double *values, const Size &size) |
Compute the FFT of real array. More... | |
Image | IFFT (const Size &image_size, ComplexUPtr image_fft) |
Compute the IFFT of an image FFT. More... | |
using sirius::fftw::ComplexSPtr = typedef std::shared_ptr<::fftw_complex> |
using sirius::fftw::ComplexUPtr = typedef std::unique_ptr<::fftw_complex[], detail::ComplexDeleter> |
using sirius::fftw::PlanSPtr = typedef std::shared_ptr<std::remove_pointer_t<::fftw_plan> > |
using sirius::fftw::PlanUPtr = typedef std::unique_ptr<std::remove_pointer_t<::fftw_plan>, detail::PlanDeleter> |
using sirius::fftw::RealUPtr = typedef std::unique_ptr<double[], detail::RealDeleter> |
|
strong |
ComplexUPtr sirius::fftw::CreateComplex | ( | const Size & | size | ) |
Create complex array and initialize it to 0.
size | complex array size |
sirius::fftw::Exception | if the complex creation fails |
Create real array and initialize it to 0.
size | real array size |
sirius::fftw::Exception | if the real creation fails |
ComplexUPtr sirius::fftw::FFT | ( | const Image & | image | ) |
Compute the FFT of an image.
image | input image |
sirius::fftw::Exception | if the computation of FFT failed |
ComplexUPtr sirius::fftw::FFT | ( | double * | values, |
const Size & | size | ||
) |
Compute the FFT of real array.
values | initialized values |
size | values size |
sirius::fftw::Exception | if the computation of FFT failed |
Image sirius::fftw::IFFT | ( | const Size & | image_size, |
ComplexUPtr | image_fft | ||
) |
Compute the IFFT of an image FFT.
image_size | image size |
image_fft | image FFT |
sirius::fftw::Exception | if the computation of IFFT failed |