2018-12-14 09:58:52 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <Eigen/Core>
|
|
|
|
|
2018-12-17 08:16:01 +00:00
|
|
|
namespace fratio {
|
2018-12-14 09:58:52 +00:00
|
|
|
|
|
|
|
template <typename T>
|
2018-12-17 08:16:01 +00:00
|
|
|
using vectX_t = Eigen::Matrix<T, Eigen::Dynamic, 1>;
|
2018-12-18 07:16:47 +00:00
|
|
|
template <typename T>
|
|
|
|
using vectXc_t = vectX_t<std::complex<T>>;
|
2018-12-14 09:58:52 +00:00
|
|
|
|
|
|
|
enum class FilterStatus {
|
|
|
|
// Generic filter
|
|
|
|
NONE,
|
|
|
|
READY,
|
2018-12-17 05:48:44 +00:00
|
|
|
BAD_ORDER_SIZE,
|
2018-12-14 09:58:52 +00:00
|
|
|
BAD_A_COEFF,
|
|
|
|
A_COEFF_MISSING,
|
|
|
|
B_COEFF_MISSING,
|
|
|
|
ALL_COEFF_MISSING = A_COEFF_MISSING | B_COEFF_MISSING,
|
|
|
|
|
|
|
|
// Butterworth filter
|
2018-12-17 05:48:44 +00:00
|
|
|
BAD_FREQUENCY_VALUE,
|
2018-12-18 07:16:47 +00:00
|
|
|
BAD_CUTOFF_FREQUENCY,
|
|
|
|
BAD_BAND_FREQUENCY
|
2018-12-14 09:58:52 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace fratio
|