class
#include <IO/Stream.h>
Stream Provides a generic view of a sequence of bytes.
Base classes
- class Death::IDisposable
- Base interface for releasing resources on object destruction.
Derived classes
- class AndroidAssetStream
- Read-only streaming directly from Android asset files.
- class BoundedFileStream
- Provides only specified portion of the stream from any seekable input stream.
- class DeflateStream
- Provides read-only streaming of compressed data using the Deflate algorithm.
- class DeflateWriter
- Provides write-only streaming to compress written data by using the Deflate algorithm.
- class Lz4Stream
- Provides read-only streaming of compressed data using the LZ4 compression algorithm.
- class Lz4Writer
- Provides write-only streaming to compress written data by using the LZ4 compression algorithm.
- class ZstdStream
- Provides read-only streaming of compressed data using the Zstandard compression algorithm.
- class ZstdWriter
- Provides write-only streaming to compress written data by using the Zstandard compression algorithm.
- class EmscriptenFileStream
- Provides access to a file selected by the user in the browser.
- class FileStream
- Allows streaming from/to a file on a local filesystem.
- class MemoryStream
- Provides stream interface for a region of memory.
Public types
- enum (anonymous) { Invalid = -1, OutOfRange = -2, NotSeekable = -3 }
Public static functions
-
static auto Uint16FromLE(std::
uint16_t value) -> std:: uint16_t -
static auto Uint32FromLE(std::
uint32_t value) -> std:: uint32_t -
static auto Uint64FromLE(std::
uint64_t value) -> std:: uint64_t -
static auto Uint16FromBE(std::
uint16_t value) -> std:: uint16_t -
static auto Uint32FromBE(std::
uint32_t value) -> std:: uint32_t -
static auto Uint64FromBE(std::
uint64_t value) -> std:: uint64_t
Constructors, destructors, conversion operators
- operator bool() explicit
Public functions
- void Dispose() pure virtual
- Closes the stream and releases all assigned resources.
-
auto Seek(std::
int64_t offset, SeekOrigin origin) -> std:: int64_t pure virtual - Seeks in an opened stream.
-
auto GetPosition() const -> std::
int64_t pure virtual - Tells the seek position of an opened stream.
-
auto Read(void* destination,
std::
int64_t bytesToRead) -> std:: int64_t pure virtual - Reads a certain amount of bytes from the stream to a buffer.
-
auto Write(const void* source,
std::
int64_t bytesToWrite) -> std:: int64_t pure virtual - Writes a certain amount of bytes from a buffer to the stream.
- auto Flush() -> bool pure virtual
- Clears all buffers for this stream and causes any buffered data to be written to the underlying device.
- auto IsValid() -> bool pure virtual
- Returns
true
if the stream has been sucessfully opened. -
auto GetSize() const -> std::
int64_t pure virtual - Returns stream size in bytes.
-
auto CopyTo(Stream& targetStream) -> std::
int64_t - Reads the bytes from the current stream and writes them to the target stream.
-
template<typename T, class = typename std::auto ReadValue() -> T
enable_if<std:: is_trivially_constructible<T>::value>::type> - Reads a trivial value from the stream.
-
template<typename T, class = typename std::void WriteValue(const T& value)
enable_if<std:: is_trivially_constructible<T>::value>::type> - Writes a trivial value to the stream.
-
auto ReadVariableInt32() -> std::
int32_t - Reads a 32-bit integer value from the stream using variable-length quantity encoding.
-
auto ReadVariableInt64() -> std::
int64_t - Reads a 64-bit integer value from the stream using variable-length quantity encoding.
-
auto ReadVariableUint32() -> std::
uint32_t - Reads a 32-bit unsigned integer value from the stream using variable-length quantity encoding.
-
auto ReadVariableUint64() -> std::
uint64_t - Reads a 64-bit unsigned integer value from the stream using variable-length quantity encoding.
-
auto WriteVariableInt32(std::
int32_t value) -> std:: int64_t - Writes a 32-bit integer value to the stream using variable-length quantity encoding.
-
auto WriteVariableInt64(std::
int64_t value) -> std:: int64_t - Writes a 64-bit integer value to the stream using variable-length quantity encoding.
-
auto WriteVariableUint32(std::
uint32_t value) -> std:: int64_t - Writes a 32-bit unsigned integer value to the stream using variable-length quantity encoding.
-
auto WriteVariableUint64(std::
uint64_t value) -> std:: int64_t - Writes a 64-bit unsigned integer value to the stream using variable-length quantity encoding.
Enum documentation
enum Death:: IO:: Stream:: (anonymous)
Enumerators | |
---|---|
Invalid |
Returned if Stream doesn't point to valid source. |
OutOfRange |
Returned if one of the parameters provided to a method is not valid. |
NotSeekable |
Returned if seek operation is not supported by Stream or the stream length is unknown. |