Audaspace 1.5.0
A high level audio library.
|
This class represents a simple reader from a buffer that exists in memory. More...
#include <BufferReader.h>
Public Member Functions | |
BufferReader (std::shared_ptr< Buffer > buffer, Specs specs) | |
Creates a new buffer reader. | |
virtual bool | isSeekable () const |
Tells whether the source provides seeking functionality or not. | |
virtual void | seek (int position) |
Seeks to a specific position in the source. | |
virtual int | getLength () const |
Returns an approximated length of the source in samples. | |
virtual int | getPosition () const |
Returns the position of the source as a sample count value. | |
virtual Specs | getSpecs () const |
Returns the specification of the reader. | |
virtual void | read (int &length, bool &eos, sample_t *buffer) |
Request to read the next length samples out of the source. | |
Public Member Functions inherited from IReader | |
virtual | ~IReader () |
Destroys the reader. | |
This class represents a simple reader from a buffer that exists in memory.
Creates a new buffer reader.
buffer | The buffer to read from. |
specs | The specification of the sample data in the buffer. |
|
virtual |
Returns an approximated length of the source in samples.
Implements IReader.
|
virtual |
Returns the position of the source as a sample count value.
Implements IReader.
|
virtual |
|
virtual |
Tells whether the source provides seeking functionality or not.
Implements IReader.
|
virtual |
Request to read the next length samples out of the source.
The buffer supplied has the needed size.
[in,out] | length | The count of samples that should be read. Shall contain the real count of samples after reading, in case there were only fewer samples available. A smaller value also indicates the end of the reader. |
[out] | eos | End of stream, whether the end is reached or not. |
[in] | buffer | The pointer to the buffer to read into. |
Implements IReader.
|
virtual |
Seeks to a specific position in the source.
position | The position to seek for measured in samples. To get from a given time to the samples you simply have to multiply the time value in seconds with the sample rate of the reader. |
Implements IReader.