annotate 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
rev   line source
Ulf@564 1 #ifndef CARFAC_H_
Ulf@564 2 #define CARFAC_H_
Ulf@564 3
Ulf@564 4 #include "CAR.h"
Ulf@564 5 #include "IHC.h"
Ulf@564 6 #include "AGC.h"
Ulf@564 7 #include "Ear.h"
Ulf@564 8 #include <vector>
Ulf@564 9
Ulf@564 10 const double kDefaultFs = 22050;
Ulf@564 11
Ulf@564 12 class CARFAC{
Ulf@564 13 public:
Ulf@590 14 CARFAC(int fs,
Ulf@590 15 CAR_parameters* car_params,
Ulf@590 16 IHC_parameters* ihc_params,
Ulf@590 17 AGC_parameters* agc_params,
Ulf@590 18 int n_ears);
Ulf@564 19
Ulf@564 20 float fs_;
Ulf@564 21
Ulf@564 22 int n_ch_; // these three, push down to ear level?
Ulf@564 23 float max_channels_per_octave_;
Ulf@564 24 FloatArray pole_freqs_;
Ulf@564 25
Ulf@564 26 int n_ears_;
Ulf@564 27 std::vector<Ear> ears_;
Ulf@564 28
Ulf@564 29 private:
Ulf@564 30
Ulf@564 31 };
Ulf@564 32
Ulf@564 33 #endif /* CARFAC_H_ */