diff options
Diffstat (limited to 'intern/audaspace/FX/AUD_IIRFilterReader.cpp')
-rw-r--r-- | intern/audaspace/FX/AUD_IIRFilterReader.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/intern/audaspace/FX/AUD_IIRFilterReader.cpp b/intern/audaspace/FX/AUD_IIRFilterReader.cpp index 0d55421d2b4..1bfb9b97b62 100644 --- a/intern/audaspace/FX/AUD_IIRFilterReader.cpp +++ b/intern/audaspace/FX/AUD_IIRFilterReader.cpp @@ -31,9 +31,9 @@ #include "AUD_IIRFilterReader.h" -AUD_IIRFilterReader::AUD_IIRFilterReader(AUD_IReader* reader, - std::vector<float> b, - std::vector<float> a) : +AUD_IIRFilterReader::AUD_IIRFilterReader(AUD_Reference<AUD_IReader> reader, + const std::vector<float>& b, + const std::vector<float>& a) : AUD_BaseIIRFilterReader(reader, b.size(), a.size()), m_a(a), m_b(b) { for(int i = 1; i < m_a.size(); i++) @@ -54,3 +54,11 @@ sample_t AUD_IIRFilterReader::filter() return out; } + +void AUD_IIRFilterReader::setCoefficients(const std::vector<float>& b, + const std::vector<float>& a) +{ + setLengths(m_b.size(), m_a.size()); + m_a = a; + m_b = b; +} |