#include <substream.h>
Public Member Functions | |
SeekableSubReadStreamEndian (SeekableReadStream *parentStream, uint32 begin, uint32 end, bool bigEndian, DisposeAfterUse::Flag disposeParentStream=DisposeAfterUse::NO) | |
int64 | pos () const override |
int64 | size () const override |
bool | seek (int64 offset, int whence=SEEK_SET) override |
void | hexdump (int len, int bytesPerLine=16, int startOffset=0) |
bool | skip (uint32 offset) override |
Public Member Functions inherited from Common::SeekableSubReadStream | |
SeekableSubReadStream (SeekableReadStream *parentStream, uint32 begin, uint32 end, DisposeAfterUse::Flag disposeParentStream=DisposeAfterUse::NO) | |
Public Member Functions inherited from Common::SubReadStream | |
SubReadStream (ReadStream *parentStream, uint32 end, DisposeAfterUse::Flag disposeParentStream=DisposeAfterUse::NO) | |
virtual bool | eos () const |
virtual bool | err () const |
virtual void | clearErr () |
virtual uint32 | read (void *dataPtr, uint32 dataSize) |
Public Member Functions inherited from Common::ReadStream | |
byte | readByte () |
FORCEINLINE int8 | readSByte () |
uint16 | readUint16LE () |
uint32 | readUint32LE () |
uint64 | readUint64LE () |
uint16 | readUint16BE () |
uint32 | readUint32BE () |
uint64 | readUint64BE () |
FORCEINLINE int16 | readSint16LE () |
FORCEINLINE int32 | readSint32LE () |
FORCEINLINE int64 | readSint64LE () |
FORCEINLINE int16 | readSint16BE () |
FORCEINLINE int32 | readSint32BE () |
FORCEINLINE int64 | readSint64BE () |
FORCEINLINE float | readFloatLE () |
FORCEINLINE float | readFloatBE () |
FORCEINLINE double | readDoubleLE () |
FORCEINLINE double | readDoubleBE () |
template<class TDataFormat , class... T> | |
bool | readMultiple (const TDataFormat &dataFormat, T &...values) |
template<class... T> | |
bool | readMultipleEndian (bool isLittle, T &...values) |
template<class... T> | |
bool | readMultipleLE (T &...values) |
template<class... T> | |
bool | readMultipleBE (T &...values) |
SeekableReadStream * | readStream (uint32 dataSize) |
String | readString (char terminator=0, size_t len=String::npos) |
Common::String | readPascalString (bool transformCR=true) |
Public Member Functions inherited from Common::SeekableReadStream | |
virtual char * | readLine (char *s, size_t bufSize, bool handleCR=true) |
virtual String | readLine (bool handleCR=true) |
void | hexdump (int len, int bytesPerLine=16, int startOffset=0) |
Public Member Functions inherited from Common::SeekableReadStreamEndian | |
SeekableReadStreamEndian (bool bigEndian) | |
Public Member Functions inherited from Common::ReadStreamEndian | |
ReadStreamEndian (bool bigEndian) | |
bool | isBE () const |
uint16 | readUint16 () |
uint32 | readUint32 () |
uint64 | readUint64 () |
FORCEINLINE int16 | readSint16 () |
FORCEINLINE int32 | readSint32 () |
FORCEINLINE int64 | readSint64 () |
FORCEINLINE float | readFloat () |
FORCEINLINE double | readDouble () |
Additional Inherited Members | |
Protected Attributes inherited from Common::SeekableSubReadStream | |
SeekableReadStream * | _parentStream |
uint32 | _begin |
Protected Attributes inherited from Common::SubReadStream | |
DisposablePtr< ReadStream > | _parentStream |
uint32 | _pos |
uint32 | _end |
bool | _eos |
This is a SeekableSubReadStream subclass which adds non-endian read methods whose endianness is set on the stream creation.
Manipulating the parent stream directly /will/ mess up a substream.
|
inlineoverridevirtual |
Obtain the current value of the stream position indicator.
Reimplemented from Common::SeekableSubReadStream.
|
inlineoverridevirtual |
Obtain the total size of the stream, measured in bytes. If this value is unknown or cannot be computed, -1 is returned.
Reimplemented from Common::SeekableSubReadStream.
|
inlineoverridevirtual |
Set the stream position indicator for the stream.
The new position, measured in bytes, is obtained by adding offset bytes to the position specified by whence. If whence is set to SEEK_SET, SEEK_CUR, or SEEK_END, the offset is relative to the start of the file, the current position indicator, or end-of-stream, respectively. A successful call to the seek() method clears the end-of-stream indicator for the stream.
offset | Relative offset in bytes. |
whence | Seek reference: SEEK_SET, SEEK_CUR, or SEEK_END. |
Reimplemented from Common::SeekableSubReadStream.
|
inlineoverridevirtual |
Skip the given number of bytes in the stream.
This is equivalent to calling:
to add the given number of bytes to the current position indicator of the stream.
Reimplemented from Common::SeekableReadStream.