FIRFilter

template<int64_t filter_order>
class FIRFilter : public vslib::Filter

Public Functions

inline FIRFilter(std::string_view name, Component &parent)

Constructor of the FIR filter component, initializing one Parameter: coefficients.

Parameters:
inline virtual double filter(const double input) override

Filters the provided input by convolving coefficients and the input, including previous inputs.

Parameters:

input – Input value to be filtered

Returns:

Filtered value

template<size_t N>
inline std::array<double, N> filter(const std::array<double, N> &inputs)

Filters the provided input array by convolving coefficients and the input.

Parameters:

inputs – Input values to be filtered

Returns:

Filtered values

inline virtual std::optional<fgc4::utils::Warning> verifyParameters() override

Copies Parameter values into the local container for optimised access.

Returns:

Optionally returns a Warning if an issue was found

inline virtual double filter(const double input)

Filters the provided input using 1st order specialization by convolving coefficients and the input, including previous input.

Parameters:

input – Input value to be filtered

Returns:

Filtered value

inline virtual double filter(const double input)

Filters the provided input using 2nd order specialization by convolving coefficients and the input, including previous inputs.

Parameters:

input – Input value to be filtered

Returns:

Filtered value

Public Members

Parameter<std::array<double, buffer_length>> coefficients

Array of coefficients of this Filter.