arduino-audio-tools
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
audio_tools::MemoryStream Class Reference

A simple Stream implementation which is backed by allocated memory. More...

#include <AudioStreams.h>

Inheritance diagram for audio_tools::MemoryStream:
audio_tools::AudioStream Stream audio_tools::AudioBaseInfoDependent audio_tools::AudioBaseInfoSource Print

Public Member Functions

 MemoryStream (const uint8_t *buffer, int buffer_size, MemoryType memoryType=FLASH_RAM)
 
 MemoryStream (int buffer_size=512, MemoryType memoryType=RAM)
 
virtual int available () override
 
virtual int availableForWrite () override
 
bool begin () override
 
virtual void clear (bool reset=false)
 clears the audio data: sets all values to 0
 
virtual uint8_t * data ()
 
virtual void end () override
 
virtual void flush () override
 
virtual int peek () override
 
virtual int read () override
 
virtual size_t readBytes (uint8_t *buffer, size_t length) override
 
virtual void resize (size_t size)
 
virtual void setLoop (bool loop)
 
void setRewindCallback (void(*cb)())
 
virtual size_t write (const uint8_t *buffer, size_t size) override
 
virtual size_t write (uint8_t byte) override
 
- Public Member Functions inherited from audio_tools::AudioStream
 AudioStream (AudioStream const &)=delete
 
virtual AudioBaseInfo audioInfo () override
 
virtual int availableForWrite () override
 
virtual bool begin ()
 
virtual void end ()
 
virtual void flush ()
 
 operator bool ()
 
AudioStreamoperator= (AudioStream const &)=delete
 
virtual size_t readBytes (char *buffer, size_t length)
 
virtual size_t readBytes (uint8_t *buffer, size_t length)=0
 
virtual void setAudioInfo (AudioBaseInfo info)
 
virtual void setNotifyAudioChange (AudioBaseInfoDependent &bi)
 
virtual size_t write (const uint8_t *buffer, size_t size)=0
 
- Public Member Functions inherited from Stream
virtual int available ()=0
 
bool find (char target)
 
bool find (const char *target)
 
bool find (const char *target, size_t length)
 
bool find (const uint8_t *target)
 
bool find (const uint8_t *target, size_t length)
 
bool findUntil (const char *target, const char *terminator)
 
bool findUntil (const char *target, size_t targetLen, const char *terminate, size_t termLen)
 
bool findUntil (const uint8_t *target, const char *terminator)
 
bool findUntil (const uint8_t *target, size_t targetLen, const char *terminate, size_t termLen)
 
unsigned long getTimeout (void)
 
float parseFloat (LookaheadMode lookahead=SKIP_ALL, char ignore=NO_IGNORE_CHAR)
 
long parseInt (LookaheadMode lookahead=SKIP_ALL, char ignore=NO_IGNORE_CHAR)
 
virtual int peek ()=0
 
virtual int read ()=0
 
size_t readBytes (char *buffer, size_t length)
 
size_t readBytes (uint8_t *buffer, size_t length)
 
size_t readBytesUntil (char terminator, char *buffer, size_t length)
 
size_t readBytesUntil (char terminator, uint8_t *buffer, size_t length)
 
String readString ()
 
String readStringUntil (char terminator)
 
void setTimeout (unsigned long timeout)
 
- Public Member Functions inherited from Print
virtual int availableForWrite ()
 
void clearWriteError ()
 
virtual void flush ()
 
int getWriteError ()
 
size_t print (char)
 
size_t print (const __FlashStringHelper *)
 
size_t print (const char[])
 
size_t print (const Printable &)
 
size_t print (const String &)
 
size_t print (double, int=2)
 
size_t print (int, int=DEC)
 
size_t print (long long, int=DEC)
 
size_t print (long, int=DEC)
 
size_t print (unsigned char, int=DEC)
 
size_t print (unsigned int, int=DEC)
 
