Ulf@564: #ifndef CARFAC_H_ Ulf@564: #define CARFAC_H_ Ulf@564: Ulf@564: #include "CAR.h" Ulf@564: #include "IHC.h" Ulf@564: #include "AGC.h" Ulf@564: #include "Ear.h" Ulf@564: #include Ulf@564: Ulf@564: const double kDefaultFs = 22050; Ulf@564: Ulf@564: class CARFAC{ Ulf@564: public: Ulf@564: CARFAC(int, CAR_parameters*, IHC_parameters*, AGC_parameters*, int); Ulf@564: virtual ~CARFAC(); Ulf@564: static float ERB_Hz(float, float, float); Ulf@564: Ulf@564: float fs_; Ulf@564: Ulf@564: int n_ch_; // these three, push down to ear level? Ulf@564: float max_channels_per_octave_; Ulf@564: FloatArray pole_freqs_; Ulf@564: Ulf@564: int n_ears_; Ulf@564: std::vector ears_; Ulf@564: Ulf@564: private: Ulf@564: CARFAC(){}; Ulf@564: Ulf@564: }; Ulf@564: Ulf@564: #endif /* CARFAC_H_ */