|
#define | POCKETFFT_CACHE_SIZE 0 |
|
#define | POCKETFFT_NOINLINE |
|
#define | POCKETFFT_RESTRICT |
|
#define | POCKETFFT_NO_VECTORS |
|
#define | POCKETFFT_PREP3(idx) |
|
#define | POCKETFFT_PARTSTEP3a(u1, u2, twr, twi) |
|
#define | POCKETFFT_PARTSTEP3b(u1, u2, twr, twi) |
|
#define | POCKETFFT_PREP5(idx) |
|
#define | POCKETFFT_PARTSTEP5a(u1, u2, twar, twbr, twai, twbi) |
|
#define | POCKETFFT_PARTSTEP5b(u1, u2, twar, twbr, twai, twbi) |
|
#define | POCKETFFT_PREP7(idx) |
|
#define | POCKETFFT_PARTSTEP7a0(u1, u2, x1, x2, x3, y1, y2, y3, out1, out2) |
|
#define | POCKETFFT_PARTSTEP7a(u1, u2, x1, x2, x3, y1, y2, y3) |
|
#define | POCKETFFT_PARTSTEP7(u1, u2, x1, x2, x3, y1, y2, y3) |
|
#define | POCKETFFT_PREP11(idx) |
|
#define | POCKETFFT_PARTSTEP11a0(u1, u2, x1, x2, x3, x4, x5, y1, y2, y3, y4, y5, out1, out2) |
|
#define | POCKETFFT_PARTSTEP11a(u1, u2, x1, x2, x3, x4, x5, y1, y2, y3, y4, y5) |
|
#define | POCKETFFT_PARTSTEP11(u1, u2, x1, x2, x3, x4, x5, y1, y2, y3, y4, y5) |
|
#define | POCKETFFT_REARRANGE(rx, ix, ry, iy) |
|
|
template<typename T> |
T | pocketfft::detail::cos (T)=delete |
|
template<typename T> |
T | pocketfft::detail::sin (T)=delete |
|
template<typename T> |
T | pocketfft::detail::sqrt (T)=delete |
|
void * | pocketfft::detail::aligned_alloc (size_t align, size_t size) |
|
void | pocketfft::detail::aligned_dealloc (void *ptr) |
|
template<typename T> |
void | pocketfft::detail::PM (T &a, T &b, T c, T d) |
|
template<typename T> |
void | pocketfft::detail::PMINPLACE (T &a, T &b) |
|
template<typename T> |
void | pocketfft::detail::MPINPLACE (T &a, T &b) |
|
template<typename T> |
cmplx< T > | pocketfft::detail::conj (const cmplx< T > &a) |
|
template<bool fwd, typename T, typename T2> |
void | pocketfft::detail::special_mul (const cmplx< T > &v1, const cmplx< T2 > &v2, cmplx< T > &res) |
|
template<typename T> |
void | pocketfft::detail::ROT90 (cmplx< T > &a) |
|
template<bool fwd, typename T> |
void | pocketfft::detail::ROTX90 (cmplx< T > &a) |
|
size_t & | pocketfft::detail::threading::thread_id () |
|
size_t & | pocketfft::detail::threading::num_threads () |
|
thread_pool & | pocketfft::detail::threading::get_pool () |
|
template<typename Func> |
void | pocketfft::detail::threading::thread_map (size_t nthreads, Func f) |
| Map a function f over nthreads.
|
|
template<typename T> |
std::shared_ptr< T > | pocketfft::detail::get_plan (size_t length) |
|
template<typename T> |
arr< char > | pocketfft::detail::alloc_tmp (const shape_t &shape, size_t axsize, size_t elemsize) |
|
template<typename T> |
arr< char > | pocketfft::detail::alloc_tmp (const shape_t &shape, const shape_t &axes, size_t elemsize) |
|
template<typename T, size_t vlen> |
void | pocketfft::detail::copy_input (const multi_iter< vlen > &it, const cndarr< cmplx< T > > &src, cmplx< vtype_t< T > > *dst) |
|
template<typename T, size_t vlen> |
void | pocketfft::detail::copy_input (const multi_iter< vlen > &it, const cndarr< T > &src, vtype_t< T > *dst) |
|
template<typename T, size_t vlen> |
void | pocketfft::detail::copy_input (const multi_iter< vlen > &it, const cndarr< T > &src, T *dst) |
|
template<typename T, size_t vlen> |
void | pocketfft::detail::copy_output (const multi_iter< vlen > &it, const cmplx< vtype_t< T > > *src, ndarr< cmplx< T > > &dst) |
|
template<typename T, size_t vlen> |
void | pocketfft::detail::copy_output (const multi_iter< vlen > &it, const vtype_t< T > *src, ndarr< T > &dst) |
|
template<typename T, size_t vlen> |
void | pocketfft::detail::copy_output (const multi_iter< vlen > &it, const T *src, ndarr< T > &dst) |
|
template<typename Tplan, typename T, typename T0, typename Exec> |
void | pocketfft::detail::general_nd (const cndarr< T > &in, ndarr< T > &out, const shape_t &axes, T0 fct, size_t nthreads, const Exec &exec, const bool allow_inplace=true) |
|
template<typename T, size_t vlen> |
void | pocketfft::detail::copy_hartley (const multi_iter< vlen > &it, const vtype_t< T > *src, ndarr< T > &dst) |
|
template<typename T, size_t vlen> |
void | pocketfft::detail::copy_hartley (const multi_iter< vlen > &it, const T *src, ndarr< T > &dst) |
|
template<typename T> |
void | pocketfft::detail::general_r2c (const cndarr< T > &in, ndarr< cmplx< T > > &out, size_t axis, bool forward, T fct, size_t nthreads) |
|
template<typename T> |
void | pocketfft::detail::general_c2r (const cndarr< cmplx< T > > &in, ndarr< T > &out, size_t axis, bool forward, T fct, size_t nthreads) |
|
template<typename T> |
void | pocketfft::detail::c2c (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool forward, const std::complex< T > *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::dct (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::dst (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::r2c (const shape_t &shape_in, const stride_t &stride_in, const stride_t &stride_out, size_t axis, bool forward, const T *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::r2c (const shape_t &shape_in, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool forward, const T *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::c2r (const shape_t &shape_out, const stride_t &stride_in, const stride_t &stride_out, size_t axis, bool forward, const std::complex< T > *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::c2r (const shape_t &shape_out, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool forward, const std::complex< T > *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::r2r_fftpack (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool real2hermitian, bool forward, const T *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::r2r_separable_hartley (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, const T *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::detail::r2r_genuine_hartley (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, const T *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::c2c (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool forward, const std::complex< T > *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::c2r (const shape_t &shape_out, const stride_t &stride_in, const stride_t &stride_out, size_t axis, bool forward, const std::complex< T > *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::r2c (const shape_t &shape_in, const stride_t &stride_in, const stride_t &stride_out, size_t axis, bool forward, const T *data_in, std::complex< T > *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::r2r_fftpack (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, bool real2hermitian, bool forward, const T *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::r2r_separable_hartley (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, const T *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::r2r_genuine_hartley (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, const T *data_in, T *data_out, T fct, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::dct (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1) |
|
template<typename T> |
void | pocketfft::dst (const shape_t &shape, const stride_t &stride_in, const stride_t &stride_out, const shape_t &axes, int type, const T *data_in, T *data_out, T fct, bool ortho, size_t nthreads=1) |
|