view branches/carfac_cpp/include/CARFAC.h @ 621:d763637a05c5

Second check-in of Alex Brandmeyer's C++ implementation of CARFAC. Addressed style issues and completed implementation of remaining functions. Still needs proper testing of the output stages against the MATLAB version, and runtime functions need improvements in efficiency.
author alexbrandmeyer
date Thu, 16 May 2013 17:33:23 +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_ */