|
AudioDataLib
A C++ library of classes supporting a variety of audio-data tasks.
|
This stream is designed to act as a FIFO queue of audio data of a particular format. More...
#include <ByteStream.h>
Public Member Functions | |
| AudioStream () | |
| AudioStream (const AudioData *audioData) | |
| virtual | ~AudioStream () |
| virtual uint64_t | WriteBytesToStream (const uint8_t *buffer, uint64_t bufferSize) override |
| virtual uint64_t | ReadBytesFromStream (uint8_t *buffer, uint64_t bufferSize) override |
| virtual uint64_t | GetSize () const override |
| virtual bool | CanRead () override |
| virtual bool | CanWrite () override |
| const AudioData::Format & | GetFormat () const |
| void | SetFormat (const AudioData::Format &format) |
Public Member Functions inherited from AudioDataLib::ByteStream | |
| ByteStream () | |
| virtual | ~ByteStream () |
| virtual uint64_t | PeekBytesFromStream (uint8_t *buffer, uint64_t bufferSize) |
| template<typename T > | |
| bool | ReadType (T *value) |
| template<typename T > | |
| bool | WriteType (const T *value) |
Protected Attributes | |
| AudioData::Format | format |
| ByteStream * | byteStream |
This stream is designed to act as a FIFO queue of audio data of a particular format.
This class by itself often acts, single-handedly, as the glue between this library and one that interfaces with the actual audio hardware. The low-level library will dicate the stream format, and then this library will accommodate that format. The low-level library reads from (or writes to) this stream while this library writes to (or reads from) it.
| AudioStream::AudioStream | ( | ) |
| AudioStream::AudioStream | ( | const AudioData * | audioData | ) |
|
virtual |
|
overridevirtual |
Indicate whether there is data available to be read from the stream.
Implements AudioDataLib::ByteStream.
Reimplemented in AudioDataLib::ThreadSafeAudioStream.
|
overridevirtual |
Indicate whether it is possible to write additional data to the stream.
Implements AudioDataLib::ByteStream.
Reimplemented in AudioDataLib::ThreadSafeAudioStream.
|
inline |
|
overridevirtual |
Return the amount of data (in bytes) currently stored in the stream.
Implements AudioDataLib::ByteStream.
Reimplemented in AudioDataLib::ThreadSafeAudioStream.
|
overridevirtual |
Read from this stream into the given buffer.
| [out] | buffer | This is a pointer to an array where bytes read from the stream will be written. |
| [in] | bufferSize | This is the size in bytes of the given array. |
Implements AudioDataLib::ByteStream.
Reimplemented in AudioDataLib::ThreadSafeAudioStream.
|
inline |
|
overridevirtual |
Write the given buffer to this stream.
| [in] | buffer | This is a pointer to the array of bytes to write to the stream. |
| [in] | bufferSize | This is the size of the given array in bytes. |
Implements AudioDataLib::ByteStream.
Reimplemented in AudioDataLib::ThreadSafeAudioStream.
|
protected |
|
protected |