view branches/carfac_cpp/include/CARFAC.h @ 695:2e3672df5698

Simple integration test between CARFAC and SAI. The interface between the two classes is pretty clunky because of the way CARFACOutput stores things. We should work on this, probably by rotating the outer two dimensions of CARFACOutput (i.e. store outputs in containers with sizes n_ears x n_samples x n_channels instead of n_samples x n_ears x n_channels).
author ronw@google.com
date Wed, 26 Jun 2013 23:35:47 +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_ */