Ulf@477: #include "CARFAC.h" Ulf@477: #include "CAR.h" Ulf@477: #include "IHC.h" Ulf@477: #include "AGC.h" Ulf@477: Ulf@477: #include "CARFAC_common_typedefs.h" Ulf@477: Ulf@477: CARFAC::CARFAC(int fs = DEFAULT_FS, Ulf@478: CAR_parameters* _CAR_params = new CAR_parameters(), Ulf@478: IHC_parameters* _IHC_params = new IHC_parameters(), Ulf@478: AGC_parameters* _AGC_params = new AGC_parameters(), Ulf@477: float ERB_break_freq = DEFAULT_ERB_break_freq, Ulf@477: float ERB_Q = DEFAULT_ERB_Q){ Ulf@477: Ulf@480: // for now, design is to take ownership. Preferences? Make copies, call by value, etc? Ulf@477: CAR_params = _CAR_params; Ulf@477: IHC_params = _IHC_params; Ulf@477: AGC_params = _AGC_params; Ulf@477: Ulf@480: FloatArray pole_freqs; //TODO: do it Ulf@478: CAR_coeffs = new CAR_coefficients(CAR_params, fs, pole_freqs); Ulf@477: Ulf@481: int n_ch = 10; // TODO: do the design loops Ulf@481: AGC_coeffs = new AGC_coefficients(AGC_params, fs, n_ch); Ulf@481: Ulf@481: IHC_coeffs = new IHC_coefficients(IHC_params, fs, n_ch); Ulf@477: } Ulf@477: Ulf@477: CARFAC::~CARFAC() { Ulf@478: delete CAR_coeffs; Ulf@481: //delete CAR_params; Ulf@478: Ulf@478: delete IHC_coeffs; Ulf@481: //delete IHC_params; Ulf@478: Ulf@478: delete AGC_coeffs; Ulf@481: //delete AGC_params; Ulf@477: }