Skip to content

Commit 741c24d

Browse files
committed
Update docs
1 parent 770b5d9 commit 741c24d

File tree

2 files changed

+50
-23
lines changed

2 files changed

+50
-23
lines changed

include/dsplib/fft.h

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,41 +5,60 @@
55

66
namespace dsplib {
77

8-
//base complex value FFT plan
8+
/**
9+
* @brief FFT c2c base class
10+
*/
911
class FftPlanC
1012
{
1113
public:
1214
virtual ~FftPlanC() = default;
15+
1316
[[nodiscard]] virtual arr_cmplx solve(const arr_cmplx& x) const = 0;
14-
virtual void solve(const cmplx_t* x, cmplx_t* y, int n) const {
17+
18+
[[deprecated]] virtual void solve(const cmplx_t* x, cmplx_t* y, int n) const {
1519
const auto r = this->solve(arr_cmplx(x, n));
1620
std::memcpy(y, r.data(), n * sizeof(cmplx_t));
1721
}
22+
1823
[[nodiscard]] virtual int size() const noexcept = 0;
1924
};
2025

21-
//base real value FFT plan
26+
/**
27+
* @brief FFT r2c base class
28+
*/
2229
class FftPlanR
2330
{
2431
public:
2532
virtual ~FftPlanR() = default;
33+
2634
[[nodiscard]] virtual arr_cmplx solve(const arr_real& x) const = 0;
27-
virtual void solve(const real_t* x, cmplx_t* y, int n) const {
35+
36+
[[deprecated]] virtual void solve(const real_t* x, cmplx_t* y, int n) const {
2837
//TODO: use span
2938
const auto r = this->solve(arr_real(x, n));
3039
std::memcpy(y, r.data(), n * sizeof(cmplx_t));
3140
}
41+
3242
[[nodiscard]] virtual int size() const noexcept = 0;
3343
};
3444

45+
/**
46+
* @param n FFT size
47+
* @return c2c FFT plan
48+
*/
3549
std::shared_ptr<FftPlanC> fft_plan_c(int n);
50+
51+
/**
52+
* @param n FFT size
53+
* @return r2c FFT plan
54+
*/
3655
std::shared_ptr<FftPlanR> fft_plan_r(int n);
3756

38-
/*!
39-
* \brief Fast Fourier Transform (complex)
40-
* \details FFT for complex signal
41-
* \param arr Input array [N]
42-
* \return Result array [N]
57+
/**
58+
* @brief Fast Fourier Transform (complex)
59+
* @details FFT for complex signal
60+
* @param arr Input array [N]
61+
* @return Result array [N]
4362
*/
4463
arr_cmplx fft(const arr_cmplx& x);
4564

include/dsplib/ifft.h

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,34 +8,42 @@ namespace dsplib {
88

99
using IfftPlanC = FftPlanC;
1010

11+
/**
12+
* @brief iFFT c2r base class
13+
*/
1114
class IfftPlanR
1215
{
1316
public:
1417
virtual ~IfftPlanR() = default;
1518
[[nodiscard]] virtual arr_real solve(const arr_cmplx& x) const = 0;
1619
[[nodiscard]] virtual int size() const noexcept = 0;
17-
18-
arr_real operator()(const arr_cmplx& x) const {
19-
return this->solve(x);
20-
}
2120
};
2221

22+
/**
23+
* @param n iFFT size
24+
* @return c2c iFFT plan
25+
*/
2326
std::shared_ptr<IfftPlanC> ifft_plan_c(int n);
27+
28+
/**
29+
* @param n iFFT size
30+
* @return c2r iFFT plan
31+
*/
2432
std::shared_ptr<IfftPlanR> ifft_plan_r(int n);
2533

26-
/*!
27-
* \brief Inverse fourier transform
28-
* \details IFFT for complex signal
29-
* \param x Input array [N]
30-
* \return Result array [N]
34+
/**
35+
* @brief Inverse fourier transform
36+
* @details IFFT for complex signal
37+
* @param x Input array [N]
38+
* @return Result array [N]
3139
*/
3240
arr_cmplx ifft(const arr_cmplx& x);
3341

34-
/*!
35-
* \brief Inverse real fourier transform
36-
* \param x Input array [N or N/2+1]
37-
* \param n Transform size
38-
* \return Result array [N]
42+
/**
43+
* @brief Inverse real fourier transform
44+
* @param x Input array [N or N/2+1]
45+
* @param n Transform size
46+
* @return Result array [N]
3947
*/
4048
arr_real irfft(const arr_cmplx& x, int n);
4149

0 commit comments

Comments
 (0)