Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType > Class Template Reference

#include <ComplexToRealFFTW.h>

Inheritance diagram for hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >:
Collaboration diagram for hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >:

Public Member Functions

 ComplexToRealFFTW ()=delete
 
 ComplexToRealFFTW (int logical_size, unsigned flags=FFTW_ESTIMATE)
 
 ComplexToRealFFTW (ComplexToRealFFTW< T, InputType, OutputType, PlanType > &&other)
 
 ~ComplexToRealFFTW ()
 
ComplexToRealFFTW< T, InputType, OutputType, PlanType > & operator= (ComplexToRealFFTW< T, InputType, OutputType, PlanType > &&other)
 
void SetSize (int logical_size)
 
- Public Member Functions inherited from hydra::BaseFFTW< InputType, OutputType, PlanType >
 BaseFFTW ()=delete
 
 BaseFFTW (int input_size, int output_size, unsigned flags=FFTW_ESTIMATE, int sign=0)
 
 BaseFFTW (BaseFFTW< InputType, OutputType, PlanType > &&other)
 
virtual ~BaseFFTW ()
 
void Execute ()
 
detail::fftw::_PlanDestroyer GetDestroyer () const
 
const detail::fftw::_PlanExecutor GetExecutor () const
 
unsigned GetFlags () const
 
hydra::pair< input_tagged_ptr_type, intGetInputData ()
 
int GetNInput () const
 
int GetNOutput () const
 
hydra::pair< output_tagged_ptr_type, intGetOutputData ()
 
PlanType GetPlanner () const
 
int GetSign () const
 
int GetSize () const
 
std::enable_if< std::is_convertible< InputType, Type >::value &&detail::is_iterable< Iterable >::value, void >::type LoadInputData (Iterable &&container)
 
void LoadInputData (int size, input_tagged_ptr_type data)
 
void LoadInputData (int size, const InputType *data)
 
BaseFFTW< InputType, OutputType, PlanType > & operator= (BaseFFTW< InputType, OutputType, PlanType > &&other)
 
void Reset (int ninput, int noutput)
 
void SetFlags (unsigned flags)
 
void SetPlanner (PlanType planner)
 
void SetSign (int sign)
 

Additional Inherited Members

- Protected Types inherited from hydra::BaseFFTW< InputType, OutputType, PlanType >
typedef std::unique_ptr< InputType, detail::fftw::_Deleterinput_ptr_type
 
typedef hydra::thrust::pointer< InputType, hydra::thrust::host_system_tag > input_tagged_ptr_type
 
typedef std::unique_ptr< OutputType, detail::fftw::_Deleteroutput_ptr_type
 
typedef hydra::thrust::pointer< OutputType, hydra::thrust::host_system_tag > output_tagged_ptr_type
 
typedef PlanType ::plan_type plan_type
 

Detailed Description

template<typename T, typename InputType = typename std::conditional< std::is_same<double,T>::value, hydra::complex<double>, hydra::complex<float> >::type, typename OutputType = T, typename PlanType = detail::fftw::_Planner>
class hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >

Examples:
fft.inl.

Constructor & Destructor Documentation

◆ ComplexToRealFFTW() [1/3]

template<typename T , typename InputType = typename std::conditional< std::is_same<double,T>::value, hydra::complex<double>, hydra::complex<float> >::type, typename OutputType = T, typename PlanType = detail::fftw::_Planner>
hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >::ComplexToRealFFTW ( )
delete

◆ ComplexToRealFFTW() [2/3]

template<typename T , typename InputType = typename std::conditional< std::is_same<double,T>::value, hydra::complex<double>, hydra::complex<float> >::type, typename OutputType = T, typename PlanType = detail::fftw::_Planner>
hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >::ComplexToRealFFTW ( int  logical_size,
unsigned  flags = FFTW_ESTIMATE 
)
inline

◆ ComplexToRealFFTW() [3/3]

template<typename T , typename InputType = typename std::conditional< std::is_same<double,T>::value, hydra::complex<double>, hydra::complex<float> >::type, typename OutputType = T, typename PlanType = detail::fftw::_Planner>
hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >::ComplexToRealFFTW ( ComplexToRealFFTW< T, InputType, OutputType, PlanType > &&  other)
inline

◆ ~ComplexToRealFFTW()

template<typename T , typename InputType = typename std::conditional< std::is_same<double,T>::value, hydra::complex<double>, hydra::complex<float> >::type, typename OutputType = T, typename PlanType = detail::fftw::_Planner>
hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >::~ComplexToRealFFTW ( )
inline

Member Function Documentation

◆ operator=()

template<typename T , typename InputType = typename std::conditional< std::is_same<double,T>::value, hydra::complex<double>, hydra::complex<float> >::type, typename OutputType = T, typename PlanType = detail::fftw::_Planner>
ComplexToRealFFTW<T,InputType, OutputType, PlanType>& hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >::operator= ( ComplexToRealFFTW< T, InputType, OutputType, PlanType > &&  other)
inline

◆ SetSize()

template<typename T , typename InputType = typename std::conditional< std::is_same<double,T>::value, hydra::complex<double>, hydra::complex<float> >::type, typename OutputType = T, typename PlanType = detail::fftw::_Planner>
void hydra::ComplexToRealFFTW< T, InputType, OutputType, PlanType >::SetSize ( int  logical_size)
inlinevirtual

The documentation for this class was generated from the following file: