|
mxlib
c++ tools for analyzing astronomical data and other tasks by Jared R. Males. [git repo]
|
Declares and defines templatized wrappers for the fftw library. More...
Declares and defines templatized wrappers for the fftw library.
Definition in file fftwTemplates.hpp.
#include <complex>#include <vector>#include <fftw3.h>Go to the source code of this file.
Classes | |
| struct | mx::math::ft::fftwPlanSpec< realT > |
| Specify the type of the plan based on the real type of the data. More... | |
| struct | mx::math::ft::fftwPlanSpec< float > |
| Specialization of fftwPlanSpec for float. More... | |
| struct | mx::math::ft::fftwPlanSpec< double > |
| Specialization of fftwPlanSpec for double. More... | |
| struct | mx::math::ft::fftwPlanSpec< long double > |
| Specialization of fftwPlanSpec for long double. More... | |
| struct | mx::math::ft::fftwTypeSpec< _inputDataT, _outputDataT > |
| A structure specifying various types based on the FFT input and output data types. More... | |
| struct | mx::math::ft::fftwTypeSpec< complexFT, complexFT > |
| Specialization of fftwTypeSpec for complex-float input and complex-float output. More... | |
| struct | mx::math::ft::fftwTypeSpec< float, complexFT > |
| Specialization of fftwTypeSpec for real-float input and complex-float output. More... | |
| struct | mx::math::ft::fftwTypeSpec< complexFT, float > |
| Specialization of fftwTypeSpec for complex-float input and real-float output. More... | |
| struct | mx::math::ft::fftwTypeSpec< complexDT, complexDT > |
| Specialization of fftwTypeSpec for complex-double input and complex-double output. More... | |
| struct | mx::math::ft::fftwTypeSpec< double, complexDT > |
| Specialization of fftwTypeSpec for real-double input and complex-double output. More... | |
| struct | mx::math::ft::fftwTypeSpec< complexDT, double > |
| Specialization of fftwTypeSpec for complex-double input and double output. More... | |
| struct | mx::math::ft::fftwTypeSpec< complexLT, complexLT > |
| Specialization of fftwTypeSpec for complex-long-double input and complex-long-double output. More... | |
| struct | mx::math::ft::fftwTypeSpec< long double, complexLT > |
| Specialization of fftwTypeSpec for real-long-double input and complex-long-double output. More... | |
| struct | mx::math::ft::fftwTypeSpec< complexLT, long double > |
| Specialization of fftwTypeSpec for complex-long-double input and real-long-double output. More... | |
Namespaces | |
| namespace | mx |
| The mxlib c++ namespace. | |
Typedefs | |
| typedef std::complex< float > | mx::math::ft::complexFT |
| The complex float data type. | |
| typedef std::complex< double > | mx::math::ft::complexDT |
| The complex double data type. | |
| typedef std::complex< long double > | mx::math::ft::complexLT |
| The complex long double data type. | |
Functions | |
| template<typename realT > | |
| int | mx::math::ft::fftw_import_system_wisdom () |
| Template wrapper for fftwX_import_system_wisdom();. | |
| template<typename realT > | |
| int | mx::math::ft::fftw_import_wisdom_from_filename (const char *filename) |
| Template wrapper for fftwX_import_wisdom_from_filename(const char *);. | |
| template<typename realT > | |
| int | mx::math::ft::fftw_export_wisdom_to_filename (const char *filename) |
| Template wrapper for fftwX_export_wisdom_to_filename(const char *);. | |
| template<typename realT > | |
| realT * | mx::math::ft::fftw_malloc (size_t n) |
| Call to fftw_malloc, with type cast. | |
| template<typename realT > | |
| void | mx::math::ft::fftw_free (realT *p) |
| Call to fftw_free. | |
| template<typename realT > | |
| void | mx::math::ft::fftw_make_planner_thread_safe () |
| Wrapper for fftwX_make_planner_thread_safe() | |
| template<typename realT > | |
| void | mx::math::ft::fftw_plan_with_nthreads (int nthreads) |
| Tell the FFTW planner how many threads to use. | |
| template<typename inputDataT , typename outputDataT > | |
| fftwTypeSpec< inputDataT, outputDataT >::planT | mx::math::ft::fftw_plan_dft (std::vector< int > n, inputDataT *in, outputDataT *out, int sign, unsigned flags) |
| Wrapper for the fftwX_plan_dft functions. | |
| template<typename realT > | |
| void | mx::math::ft::fftw_cleanup () |
| Cleanup persistent planner data. | |
| template<typename realT > | |
| void | mx::math::ft::fftw_cleanup_threads () |
| Cleanup persistent planner data and threads data. | |
| template<typename inputDataT , typename outputDataT > | |
| void | mx::math::ft::fftw_execute_dft (typename fftwTypeSpec< inputDataT, outputDataT >::planT plan, inputDataT *in, outputDataT *out) |
| Execute the given plan on the given arrays. | |
| template<typename realT > | |
| void | mx::math::ft::fftw_destroy_plan (typename fftwPlanSpec< realT >::planT plan) |
| Destroy the given plan. | |