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

Plugin wave2spec interface class, uses wave2spec_t as runtime configuration. More...

Inheritance diagram for wave2spec_if_t:
Inheritance graph

Public Member Functions

 wave2spec_if_t (MHA_AC::algo_comm_t &iac, const std::string &configured_name)
 Constructor of wave2spec plugin, sets up configuration variables and callbacks. More...
 
void prepare (mhaconfig_t &t)
 prepare for signal processing More...
 
void release ()
 Unprepare signal processing. More...
 
void process (mha_wave_t *wave_in, mha_spec_t **sout)
 processing callback used for domain transformation More...
 
void process (mha_wave_t *wave_in, mha_wave_t **sout)
 processing callback used if output of original waveform is requested. More...
 
- Public Member Functions inherited from MHAPlugin::plugin_t< wave2spec_t >
 plugin_t (const std::string &, MHA_AC::algo_comm_t &)
 Constructor of plugin template base class. More...
 
virtual ~plugin_t ()
 Destructor of plugin template base class. More...
 
void prepare_ (mhaconfig_t &)
 
void release_ ()
 
bool is_prepared () const
 Flag, if the prepare method is successfully called (or currently evaluated) More...
 
mhaconfig_t input_cfg () const
 Current input channel configuration. More...
 
mhaconfig_t output_cfg () const
 Current output channel configuration. More...
 
- Public Member Functions inherited from MHAParser::parser_t
 parser_t (const std::string &help_text="")
 Construct detached node to be used in the configuration tree. More...
 
 ~parser_t ()
 
void insert_item (const std::string &, base_t *)
 Register a parser item into this sub-parser. More...
 
void remove_item (const std::string &)
 Remove an item by name. More...
 
void force_remove_item (const std::string &)
 Remove an item by name. More...
 
void remove_item (const base_t *)
 Remove an item by address. More...
 
- Public Member Functions inherited from MHAParser::base_t
 base_t (const std::string &)
 Constructor for base class of all parser nodes. More...
 
 base_t (const base_t &)
 Copy constructor for base_t. More...
 
base_toperator= (const base_t &)=default
 
 base_t (base_t &&)=delete
 
base_toperator= (base_t &&)=delete
 
virtual ~base_t ()
 
virtual std::string parse (const std::string &)
 Causes this node to process a command in the openMHA configuration language. More...
 
virtual void parse (const char *, char *, unsigned int)
 This function parses a command and writes the parsing result into a C character array. More...
 
virtual void parse (const std::vector< std::string > &, std::vector< std::string > &)
 
virtual std::string query_perm (const std::string &)
 
virtual std::string query_range (const std::string &)
 
std::string query_version (const std::string &)
 
std::string query_id (const std::string &)
 
std::string query_subst (const std::string &)
 
std::string query_addsubst (const std::string &)
 
std::string query_help (const std::string &)
 
std::string query_cmds (const std::string &)
 
void set_node_id (const std::string &)
 Set the identification string of this parser node. More...
 
void set_help (const std::string &)
 Set the help comment of a variable or parser. More...
 
void add_parent_on_insert (parser_t *, std::string)
 
void rm_parent_on_remove (parser_t *)
 
const std::string & fullname () const
 Return the full dot-separated path name of this parser node in the openMHA configuration tree. More...
 
- Public Member Functions inherited from MHAPlugin::config_t< runtime_cfg_t >
 config_t ()
 
 ~config_t ()
 

Private Member Functions

void update ()
 Create a new runtime configuration from configuration parameters when the plugin is prepared, or when the window position or other window parameters change. More...
 
void setlock (bool b)
 Lock/Unlock all configuration variables. More...
 

Private Attributes

MHAParser::int_t nfft
 FFT length selector. More...
 
MHAParser::int_t nwnd
 Window length selector. More...
 
MHAParser::float_t wndpos
 Window position selector. More...
 
windowselector_t window_config
 
MHAParser::bool_t strict_window_ratio
 Switch to disallow window sizes that are not a multiple of the fragsize a by power of two. More...
 
MHAParser::bool_t return_wave
 Switch to select return domain. More...
 
std::string algo
 configured name this plugin, used to name the AC variables More...
 
MHAParser::vfloat_mon_t zeropadding
 

Additional Inherited Members

- Public Attributes inherited from MHAParser::base_t
MHAEvents::emitter_t writeaccess
 Event emitted on write access. More...
 
MHAEvents::emitter_t valuechanged
 Event emitted if the value has changed. More...
 
MHAEvents::emitter_t readaccess
 Event emitted on read access. More...
 
MHAEvents::emitter_t prereadaccess
 Event emitted on read access, before the data field is accessed. More...
 
- Protected Member Functions inherited from MHAParser::parser_t
std::string op_subparse (expression_t &)
 
std::string op_setval (expression_t &)
 
