MKL_DFTI_Transform.h
1//-*-C++-*-
2/***************************************************************************
3 *
4 * Copyright (C) 2006 by Willem van Straten
5 * Licensed under the Academic Free License version 2.1
6 *
7 ***************************************************************************/
8
9#ifndef _Utils_fft_MKL_DFTI_Transform_h_
10#define _Utils_fft_MKL_DFTI_Transform_h_
11
12#include "FTransformAgent.h"
13
14#include <mkl_dfti.h>
15
16namespace FTransform {
17
18 class MKL_DFTI {
19
20 public:
21
22 class Plan : public FTransform::Plan {
23
24 public:
25
26 Plan (size_t nfft, type t);
27 ~Plan ();
28
29 void fcc1d (size_t nfft, float* dest, const float* src);
30 void bcc1d (size_t nfft, float* dest, const float* src);
31 void frc1d (size_t nfft, float* dest, const float* src);
32 void bcr1d (size_t nfft, float* dest, const float* src);
33
34 protected:
35
36 DFTI_DESCRIPTOR_HANDLE plan;
37
38 };
39
40 class Plan2 : public FTransform::Plan2 {
41
42 public:
43
44 Plan2 (size_t nx, size_t ny, type t);
45 ~Plan2 ();
46
47 void fcc2d (size_t nx, size_t ny, float* dest, const float* src);
48 void bcc2d (size_t nx, size_t ny, float* dest, const float* src);
49
50 protected:
51
52 DFTI_DESCRIPTOR_HANDLE plan;
53
54 };
55
56 class Agent : public PlanAgent<MKL_DFTI> {
57 public:
58 Agent () : PlanAgent<MKL_DFTI> ("MKL_DFTI", unnormalized) { }
59 };
60
61 };
62
63}
64
65#endif
PlanAgent(const std::string &name, normalization norm)
Definition FTransformAgent.h:116
Defines a single interface to a variety of Fourier transform libraries.
Definition FFTW3_Transform.h:14
type
The FFT type.
Definition FTransform.h:74

Generated using doxygen 1.14.0