view branches/carfac_cpp/src/CARFAC.h @ 554:d18ff10b5559

Adding code to AGC_coefficients(AGC_params*, float, int) Function FIR_coeffs as private function in class AGC_coefficients. FIR_coeffs returns a FloatArray and modify a boolean variable.
author pfh1976@gmail.com
date Sun, 08 Apr 2012 14:28:55 +0000
parents ff12d0432d9c
children 4de3bebec3d6
line wrap: on
line source
#ifndef CARFAC_H_
#define CARFAC_H_

#include "CAR.h"
#include "IHC.h"
#include "AGC.h"

const double kDefaultErbBreakFreq = 165.3;
const double kDefaultErbQ = 1000/(24.7*4.37);
const double kDefaultFs = 22050;

class CARFAC{
public:
  CARFAC(int, CAR_parameters*, IHC_parameters*, AGC_parameters*, float, float);
  virtual ~CARFAC();
  static float ERB_Hz(float);
  static float ERB_Hz(float, float, float);

  float fs_;
  float max_channels_per_octave_;

  CAR_coefficients* car_coeffs_;
  CAR_parameters* car_params_;

  IHC_coefficients* ihc_coeffs_;
  IHC_parameters* ihc_params_;

  int n_ch_;
  FloatArray pole_freqs_;

  AGC_coefficients* agc_coeffs_;
  AGC_parameters* agc_params_;

  int n_ears_;
};

#endif /* CARFAC_H_ */