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

Main class for Portaudio sound IO. More...

Inheritance diagram for MHAIOPortAudio::io_portaudio_t:
Inheritance graph

Public Member Functions

 io_portaudio_t (unsigned int fragsize, float samplerate, IOProcessEvent_t proc_event, void *proc_handle, IOStartedEvent_t start_event, void *start_handle, IOStoppedEvent_t stop_event, void *stop_handle)
 
void device_name_in_updated ()
 
void device_name_out_updated ()
 
void device_index_in_updated ()
 
void device_index_out_updated ()
 
 ~io_portaudio_t ()
 
void cmd_prepare (int, int)
 
void cmd_start ()
 
void cmd_stop ()
 
void cmd_release ()
 
int portaudio_callback (const void *input, void *output, unsigned long frame_count, const PaStreamCallbackTimeInfo *time_info, PaStreamCallbackFlags status_flags)
 
- 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...
 

Private Attributes

device_info_t device_info
 
stream_info_t stream_info
 
MHASignal::waveform_ts_in
 
mha_wave_ts_out
 
float samplerate
 
unsigned int nchannels_out
 
unsigned int nchannels_in
 
unsigned int fragsize
 
IOProcessEvent_t proc_event
 
void * proc_handle
 
IOStartedEvent_t start_event
 
void * start_handle
 
IOStoppedEvent_t stop_event
 
void * stop_handle
 
PaStream * portaudio_stream
 
MHAParser::string_t device_name_in
 
MHAParser::int_t device_index_in
 
MHAParser::string_t device_name_out
 
MHAParser::int_t device_index_out
 
MHAParser::float_t suggestedInputLatency
 
MHAParser::float_t suggestedOutputLatency
 
MHAEvents::patchbay_t< io_portaudio_tpatchbay
 

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 Attributes inherited from MHAParser::base_t
query_map_t queries
 
bool data_is_initialized
 

Detailed Description

Main class for Portaudio sound IO.

Constructor & Destructor Documentation

◆ io_portaudio_t()

MHAIOPortAudio::io_portaudio_t::io_portaudio_t ( unsigned int  fragsize,
float  samplerate,
IOProcessEvent_t  proc_event,
void *  proc_handle,
IOStartedEvent_t  start_event,
void *  start_handle,
IOStoppedEvent_t  stop_event,
void *  stop_handle 
)
inline

◆ ~io_portaudio_t()

MHAIOPortAudio::io_portaudio_t::~io_portaudio_t ( )
inline

Member Function Documentation

◆ device_name_in_updated()

void MHAIOPortAudio::io_portaudio_t::device_name_in_updated ( )
inline

◆ device_name_out_updated()

void MHAIOPortAudio::io_portaudio_t::device_name_out_updated ( )
inline

◆ device_index_in_updated()

void MHAIOPortAudio::io_portaudio_t::device_index_in_updated ( )
inline

◆ device_index_out_updated()

void MHAIOPortAudio::io_portaudio_t::device_index_out_updated ( )
inline

◆ cmd_prepare()

void MHAIOPortAudio::io_portaudio_t::cmd_prepare ( int  nchannels_in,
int  nchannels_out 
)

◆ cmd_start()

void MHAIOPortAudio::io_portaudio_t::cmd_start ( )

◆ cmd_stop()

void MHAIOPortAudio::io_portaudio_t::cmd_stop ( )

◆ cmd_release()

void MHAIOPortAudio::io_portaudio_t::cmd_release ( )

◆ portaudio_callback()

int MHAIOPortAudio::io_portaudio_t::portaudio_callback ( const void *  input,
void *  output,
unsigned long  frame_count,
const PaStreamCallbackTimeInfo *  time_info,
PaStreamCallbackFlags  status_flags 
)

Member Data Documentation

◆ device_info

device_info_t MHAIOPortAudio::io_portaudio_t::device_info
private

◆ stream_info

stream_info_t MHAIOPortAudio::io_portaudio_t::stream_info
private

◆ s_in

MHASignal::waveform_t* MHAIOPortAudio::io_portaudio_t::s_in
private

◆ s_out

mha_wave_t* MHAIOPortAudio::io_portaudio_t::s_out
private

◆ samplerate

float MHAIOPortAudio::io_portaudio_t::samplerate
private

◆ nchannels_out

unsigned int MHAIOPortAudio::io_portaudio_t::nchannels_out
private

◆ nchannels_in

unsigned int MHAIOPortAudio::io_portaudio_t::nchannels_in
private

◆ fragsize

unsigned int MHAIOPortAudio::io_portaudio_t::fragsize
private

◆ proc_event

IOProcessEvent_t MHAIOPortAudio::io_portaudio_t::proc_event
private

◆ proc_handle

void* MHAIOPortAudio::io_portaudio_t::proc_handle
private

◆ start_event

IOStartedEvent_t MHAIOPortAudio::io_portaudio_t::start_event
private

◆ start_handle

void* MHAIOPortAudio::io_portaudio_t::start_handle
private

◆ stop_event

IOStoppedEvent_t MHAIOPortAudio::io_portaudio_t::stop_event
private

◆ stop_handle

void* MHAIOPortAudio::io_portaudio_t::stop_handle
private

◆ portaudio_stream

PaStream* MHAIOPortAudio::io_portaudio_t::portaudio_stream
private

◆ device_name_in

MHAParser::string_t MHAIOPortAudio::io_portaudio_t::device_name_in
private

◆ device_index_in

MHAParser::int_t MHAIOPortAudio::io_portaudio_t::device_index_in
private

◆ device_name_out

MHAParser::string_t MHAIOPortAudio::io_portaudio_t::device_name_out
private

◆ device_index_out

MHAParser::int_t MHAIOPortAudio::io_portaudio_t::device_index_out
private

◆ suggestedInputLatency

MHAParser::float_t MHAIOPortAudio::io_portaudio_t::suggestedInputLatency
private

◆ suggestedOutputLatency

MHAParser::float_t MHAIOPortAudio::io_portaudio_t::suggestedOutputLatency
private

◆ patchbay

MHAEvents::patchbay_t<io_portaudio_t> MHAIOPortAudio::io_portaudio_t::patchbay
private

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