commit 316e3fb4a0b228c4712b327be60681948223cb21
parent 3ca05e1628c75719f9fe82269d62053212e9bfc9
Author: [email protected] <[email protected]>
Date: Wed, 5 Oct 2016 03:48:53 +0300
Add reference_dft_plan class
Diffstat:
1 file changed, 19 insertions(+), 0 deletions(-)
diff --git a/include/kfr/dft/reference_dft.hpp b/include/kfr/dft/reference_dft.hpp
@@ -176,4 +176,23 @@ void reference_dft(complex<T>* out, const complex<T>* in, size_t size, bool inve
}
}
}
+
+template <typename T>
+struct reference_dft_plan
+{
+ reference_dft_plan(size_t size) : size(size) {}
+ void execute(complex<T>* out, const complex<T>* in, u8*, bool inverse = false) const
+ {
+ reference_dft(out, in, size, inverse);
+ }
+
+ template <size_t N, size_t N2>
+ void execute(univector<complex<T>, N>& out, const univector<const complex<T>, N>& in, univector<u8, N2>&,
+ bool inverse = false) const
+ {
+ this->execute(out.data(), in.data(), nullptr, inverse);
+ }
+ static constexpr size_t temp_size = 0;
+ const size_t size;
+};
}