view branches/carfac_cpp/include/CARFAC.h @ 705:be2b68ced23d

Make the C++ SAI match the Matlab implementation. - Fix syntax error which caused a linear window to be used instead of the correct sine window. - Correct off-by-one indexing errors to compensate for 1-based indexing in Matlab. - Enable test to verify that the C++ output matches Matlab with high precision.
author ronw@google.com
date Tue, 16 Jul 2013 19:56:16 +0000
parents 057946a60b91
children
line wrap: on
line source
#ifndef CARFAC_H_
#define CARFAC_H_

#include "CAR.h"
#include "IHC.h"
#include "AGC.h"
#include "Ear.h"
#include <vector>

const double kDefaultFs = 22050;

class CARFAC{
public:
  CARFAC(int fs,
      CAR_parameters* car_params,
      IHC_parameters* ihc_params,
      AGC_parameters* agc_params,
      int n_ears);

  float fs_;

  int n_ch_; // these three, push down to ear level?
  float max_channels_per_octave_;
  FloatArray pole_freqs_;

  int n_ears_;
  std::vector<Ear> ears_;

private:

};

#endif /* CARFAC_H_ */