|
LibreOffice Module oox (master) 1
|
Wraps a StreamDataSequence and provides convenient access functions. More...
#include <binaryinputstream.hxx>
Public Member Functions | |
| SequenceInputStream (const StreamDataSequence &rData) | |
| Constructs the wrapper object for the passed data sequence. More... | |
| virtual sal_Int32 | readData (StreamDataSequence &orData, sal_Int32 nBytes, size_t nAtomSize=1) override |
| Reads nBytes bytes to the passed sequence. More... | |
| virtual sal_Int32 | readMemory (void *opMem, sal_Int32 nBytes, size_t nAtomSize=1) override |
| Reads nBytes bytes to the (existing) buffer opMem. More... | |
| virtual void | skip (sal_Int32 nBytes, size_t nAtomSize=1) override |
| Seeks the stream forward by the passed number of bytes. More... | |
Public Member Functions inherited from oox::SequenceSeekableStream | |
| virtual sal_Int64 | size () const override |
| Returns the size of the wrapped data sequence. More... | |
| virtual sal_Int64 | tell () const override |
| Returns the current stream position. More... | |
| virtual void | seek (sal_Int64 nPos) override |
| Seeks the stream to the passed position. More... | |
| virtual void | close () override |
| Releases the reference to the data sequence. More... | |
Public Member Functions inherited from oox::BinaryStreamBase | |
| virtual | ~BinaryStreamBase () |
| virtual sal_Int64 | size () const =0 |
| Implementations return the size of the stream, if possible. More... | |
| virtual sal_Int64 | tell () const =0 |
| Implementations return the current stream position, if possible. More... | |
| virtual void | seek (sal_Int64 nPos)=0 |
| Implementations seek the stream to the passed position, if the stream is seekable. More... | |
| virtual void | close ()=0 |
| Implementations close the stream. More... | |
| bool | isSeekable () const |
| Returns true, if the implementation supports the seek() operation. More... | |
| bool | isEof () const |
| Returns true, if the stream position is invalid (EOF). More... | |
| sal_Int64 | getRemaining () const |
| Returns the size of the remaining data available in the stream, if stream supports size() and tell(), otherwise -1. More... | |
| void | seekToStart () |
| Seeks the stream to the beginning, if stream is seekable. More... | |
| void | alignToBlock (sal_Int32 nBlockSize, sal_Int64 nAnchorPos) |
| Seeks the stream forward to a position that is a multiple of the passed block size, if stream is seekable. More... | |
Public Member Functions inherited from oox::BinaryInputStream | |
| virtual sal_Int32 | readData (StreamDataSequence &orData, sal_Int32 nBytes, size_t nAtomSize=1)=0 |
| Derived classes implement reading nBytes bytes to the passed sequence. More... | |
| virtual sal_Int32 | readMemory (void *opMem, sal_Int32 nBytes, size_t nAtomSize=1)=0 |
| Derived classes implement reading nBytes bytes to the (preallocated!) memory buffer opMem. More... | |
| virtual void | skip (sal_Int32 nBytes, size_t nAtomSize=1)=0 |
| Derived classes implement seeking the stream forward by the passed number of bytes. More... | |
| template<typename Type > | |
| Type | readValue () |
| Reads a value from the stream and converts it to platform byte order. More... | |
| sal_Int8 | readInt8 () |
| sal_uInt8 | readuInt8 () |
| sal_Int16 | readInt16 () |
| sal_uInt16 | readuInt16 () |
| sal_Int32 | readInt32 () |
| sal_uInt32 | readuInt32 () |
| sal_Int64 | readInt64 () |
| float | readFloat () |
| double | readDouble () |
| unsigned char | readuChar () |
| template<typename Type > | |
| sal_Int32 | readArray (Type *opnArray, sal_Int32 nElemCount) |
| Reads a (preallocated!) C array of values from the stream. More... | |
| template<typename Type > | |
| sal_Int32 | readArray (::std::vector< Type > &orVector, sal_Int32 nElemCount) |
| Reads a vector of values from the stream. More... | |
| OUString | readNulUnicodeArray () |
| Reads a NUL-terminated Unicode character array and returns the string. More... | |
| OString | readCharArray (sal_Int32 nChars) |
| Reads a byte character array and returns the string. More... | |
| OUString | readCharArrayUC (sal_Int32 nChars, rtl_TextEncoding eTextEnc) |
| Reads a byte character array and returns a Unicode string. More... | |
| OUString | readUnicodeArray (sal_Int32 nChars) |
| Reads a Unicode character array and returns the string. More... | |
| OUString | readCompressedUnicodeArray (sal_Int32 nChars, bool bCompressed) |
| Reads a Unicode character array (may be compressed) and returns the string. More... | |
| void | copyToStream (BinaryOutputStream &rOutStrm) |
| Copies bytes from the current position to the passed output stream. More... | |
Private Member Functions | |
| sal_Int32 | getMaxBytes (sal_Int32 nBytes) const |
| Returns the number of bytes available in the sequence for the passed byte count. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from oox::SequenceSeekableStream | |
| SequenceSeekableStream (const StreamDataSequence &rData) | |
Protected Member Functions inherited from oox::BinaryStreamBase | |
| BinaryStreamBase (bool bSeekable) | |
Protected Member Functions inherited from oox::BinaryInputStream | |
| BinaryInputStream () | |
| This dummy default c'tor will never call the c'tor of the virtual base class BinaryStreamBase as this class cannot be instantiated directly. More... | |
Protected Attributes inherited from oox::SequenceSeekableStream | |
| const StreamDataSequence * | mpData |
| Wrapped data sequence. More... | |
| sal_Int32 | mnPos |
| Current position in the sequence. More... | |
Protected Attributes inherited from oox::BinaryStreamBase | |
| bool | mbEof |
| End of stream flag. More... | |
Wraps a StreamDataSequence and provides convenient access functions.
The binary data in the stream is assumed to be in little-endian format.
Definition at line 284 of file binaryinputstream.hxx.
|
explicit |
Constructs the wrapper object for the passed data sequence.
Definition at line 201 of file binaryinputstream.cxx.
|
inlineprivate |
Returns the number of bytes available in the sequence for the passed byte count.
Definition at line 310 of file binaryinputstream.hxx.
Referenced by readData(), readMemory(), and skip().
|
overridevirtual |
Reads nBytes bytes to the passed sequence.
Implements oox::BinaryInputStream.
Definition at line 207 of file binaryinputstream.cxx.
References getMaxBytes(), oox::BinaryStreamBase::mbEof, oox::SequenceSeekableStream::mnPos, and oox::SequenceSeekableStream::mpData.
|
overridevirtual |
Reads nBytes bytes to the (existing) buffer opMem.
Implements oox::BinaryInputStream.
Definition at line 222 of file binaryinputstream.cxx.
References getMaxBytes(), oox::BinaryStreamBase::mbEof, oox::SequenceSeekableStream::mnPos, and oox::SequenceSeekableStream::mpData.
|
overridevirtual |
Seeks the stream forward by the passed number of bytes.
This works for non-seekable streams too.
Implements oox::BinaryInputStream.
Definition at line 236 of file binaryinputstream.cxx.
References getMaxBytes(), oox::BinaryStreamBase::mbEof, and oox::SequenceSeekableStream::mnPos.