std::string op_query (expression_t &)
 
std::string query_type (const std::string &)
 
std::string query_dump (const std::string &)
 
std::string query_entries (const std::string &)
 
std::string query_readfile (const std::string &)
 
std::string query_savefile (const std::string &)
 
std::string query_savefile_compact (const std::string &)
 
std::string query_savemons (const std::string &)
 
std::string query_val (const std::string &)
 
std::string query_listids (const std::string &)
 
void set_id_string (const std::string &)
 
bool has_entry (const std::string &)
 
- Protected Member Functions inherited from MHAParser::base_t
void activate_query (const std::string &, query_t)
 
void notify ()
 
- Protected Member Functions inherited from MHAPlugin::config_t< runtime_cfg_t >
runtime_cfg_t * poll_config ()
 Receive the latest run time configuration. More...
 
runtime_cfg_t * peek_config () const
 Receive the latest run time configuration without changing the configuration pointer. More...
 
void push_config (runtime_cfg_t *ncfg)
 Push a new run time configuration into the configuration fifo. More...
 
void cleanup_unused_cfg ()
 To be called by the push_config() for housekeeping. More...
 
void remove_all_cfg ()
 To be called on Plugin destruction, will delete all runtime configuration list nodes and objects regardless of their in_use flag. More...
 
- Protected Attributes inherited from MHAPlugin::plugin_t< wave2spec_t >
mhaconfig_t tftype
 Member for storage of plugin interface configuration. More...
 
MHA_AC::algo_comm_tac
 AC handle of the chain. More...
 
- Protected Attributes inherited from MHAParser::base_t
query_map_t queries
 
bool data_is_initialized
 
- Protected Attributes inherited from MHAPlugin::config_t< runtime_cfg_t >
runtime_cfg_t * cfg
 Pointer to the runtime configuration currently used by the signal processing thread. More...
 

Detailed Description

Plugin wave2spec interface class, uses wave2spec_t as runtime configuration.

Constructor & Destructor Documentation

◆ wave2spec_if_t()

wave2spec_if_t::wave2spec_if_t ( MHA_AC::algo_comm_t iac,
const std::string &  configured_name 
)

Constructor of wave2spec plugin, sets up configuration variables and callbacks.

Parameters
iacalgorithm communication storage accessor
ialgconfigured name of this plugin, used to name the AC variables published by wave2spec

Member Function Documentation

◆ prepare()

void wave2spec_if_t::prepare ( mhaconfig_t t)
virtual

prepare for signal processing

Parameters
[in,out]tsignal dimenstions, modified by prepare as determined by the STFT configuration

Implements MHAPlugin::plugin_t< wave2spec_t >.

◆ release()

void wave2spec_if_t::release ( void  )
virtual

Unprepare signal processing.

Reimplemented from MHAPlugin::plugin_t< wave2spec_t >.

◆ process() [1/2]

void wave2spec_if_t::process ( mha_wave_t wave_in,
mha_spec_t **  sout 
)

processing callback used for domain transformation

Parameters
wave_inlatest block of audio signal (hop size samples per channel)
soutoutput spectrum pointer

◆ process() [2/2]

void wave2spec_if_t::process ( mha_wave_t wave_in,
mha_wave_t **  sout 
)

processing callback used if output of original waveform is requested.

The STFT spectrum is computed and can only be accessed by downstream plugins through the AC variable published by this plugin.

Parameters
wave_inlatest block of audio signal (hop size samples per channel)
soutoutput waveform pointer (FFT length samples per channel)

◆ update()

void wave2spec_if_t::update ( )
private

Create a new runtime configuration from configuration parameters when the plugin is prepared, or when the window position or other window parameters change.

Exceptions
MHA_Errorif the configuration change is not compatible with the current input and FFT length constraints.

◆ setlock()

void wave2spec_if_t::setlock ( bool  b)
private

Lock/Unlock all configuration variables.

Parameters
bDesired lock state

Member Data Documentation

◆ nfft

MHAParser::int_t wave2spec_if_t::nfft
private

FFT length selector.

◆ nwnd

MHAParser::int_t wave2spec_if_t::nwnd
private

Window length selector.

◆ wndpos

MHAParser::float_t wave2spec_if_t::wndpos
private

Window position selector.

◆ window_config

windowselector_t wave2spec_if_t::window_config
private

◆ strict_window_ratio

MHAParser::bool_t wave2spec_if_t::strict_window_ratio
private

Switch to disallow window sizes that are not a multiple of the fragsize a by power of two.

◆ return_wave

MHAParser::bool_t wave2spec_if_t::return_wave
private

Switch to select return domain.

◆ algo

std::string wave2spec_if_t::algo
private

configured name this plugin, used to name the AC variables

◆ zeropadding

MHAParser::vfloat_mon_t wave2spec_if_t::zeropadding
private

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