|
arduino-audio-tools
|
A NBufferExt is a subclass of NBuffer which allows to use a direct access API to the BaseBuffer. More...
#include <Buffers.h>
Public Member Functions | |
| NBufferExt (int size, int count) | |
| T * | address () |
| returns the address of the start of the phsical read buffer | |
| int | available () |
| determines the available entries for the current read buffer | |
| int | availableForWrite () |
| determines the available entries for the write buffer | |
| virtual int | bufferCountEmpty () |
| Provides the number of entries that are available to write. | |
| virtual int | bufferCountFilled () |
| Provides the number of entries that are available to read. | |
| void | clear () |
| same as reset | |
| virtual int | clearArray (int len) |
| Removes the next len entries. | |
| SingleBuffer< T > * | getBuffer (int id) |
| Provides the buffer with the indicated id. | |
| bool | isEmpty () |
| bool | isFull () |
| checks if the buffer is full | |
| virtual float | levelPercent () |
| Returns the level of the buffer in %. | |
| bool | peek (T &result) override |
| peeks the actual entry from the buffer | |
| bool | read (T &result) override |
| reads an entry from the buffer | |
| virtual int | readArray (T data[], int len) |
| reads multiple values | |
| SingleBuffer< T > * | readEnd () |
| void | reset () |
| resets all buffers | |
| virtual bool | resize (int bytes) |
| Resizes the buffer if supported: returns false if not supported. | |
| virtual bool | resize (int size, int count) |
| Resize the buffers by defining a new buffer size and buffer count. | |
| unsigned long | sampleRate () |
| provides the actual sample rate | |
| size_t | size () |
| Provides the total capacity (=buffer size * buffer count) | |
| bool | write (T data) |
| write add an entry to the buffer | |
| virtual int | writeArray (const T data[], int len) |
| Fills the buffer data. | |
| virtual int | writeArrayOverwrite (const T data[], int len) |
| Fills the buffer data and overwrites the oldest data if the buffer is full. | |
| SingleBuffer< T > * | writeEnd () |
Protected Member Functions | |
| virtual bool | addAvailableBuffer (BaseBuffer< T > *buffer) |
| virtual bool | addFilledBuffer (BaseBuffer< T > *buffer) |
| void | freeMemory () |
| virtual BaseBuffer< T > * | getNextAvailableBuffer () |
| virtual BaseBuffer< T > * | getNextFilledBuffer () |
| void | resetCurrent () |
Protected Attributes | |
| BaseBuffer< T > * | actual_read_buffer = nullptr |
| BaseBuffer< T > * | actual_write_buffer = nullptr |
| QueueFromVector< BaseBuffer< T > * > | available_buffers {0, nullptr} |
| uint16_t | buffer_count = 0 |
| int | buffer_size = 1024 |
| QueueFromVector< BaseBuffer< T > * > | filled_buffers {0, nullptr} |
| unsigned long | sample_count = 0 |
| unsigned long | start_time = 0 |
A NBufferExt is a subclass of NBuffer which allows to use a direct access API to the BaseBuffer.
| T | buffered data type |
|
inline |
|
inlineprotectedvirtualinherited |
Reimplemented in SynchronizedNBufferRTOST< T >.
|
inlineprotectedvirtualinherited |
Reimplemented in SynchronizedNBufferRTOST< T >.
returns the address of the start of the phsical read buffer
Implements BaseBuffer< T >.
determines the available entries for the current read buffer
Implements BaseBuffer< T >.
determines the available entries for the write buffer
Implements BaseBuffer< T >.
Provides the number of entries that are available to write.
Reimplemented in SynchronizedNBufferRTOST< T >.
Provides the number of entries that are available to read.
Reimplemented in SynchronizedNBufferRTOST< T >.
Removes the next len entries.
Reimplemented in SingleBuffer< T >, SingleBuffer< float >, SingleBuffer< int16_t >, SingleBuffer< int32_t >, SingleBuffer< stsz_sample_size_t >, SingleBuffer< T >, SingleBuffer< uint32_t >, and SingleBuffer< uint8_t >.
|
inline |
Provides the buffer with the indicated id.
|
inlineprotectedvirtualinherited |
Reimplemented in SynchronizedNBufferRTOST< T >.
|
inlineprotectedvirtualinherited |
Reimplemented in SynchronizedNBufferRTOST< T >.
checks if the buffer is full
Reimplemented from BaseBuffer< T >.
Returns the level of the buffer in %.
peeks the actual entry from the buffer
Implements BaseBuffer< T >.
reads an entry from the buffer
Implements BaseBuffer< T >.
reads multiple values
Reimplemented in RingBufferFile< File, T >, BufferRTOS< T >, SynchronizedBuffer< T >, RedisBuffer< T >, BufferRP2040T< T >, NBufferFile< File, T >, and DynamicMultiBuffer< T, BufferType >.
|
inline |
Alternative interface using address: provides access to the next read buffer
resets all buffers
Implements BaseBuffer< T >.
Resizes the buffer if supported: returns false if not supported.
Reimplemented from BaseBuffer< T >.
Resize the buffers by defining a new buffer size and buffer count.
Reimplemented in SynchronizedNBufferRTOST< T >.
provides the actual sample rate
Provides the total capacity (=buffer size * buffer count)
Implements BaseBuffer< T >.
Reimplemented in SynchronizedNBufferRTOST< T >.
write add an entry to the buffer
Implements BaseBuffer< T >.
Fills the buffer data.
Reimplemented in BufferRTOS< T >, SynchronizedBuffer< T >, RedisBuffer< T >, BufferRP2040T< T >, SingleBuffer< T >, SingleBuffer< T >, RingBufferFile< File, T >, NBufferFile< File, T >, and DynamicMultiBuffer< T, BufferType >.
Fills the buffer data and overwrites the oldest data if the buffer is full.
|
inline |
Alternative interface: Provides access to the next write buffer
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |