view branches/carfac_cpp/include/CARFAC.h @ 564:9c4c3675c3f8

* Added class Ear, and moved the CARFAC members AGC CAR IHC into Ear. CARFAC now holds an array of Ear. TBD what is best. * Moved the files around, and introduced a makefile that builds unittests using GTest. (Note, GTest path is configured in makefile atm.). - two moronic tests implemented. :)
author Ulf.Hammarqvist@gmail.com
date Sun, 20 May 2012 22:36:47 +0000
parents
children f3dde307f4b8
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, CAR_parameters*, IHC_parameters*, AGC_parameters*, int);
  virtual ~CARFAC();
  static float ERB_Hz(float, float, float);

  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:
  CARFAC(){};

};

#endif /* CARFAC_H_ */