|
Sound Byte Libs 1ee2ca6
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
|
Lock-free ring buffer for ISR-safe communication. More...
#include <cstdint>Go to the source code of this file.
Classes | |
| class | sbl::core::primitives::buffers::RingBuffer< T, Size, MemoryBarrierImpl > |
| Lock-free single-producer-single-consumer ring buffer. More... | |
Namespaces | |
| namespace | sbl |
| Root namespace for all Sound Byte Libs functionality. | |
| namespace | sbl::common |
| namespace | sbl::common::types |
| namespace | sbl::core |
| namespace | sbl::core::primitives |
| namespace | sbl::core::primitives::buffers |
Typedefs | |
| template<typename MemoryBarrierImpl > | |
| using | sbl::core::primitives::buffers::AudioSampleBuffer = RingBuffer< int16_t, 512, MemoryBarrierImpl > |
| Type alias for common audio sample buffer - ARM-optimized sizing. | |
| template<typename MemoryBarrierImpl > | |
| using | sbl::core::primitives::buffers::MidiEventBuffer = RingBuffer< uint8_t, 128, MemoryBarrierImpl > |
| Type alias for MIDI event buffer - ARM-optimized sizing. | |
| template<typename EventType , typename MemoryBarrierImpl > | |
| using | sbl::core::primitives::buffers::EventBuffer = RingBuffer< EventType, 64, MemoryBarrierImpl > |
| Type alias for general event buffer - ARM-optimized sizing. | |
Lock-free ring buffer for ISR-safe communication.
Provides single-producer-single-consumer (SPSC) ring buffer for safe communication between interrupt service routines and main thread without blocking or corruption.
Essential for audio applications where data must flow between interrupts and processing threads without blocking the interrupt handler.
Definition in file ring_buffer.hpp.