size_t print (unsigned long long, int=DEC)
 
size_t print (unsigned long, int=DEC)
 
size_t println (char)
 
size_t println (const __FlashStringHelper *)
 
size_t println (const char[])
 
size_t println (const Printable &)
 
size_t println (const String &s)
 
size_t println (double, int=2)
 
size_t println (int, int=DEC)
 
size_t println (long long, int=DEC)
 
size_t println (long, int=DEC)
 
size_t println (unsigned char, int=DEC)
 
size_t println (unsigned int, int=DEC)
 
size_t println (unsigned long long, int=DEC)
 
size_t println (unsigned long, int=DEC)
 
size_t println (void)
 
size_t write (const char *buffer, size_t size)
 
size_t write (const char *str)
 
virtual size_t write (const uint8_t *buffer, size_t size)
 
virtual size_t write (uint8_t)=0
 
- Public Member Functions inherited from audio_tools::AudioBaseInfoDependent
virtual AudioBaseInfo audioInfo ()=0
 
virtual void setAudioInfo (AudioBaseInfo info)=0
 
virtual bool validate (AudioBaseInfo &info)
 
virtual void setNotifyAudioChange (AudioBaseInfoDependent &bi)=0
 

Protected Member Functions

bool memoryCanChange ()
 
- Protected Member Functions inherited from audio_tools::AudioStream
virtual int not_supported (int out)
 
- Protected Member Functions inherited from Stream
int findMulti (struct MultiTarget *targets, int tCount)
 
float parseFloat (char ignore)
 
long parseInt (char ignore)
 
int peekNextDigit (LookaheadMode lookahead, bool detectDecimal)
 
int timedPeek ()
 
int timedRead ()
 
- Protected Member Functions inherited from Print
void setWriteError (int err=1)
 

Protected Attributes

uint8_t * buffer = nullptr
 
int buffer_size = 0
 
bool is_loop = false
 
MemoryType memory_type = RAM
 
int read_pos = 0
 
void(* rewind )() = nullptr
 
int write_pos = 0
 
- Protected Attributes inherited from audio_tools::AudioStream
AudioBaseInfo info
 
AudioBaseInfoDependentp_notify =nullptr
 
- Protected Attributes inherited from Stream
unsigned long _startMillis
 
unsigned long _timeout
 

Detailed Description

A simple Stream implementation which is backed by allocated memory.

Author
Phil Schatzmann

Member Function Documentation

◆ available()

virtual int audio_tools::MemoryStream::available ( )
inlineoverridevirtual

Implements Stream.

◆ availableForWrite()

virtual int audio_tools::MemoryStream::availableForWrite ( )
inlineoverridevirtual

Reimplemented from audio_tools::AudioStream.

◆ begin()

bool audio_tools::MemoryStream::begin ( )
inlineoverridevirtual

Reimplemented from audio_tools::AudioStream.

◆ end()

virtual void audio_tools::MemoryStream::end ( )
inlineoverridevirtual

Reimplemented from audio_tools::AudioStream.

◆ flush()

virtual void audio_tools::MemoryStream::flush ( )
inlineoverridevirtual

Reimplemented from audio_tools::AudioStream.

◆ peek()

virtual int audio_tools::MemoryStream::peek ( )
inlineoverridevirtual

Implements Stream.

◆ read()

virtual int audio_tools::MemoryStream::read ( )
inlineoverridevirtual

Implements Stream.

◆ readBytes()

virtual size_t audio_tools::MemoryStream::readBytes ( uint8_t *  buffer,
size_t  length 
)
inlineoverridevirtual

◆ write() [1/2]

virtual size_t audio_tools::MemoryStream::write ( const uint8_t *  buffer,
size_t  size 
)
inlineoverridevirtual

◆ write() [2/2]

virtual size_t audio_tools::MemoryStream::write ( uint8_t  byte)
inlineoverridevirtual

Implements Print.


The documentation for this class was generated from the following file: