![]() |
The Open Master Hearing Aid (openMHA)
openMHA
Open community platform for hearing aid algorithm research
|
signal processing class for waveform data (based on mha_wave_t) More...

Public Member Functions | |
| 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_t > | flatten () const |
| operator std::vector< mha_real_t > () const | |
| void | operator= (const mha_real_t &v) |
| mha_real_t & | operator[] (unsigned int k) |
| const mha_real_t & | operator[] (unsigned int k) const |
| mha_real_t & | value (unsigned int t, unsigned int ch) |
| Element accessor. More... | |
| mha_real_t & | operator() (unsigned int t, unsigned int ch) |
| Element accessor. More... | |
| const mha_real_t & | value (unsigned int t, unsigned int ch) const |
| Constant element accessor. More... | |
| const mha_real_t & | operator() (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_t * | buf |
| 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_t * | channel_info |
| detailed channel description More... | |
signal processing class for waveform data (based on mha_wave_t)
| waveform_t::waveform_t | ( | const unsigned int & | frames, |
| const unsigned int & | channels | ||
| ) |
constructor of waveform_t
Allocates buffer memory and initializes values to zero.
| frames | number of frames in each channel |
| channels | number of channels |
|
explicit |
Constructor to create a waveform from plugin configuration.
| cf | Plugin configuration |
|
explicit |
Copy contructor for mha_wave_t source.
| waveform_t::waveform_t | ( | const MHASignal::waveform_t & | src | ) |
Copy contructor.
| waveform_t::waveform_t | ( | const std::vector< mha_real_t > & | src | ) |
Copy contructor for std::vector<mha_real_t> source.
A waveform structure with a single channel is created, the length is equal to the number of elements in the source vector.
|
virtual |
Reimplemented in MHA_AC::waveform_t.
| std::vector< mha_real_t > waveform_t::flatten | ( | ) | const |
|
explicit |
|
inline |
|
inline |
|
inline |
|
inline |
Element accessor.
| t | Frame number |
| ch | Channel number |
|
inline |
Element accessor.
| t | Frame number |
| ch | Channel number |
|
inline |
Constant element accessor.
| t | Frame number |
| ch | Channel number |
|
inline |
Constant element accessor.
| t | Frame number |
| ch | Channel number |
| mha_real_t waveform_t::sum | ( | const unsigned int & | a, |
| const unsigned int & | b | ||
| ) |
sum of all elements between [a,b) in all channels
| a | starting frame |
| b | end frame (excluded) |
| mha_real_t waveform_t::sum | ( | const unsigned int & | a, |
| const unsigned int & | b, | ||
| const unsigned int & | ch | ||
| ) |
sum of all elements between [a,b) in channel ch
| a | starting frame |
| b | end frame (exluded) |
| ch | channel number |
| mha_real_t waveform_t::sum | ( | ) |
sum of all elements
| mha_real_t waveform_t::sumsqr | ( | ) |
sum of square of all elements
| mha_real_t waveform_t::sum_channel | ( | const unsigned int & | ch | ) |
return sum of all elements in one channel
| ch | channel number |
| void waveform_t::assign | ( | const unsigned int & | k, |
| const unsigned int & | ch, | ||
| const mha_real_t & | val | ||
| ) |
set frame "k" in channel "ch" to value "val"
| k | frame number |
| ch | channel number |
| val | new value |
| void waveform_t::assign | ( | const mha_real_t & | val | ) |
set all elements to value
| val | new value |
| void waveform_t::assign_frame | ( | const unsigned int & | k, |
| const mha_real_t & | val | ||
| ) |
assign value "val" to frame k in all channels
| k | frame number |
| val | new value |
| void waveform_t::assign_channel | ( | const unsigned int & | ch, |
| const mha_real_t & | val | ||
| ) |
assign value "val" to channel ch in all frames
| ch | channel number |
| val | new value |
| void waveform_t::copy | ( | const std::vector< mha_real_t > & | v | ) |
| void waveform_t::copy | ( | const mha_wave_t & | src | ) |
copy data from source into current waveform
| src | input data (need to be same size as target) |
| void waveform_t::copy | ( | const mha_wave_t * | src | ) |
| void waveform_t::copy_channel | ( | const mha_wave_t & | src, |
| unsigned int | src_channel, | ||
| unsigned int | dest_channel | ||
| ) |
Copy one channel of a given waveform signal to a target channel.
| src | Input waveform signal |
| src_channel | Channel in source signal |
| dest_channel | Channel number in destination signal |
| void waveform_t::copy_from_at | ( | unsigned int | to_pos, |
| unsigned int | len, | ||
| const mha_wave_t & | src, | ||
| unsigned int | from_pos | ||
| ) |
Copy part of the source signal into part of this waveform object.
Source and target have to have the same number of channels.
| to_pos | Offset in target |
| len | Number of frames copied |
| src | Source |
| from_pos | Offset in source |
| void waveform_t::export_to | ( | mha_wave_t & | dest | ) |
copy data into allocated mha_wave_t structure
| dest | destination structure |
| void waveform_t::limit | ( | const mha_real_t & | min, |
| const mha_real_t & | max | ||
| ) |
limit target to range [min,max]
| min | lower limit |
| max | upper limit |
| void waveform_t::power | ( | const waveform_t & | src | ) |
transform waveform signal (in Pa) to squared signal (in W/m^2)
| src | linear waveform signal (in Pa) |
| void waveform_t::powspec | ( | const mha_spec_t & | src | ) |
get the power spectrum (in W/m^2) from a complex spectrum
| src | complex spectrum (normalized to Pa) |
| void waveform_t::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"
| a | starting frame |
| b | end frame (excluded) |
| ch | channel number |
| val | scale factor |
| void waveform_t::scale | ( | const unsigned int & | k, |
| const unsigned int & | ch, | ||
| const mha_real_t & | val | ||
| ) |
scale one element
| k | frame number |
| ch | channel number |
| val | scale factor |
| void waveform_t::scale_channel | ( | const unsigned int & | ch, |
| const mha_real_t & | src | ||
| ) |
scale one channel of target with a scalar
| ch | channel number |
| src | factor |
| void waveform_t::scale_frame | ( | const unsigned int & | frame, |
| const mha_real_t & | val | ||
| ) |
|
inline |