view src/Filter.h @ 4:52a635a8f33c

Longer test
author Chris Cannam
date Mon, 10 Aug 2015 18:50:11 +0100
parents d0880801415d
children fa87ce20fe8c
line wrap: on
line source
/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */

#ifndef FILTER_H
#define FILTER_H

#include <bqvec/Restrict.h>

#include <vector>

class Filter
{
public:
    struct Parameters {
        std::vector<double> a;
        std::vector<double> b;
    };

    Filter(Parameters params);
    ~Filter();

    void reset();
    void process(const double *const BQ_R__ in,
                 double *const BQ_R__ out,
                 const int n);

private:
    int m_order;
    int m_sz;
    double *m_a;
    double *m_b;
    double *m_inbuf;
    double *m_outbuf;
};
    
#endif