The Open Master Hearing Aid (openMHA)  openMHA
Open community platform for hearing aid algorithm research
MHAFilter::o1flt_maxtrack_t Class Reference

First order maximum tracker. More...

Inheritance diagram for MHAFilter::o1flt_maxtrack_t:
Inheritance graph

Public Member Functions

 o1flt_maxtrack_t (const std::vector< mha_real_t > &, mha_real_t, mha_real_t=0)
 Constructor of low pass filter, sets sampling rate and time constants. More...
 
 o1flt_maxtrack_t (const std::vector< mha_real_t > &tau, mha_real_t fs, const std::vector< mha_real_t > &startval)
 
void set_tau (unsigned int ch, mha_real_t tau)
 change the time constant in one channel More...
 
void set_tau (mha_real_t tau)
 set time constant in all channels to tau More...
 
- Public Member Functions inherited from MHAFilter::o1flt_lowpass_t
 o1flt_lowpass_t (const std::vector< mha_real_t > &, mha_real_t, mha_real_t=0)
 Constructor of low pass filter, sets sampling rate and time constants. More...
 
 o1flt_lowpass_t (const std::vector< mha_real_t > &tau, mha_real_t fs, const std::vector< mha_real_t > &startval)
 Constructor of low pass filter, sets sampling rate and time constants. More...
 
void set_tau (unsigned int ch, mha_real_t tau)
 change the time constant in one channel More...
 
void set_tau (mha_real_t tau)
 set time constant in all channels to tau More...
 
mha_real_t get_c1 (unsigned int ch) const
 
mha_real_t get_last_output (unsigned int ch) const
 
- Public Member Functions inherited from MHAFilter::o1_ar_filter_t
 o1_ar_filter_t (unsigned int channels, mha_real_t fs=1.0f, std::vector< mha_real_t > tau_a=std::vector< float >(1, 0.0f), std::vector< mha_real_t > tau_r=std::vector< float >(1, 0.0f))
 Constructor, setting all taus to zero. More...
 
void set_tau_attack (unsigned int ch, mha_real_t tau)
 Set the attack time constant. More...
 
void set_tau_release (unsigned int ch, mha_real_t tau)
 Set the release time constant. More...
 
mha_real_t operator() (unsigned int ch, mha_real_t x)
 Apply filter to value x, using state channel ch. More...
 
void operator() (const mha_wave_t &in, mha_wave_t &out)
 Apply filter to a mha_wave_t data. More...
 
- Public Member Functions inherited from MHASignal::waveform_t
 waveform_t (const unsigned int &frames, const unsigned int &channels)
 constructor of waveform_t More...
 
 waveform_t (const mhaconfig_t &cf)
 Constructor to create a waveform from plugin configuration. More...
 
 waveform_t (const mha_wave_t &src)
 Copy contructor for mha_wave_t source. More...
 
 waveform_t (const MHASignal::waveform_t &src)
 Copy contructor. More...
 
 waveform_t (const std::vector< mha_real_t > &src)
 Copy contructor for std::vector<mha_real_t> source. More...
 
virtual ~waveform_t (void)
 
std::vector< mha_real_tflatten () const
 
 operator std::vector< mha_real_t > () const
 
void operator= (const mha_real_t &v)
 
mha_real_toperator[] (unsigned int k)
 
const mha_real_toperator[] (unsigned int k) const
 
mha_real_tvalue (unsigned int t, unsigned int ch)
 Element accessor. More...
 
mha_real_toperator() (unsigned int t, unsigned int ch)
 Element accessor. More...
 
const mha_real_tvalue (unsigned int t, unsigned int ch) const
 Constant element accessor. More...
 
const mha_real_toperator() (unsigned int t, unsigned int ch) const
 Constant element accessor. More...
 
mha_real_t sum (const unsigned int &a, const unsigned int &b)
 sum of all elements between [a,b) in all channels More...
 
