Go to the documentation of this file.
31 CircularBuffer(
int size) : buffer(new char[size]), readPos(buffer), writePos(buffer), size(size)
61 bool seek(
int len)
override;
83 return String(
reinterpret_cast<uint32_t
>(&buffer),
HEX);
101 void flush()
override
108 inline char* wrap(
char* ptr)
const
110 return (ptr == buffer + size) ? buffer : ptr;
114 char* buffer =
nullptr;
115 char* readPos =
nullptr;
116 char* writePos =
nullptr;
int available() override
Return the total length of the stream.
The String class.
Definition: WString.h:136
size_t write(uint8_t charToWrite) override
Writes a single character to output stream.
Circular stream class.
Definition: CircularBuffer.h:28
uint16_t readMemoryBlock(char *data, int bufSize) override
Read a block of memory.
StreamType
Data stream type.
Definition: DataSourceStream.h:25
String id() const override
Returns unique id of the resource.
Definition: CircularBuffer.h:94
bool seek(int len) override
Move read cursor.
size_t room() const
Get the maximum number of bytes for which write() will succeed.
bool isFinished() override
Check if stream is finished.
Definition: CircularBuffer.h:79
@ eSST_Memory
Memory stream.
Definition: DataSourceStream.h:27
CircularBuffer(int size)
Definition: CircularBuffer.h:44
~CircularBuffer()
Definition: CircularBuffer.h:48
void flush() override
Definition: CircularBuffer.h:114
#define HEX
Definition: WConstants.h:68
StreamType getStreamType() const override
Get the stream type.
Definition: CircularBuffer.h:57
Base class for read/write stream.
Definition: ReadWriteStream.h:19