![]() |
The Open Master Hearing Aid (openMHA)
openMHA
Open community platform for hearing aid algorithm research
|
Posix threads specification of thread platform. More...

Public Member Functions | |
| void | kick_thread () |
| Start signal processing in separate thread. More... | |
| void | catch_thread () |
| Wait for signal processing to finish. More... | |
| posix_threads_t (uni_processor_t *proc, const std::string &thread_scheduler, int thread_priority) | |
| Constructor. More... | |
| ~posix_threads_t () | |
| Terminate thread. More... | |
| void | main () |
| Thread main loop. Wait for process/termination trigger, then act. More... | |
Public Member Functions inherited from MHAPlugin_Split::thread_platform_t | |
| thread_platform_t (uni_processor_t *proc) | |
| Constructor. More... | |
| virtual | ~thread_platform_t () |
| Make derived classes destructable via pointer to this base class. More... | |
Static Public Member Functions | |
| static void * | thread_start (void *thr) |
| Thread start function. More... | |
| static std::string | current_thread_scheduler () |
| static int | current_thread_priority () |
Private Attributes | |
| pthread_mutex_t | mutex |
| The mutex. More... | |
| pthread_cond_t | kick_condition |
| The condition for signalling the kicking and termination. More... | |
| pthread_cond_t | catch_condition |
| The condition for signalling the processing is finished. More... | |
| pthread_attr_t | attr |
| Thread attributes. More... | |
| struct sched_param | priority |
| Thread scheduling priority. More... | |
| int | scheduler |
| pthread_t | thread |
| The thread object. More... | |
| bool | kicked |
| A flag that is set to true by kick_thread and to false by the thread after it has woken up from the kicking. More... | |
| bool | processing_done |
| A flag that is set to true by the thread when it returns from processing and to false by catch_thread after it has waited for that return. More... | |
| bool | termination_request |
| Set to true by the destructor. More... | |
Additional Inherited Members | |
Protected Attributes inherited from MHAPlugin_Split::thread_platform_t | |
| uni_processor_t * | processor |
| A pointer to the plugin loader that processes the sound data in the channels for which this thread was created. More... | |
Posix threads specification of thread platform.
|
inline |
Constructor.
| proc | Pointer to the associated signal processor instance |
| thread_scheduler | A string describing the posix thread scheduler. Possible values: "SCHED_OTHER", "SCHED_RR", "SCHED_FIFO". |
| thread_priority | The scheduling priority of the new thread. |
|
inline |
Terminate thread.
|
inlinevirtual |
Start signal processing in separate thread.
Implements MHAPlugin_Split::thread_platform_t.
|
inlinevirtual |
Wait for signal processing to finish.
Implements MHAPlugin_Split::thread_platform_t.
|
inlinestatic |
Thread start function.
|
inline |
Thread main loop. Wait for process/termination trigger, then act.
|
inlinestatic |
|
inlinestatic |
|
private |
The mutex.
|
private |
The condition for signalling the kicking and termination.
|
private |
The condition for signalling the processing is finished.
|
private |
Thread attributes.
|
private |
Thread scheduling priority.
|
private |
|
private |
The thread object.
|
private |
A flag that is set to true by kick_thread and to false by the thread after it has woken up from the kicking.
|
private |
A flag that is set to true by the thread when it returns from processing and to false by catch_thread after it has waited for that return.
|
private |
Set to true by the destructor.