arduino-audio-tools
Classes

Multicore support. More...

Classes

class  BufferRP2040T< T >
 Buffer implementation which is based on a RP2040 queue. This class is intended to be used to exchange data between the 2 different cores. Multi-core and IRQ safe queue implementation! More...
 
class  BufferRTOS< T >
 Buffer implementation which is using a FreeRTOS StreamBuffer. The default allocator uses psram is available. More...
 
class  LockGuard
 RAII implementaion using a Mutex: Only a few microcontrollers provide lock guards, so I decided to roll my own solution where we can just use a dummy Mutex implementation that does nothing for the cases where this is not needed. More...
 
class  MutexBase
 Empty Mutex implementation which does nothing. More...
 
class  MutexRP2040
 Mutex API for non IRQ mutual exclusion between cores. Mutexes are application level locks usually used protecting data structures that might be used by multiple threads of execution. Unlike critical sections, the mutex protected code is not necessarily required/expected to complete quickly, as no other sytem wide locks are held on account of an acquired mutex. More...
 
class  MutexRTOS
 Mutex implemntation using FreeRTOS. More...
 
class  NoInterruptHandler
 Disable, enable interrupts (only on the actual core) More...
 
class  QueueRTOS< T >
 FIFO Queue whch is based on the FreeRTOS queue API. The default allocator will allocate the memory from psram if available. More...
 
class  SynchronizedBuffer< T >
 Wrapper class that can turn any Buffer into a thread save implementation. More...
 
class  SynchronizedNBufferRTOST< T >
 NBuffer which uses some RTOS queues to manage the available and filled buffers. More...
 
class  Task
 FreeRTOS task. More...
 

Detailed Description

Multicore support.