85 void flushWriteBuffer();
100 void* mReadBuffer =
nullptr;
103 const size_t mReadBufferSize = 0;
112 void* mWriteBuffer =
nullptr;
115 const size_t mWriteBufferSize = 0;
176 void flushWriteBuffer();
A filtered DataStream that caches read and write operations to it's underlying DataStream.
Definition Stream.Buffered.hpp:90
TRange< size_t > mReadBufferRange
The current read buffer range.
Definition Stream.Buffered.hpp:107
bool invalidate() final
In the stream is buffered, invalidates any buffered read data from the stream.
static BufferedDataStream createWriteBufferedStream(DataStream &&dataStream, const size_t writeBufferSize=1024)
Creates a new buffered DataStream that only buffers write operations.
Definition Stream.Buffered.hpp:145
~BufferedDataStream() final
Destroys the buffered data stream.
BufferedDataStream(const BufferedDataStream &)=delete
BufferedDataStream(DataStream &&dataStream, size_t readBufferSize=1024, size_t writeBufferSize=1024)
Creates a new buffer data stream.
TRange< size_t > mWriteBufferRange
The current write buffer range.
Definition Stream.Buffered.hpp:119
size_t tell() final
Gets the absolute stream position, in bytes.
Definition Stream.Buffered.hpp:160
BufferedDataStream(BufferedDataStream &&) noexcept
size_t read(void *data, size_t n) final
Reads data from the data stream to a buffer of raw memory data with length n.
A filtered OutputStream that caches read and write operations to it's underlying OutputStream.
Definition Stream.Buffered.hpp:53
ByteMemoryView mBuffer
Definition Stream.Buffered.hpp:57
BufferedOutputStream(const BufferedOutputStream &)=delete
BufferedOutputStream(OutputStream &&outputStream, size_t bufferSize=1024)
Creates a new buffer data stream.
size_t mBufferPosition
Definition Stream.Buffered.hpp:58
BufferedOutputStream(BufferedOutputStream &&) noexcept
General purpose class used for encapsulating the reading and writing of data from and to various sour...
Definition Stream.hpp:460
A helper data stream that allows filtering the results of another data stream.
Definition Stream.Filtered.hpp:172
A helper data stream that allows filtering the results of another data stream.
Definition Stream.Filtered.hpp:93
Seek
An enumeration that describes how a data stream should be seeked.
Definition Stream.hpp:72
A stream that provides write-only stream functionality.
Definition Stream.hpp:307
Definition Application.hpp:19
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25