mha_real_t sum (const unsigned int &a, const unsigned int &b, const unsigned int &ch)
 sum of all elements between [a,b) in channel ch More...
 
mha_real_t sum ()
 sum of all elements More...
 
mha_real_t sumsqr ()
 sum of square of all elements More...
 
mha_real_t sum_channel (const unsigned int &)
 return sum of all elements in one channel More...
 
void assign (const unsigned int &k, const unsigned int &ch, const mha_real_t &val)
 set frame "k" in channel "ch" to value "val" More...
 
void assign (const mha_real_t &)
 set all elements to value More...
 
void assign_frame (const unsigned int &k, const mha_real_t &val)
 assign value "val" to frame k in all channels More...
 
void assign_channel (const unsigned int &c, const mha_real_t &val)
 assign value "val" to channel ch in all frames More...
 
void copy (const std::vector< mha_real_t > &v)
 
void copy (const mha_wave_t &)
 copy data from source into current waveform More...
 
void copy (const mha_wave_t *)
 
void copy_channel (const mha_wave_t &, unsigned int, unsigned int)
 Copy one channel of a given waveform signal to a target channel. More...
 
void copy_from_at (unsigned int, unsigned int, const mha_wave_t &, unsigned int)
 Copy part of the source signal into part of this waveform object. More...
 
void export_to (mha_wave_t &)
 copy data into allocated mha_wave_t structure More...
 
void limit (const mha_real_t &min, const mha_real_t &max)
 limit target to range [min,max] More...
 
void power (const waveform_t &)
 transform waveform signal (in Pa) to squared signal (in W/m^2) More...
 
void powspec (const mha_spec_t &)
 get the power spectrum (in W/m^2) from a complex spectrum More...
 
void scale (const unsigned int &a, const unsigned int &b, const unsigned int &ch, const mha_real_t &val)
 scale section [a,b) in channel "ch" by "val" More...
 
void scale (const unsigned int &k, const unsigned int &ch, const mha_real_t &val)
 scale one element More...
 
void scale_channel (const unsigned int &, const mha_real_t &)
 scale one channel of target with a scalar More...
 
void scale_frame (const unsigned int &, const mha_real_t &)
 
unsigned int get_size () const
 

Additional Inherited Members

- Public Attributes inherited from mha_wave_t
mha_real_tbuf
 signal buffer More...
 
unsigned int num_channels
 number of channels More...
 
unsigned int num_frames
 number of frames in each channel More...
 
mha_channel_info_tchannel_info
 detailed channel description More...
 
- Protected Attributes inherited from MHAFilter::o1_ar_filter_t
MHASignal::waveform_t c1_a
 
MHASignal::waveform_t c2_a
 
MHASignal::waveform_t c1_r
 
MHASignal::waveform_t c2_r
 
mha_real_t fs
 

Detailed Description

First order maximum tracker.

Constructor & Destructor Documentation

◆ o1flt_maxtrack_t() [1/2]

MHAFilter::o1flt_maxtrack_t::o1flt_maxtrack_t ( const std::vector< mha_real_t > &  tau,
mha_real_t  fs,
mha_real_t  startval = 0 
)

Constructor of low pass filter, sets sampling rate and time constants.

Parameters
tauVector of time constants
fsSampling rate
startvalInitial internal state value

◆ o1flt_maxtrack_t() [2/2]

MHAFilter::o1flt_maxtrack_t::o1flt_maxtrack_t ( const std::vector< mha_real_t > &  tau,
mha_real_t  fs,
const std::vector< mha_real_t > &  startval 
)

Member Function Documentation

◆ set_tau() [1/2]

void MHAFilter::o1flt_maxtrack_t::set_tau ( unsigned int  ch,
mha_real_t  tau 
)

change the time constant in one channel

◆ set_tau() [2/2]

void MHAFilter::o1flt_maxtrack_t::set_tau ( mha_real_t  tau)

set time constant in all channels to tau


The documentation for this class was generated from the following files: