AUI Framework  master
Cross-platform base for C++ UI apps
Loading...
Searching...
No Matches
AWavSoundStream Class Reference

Sound stream for WAV format.

#include <AUI/Audio/Formats/wav/AWavSoundStream.h>

Public Member Functions#

 AWavSoundStream (aui::non_null< _unique< IInputStream > > stream)
 
AAudioFormat info () override
 Get general info about sound stream.
 
size_t read (char *dst, size_t size) override
 Reads up to size bytes from stream. Blocking (waiting for new data) is allowed.
 
- Public Member Functions inherited from IInputStream
size_t read (std::span< std::byte > destination)
 Reads up to destination.size() bytes from stream. Blocking (waiting for new data) is allowed.
 
void readExact (char *dst, size_t size)
 Reads exact size bytes from stream. Blocking (waiting for new data) is allowed.
 
template<typename T>
deserialize ()
 
template<typename T>
IInputStreamoperator>> (T &dst)
 
template<typename T>
IInputStreamoperator>> (T &&dst)
 

Additional Inherited Members#

- Static Public Member Functions inherited from ISoundInputStream
static _< ISoundInputStreamfromUrl (const AUrl &url)
 

Member Function Documentation#

◆ info()#

AAudioFormat AWavSoundStream::info ( )
overridevirtual
Returns
AAudioFormat containing info about sound stream

Implements ISoundInputStream.

◆ read()#

size_t AWavSoundStream::read ( char * dst,
size_t size )
overridevirtual
Sneaky exceptions
An implementation can throw any exception that subclasses AIOException.
Parameters
dstdestination buffer
sizedestination buffer's size. > 0
Returns
number of read bytes (including 0)

Implements IInputStream.