Ulf@477: #ifndef AGC_H_ Ulf@477: #define AGC_H_ Ulf@477: Ulf@479: #include "CARFAC_common_typedefs.h" Ulf@479: Ulf@477: class AGC_parameters { Ulf@477: public: Ulf@483: AGC_parameters() Ulf@483: { Ulf@483: n_stages_ = 4; // redundant? Ulf@483: time_constants_ = {0.002*1, 0.002*4, 0.002*16, 0.002*64}; Ulf@483: agc_stage_gain_ = 2; Ulf@483: decimation_ = {8, 2, 2, 2}; Ulf@483: agc1_scales_ = {1.0, 1.4, 2.0, 2.8}; Ulf@483: agc2_scales_ = {1.6, 2.25, 3.2, 4.5}; Ulf@483: detect_scale_ = 0.25; Ulf@483: agc_mix_coeff_ = 0.5; Ulf@483: } Ulf@479: Ulf@483: virtual ~AGC_parameters(){} Ulf@480: Ulf@483: int n_stages_; Ulf@483: FloatArray time_constants_; Ulf@483: float agc_stage_gain_; Ulf@483: FloatArray decimation_; Ulf@483: FloatArray agc1_scales_; Ulf@483: FloatArray agc2_scales_; Ulf@483: float detect_scale_; Ulf@483: float agc_mix_coeff_; Ulf@477: }; Ulf@477: Ulf@477: class AGC_coefficients { Ulf@477: public: Ulf@483: AGC_coefficients(AGC_parameters*, float, int); Ulf@483: virtual ~AGC_coefficients(); Ulf@481: private: Ulf@483: AGC_coefficients(){} Ulf@477: }; Ulf@477: Ulf@477: #endif /* AGC_H_ */