23 #if ! defined (octave_oct_fftw_h)
24 #define octave_oct_fftw_h 1
26 #include "octave-config.h"
55 static bool instance_ok (
void);
64 ? instance->do_create_plan (dir, rank, dims, howmany, stride,
75 ? instance->do_create_plan (rank, dims, howmany, stride, dist,
84 return instance_ok () ? instance->do_method () : dummy;
91 return instance_ok () ? instance->do_method (_meth) : dummy;
94 static void threads (
int nt);
98 return instance_ok () ? instance->nthreads : 0;
124 FftwMethod do_method (
void);
126 FftwMethod do_method (FftwMethod _meth);
200 static bool instance_ok (
void);
208 return instance_ok ()
209 ? instance->do_create_plan (dir, rank, dims, howmany, stride,
219 return instance_ok ()
220 ? instance->do_create_plan (rank, dims, howmany, stride, dist,
229 return instance_ok () ? instance->do_method () : dummy;
236 return instance_ok () ? instance->do_method (_meth) : dummy;
239 static void threads (
int nt);
243 return instance_ok () ? instance->nthreads : 0;
269 FftwMethod do_method (
void);
271 FftwMethod do_method (FftwMethod _meth);
329 static int fft (
const double *in,
Complex *out,
size_t npts,
345 static int fft (
const float *in,
FloatComplex *out,
size_t npts,
static octave_fftw_planner * instance
static FftwMethod method(FftwMethod _meth)
static octave_float_fftw_planner * instance
static void * create_plan(const int rank, const dim_vector dims, octave_idx_type howmany, octave_idx_type stride, octave_idx_type dist, const double *in, Complex *out)
static FftwMethod method(void)
F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_REAL const F77_REAL F77_REAL &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T F77_DBLE &F77_RET_T F77_REAL &F77_RET_T F77_REAL &F77_RET_T F77_DBLE &F77_RET_T const F77_DBLE F77_DBLE &F77_RET_T const F77_REAL F77_REAL &F77_RET_T F77_REAL F77_REAL &F77_RET_T F77_DBLE F77_DBLE &F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE * d
static void * create_plan(int dir, const int rank, const dim_vector dims, octave_idx_type howmany, octave_idx_type stride, octave_idx_type dist, const Complex *in, Complex *out)
static FftwMethod method(void)
static void * create_plan(int dir, const int rank, const dim_vector dims, octave_idx_type howmany, octave_idx_type stride, octave_idx_type dist, const FloatComplex *in, FloatComplex *out)
the exceeded dimensions are set to if fewer subscripts than dimensions are the exceeding dimensions are merged into the final requested dimension For consider the following dims
static FftwMethod method(FftwMethod _meth)
OCTAVE_API std::string octave_fftwf_version(void)
static void * create_plan(const int rank, const dim_vector dims, octave_idx_type howmany, octave_idx_type stride, octave_idx_type dist, const float *in, FloatComplex *out)
OCTAVE_API std::string octave_fftw_version(void)
std::complex< float > FloatComplex
std::complex< double > Complex
Vector representing the dimensions (size) of an Array.
If this string is the system will ring the terminal sometimes it is useful to be able to print the original representation of the string
static void cleanup_instance(void)
static void cleanup_instance(void)