27#ifndef math_templateCufft_hpp
28#define math_templateCufft_hpp
33#include <cuda_runtime.h>
52template <
typename inputT,
typename outputT>
53cufftResult cufftPlan2d( cufftHandle *plan,
int nx,
int ny );
56cufftResult cufftPlan2d<cuDoubleComplex, cuDoubleComplex>( cufftHandle *plan,
int nx,
int ny );
59cufftResult cufftPlan2d<cuDoubleComplex, cuDoubleComplex>( cufftHandle *plan,
int nx,
int ny );
61template <
typename inputT,
typename outputT>
62cufftResult cufftExec( cufftHandle plan, inputT *idata, inputT *odata,
int direction );
65cufftResult cufftExec<cuComplex, cuComplex>( cufftHandle plan,
71cufftResult cufftExec<cuComplex, cuComplex>( cufftHandle plan, cuComplex *idata, cuComplex *odata,
int direction );
74cufftResult cufftExec<cuDoubleComplex, cuDoubleComplex>( cufftHandle plan,
75 cuDoubleComplex *idata,
76 cuDoubleComplex *odata,
80cufftResult cufftExec<cuDoubleComplex, cuDoubleComplex>( cufftHandle plan,
81 cuDoubleComplex *idata,
82 cuDoubleComplex *odata,