dsplib 1.1.0
C++ DSP library for MATLAB-like coding
Loading...
Searching...
No Matches
ifft.h
1#pragma once
2
3#include <dsplib/fft.h>
4#include <dsplib/array.h>
5#include <memory>
6
7namespace dsplib {
8
9using IfftPlanC = FftPlanC;
10
15{
16public:
17 virtual ~IfftPlanR() = default;
18
19 [[nodiscard]] virtual arr_real solve(span_t<cmplx_t> x) const = 0;
20
26 virtual void solve(span_t<cmplx_t> x, mut_span_t<real_t> r) const {
27 r = this->solve(x);
28 }
29
30 [[nodiscard]] virtual int size() const noexcept = 0;
31};
32
37std::shared_ptr<IfftPlanC> ifft_plan_c(int n);
38
43std::shared_ptr<IfftPlanR> ifft_plan_r(int n);
44
51arr_cmplx ifft(span_t<cmplx_t> x);
52
59arr_real irfft(span_t<cmplx_t> x, int n);
60
61arr_real irfft(span_t<cmplx_t> x);
62
63} // namespace dsplib
FFT c2c base class.
Definition fft.h:13
iFFT c2r base class
Definition ifft.h:15
virtual void solve(span_t< cmplx_t > x, mut_span_t< real_t > r) const
c2r iFFT solve
Definition ifft.h:26
Definition span.h:27
Definition span.h:295
Definition types.h:102