AUI Framework  develop
Cross-platform base for C++ UI apps
Loading...
Searching...
No Matches
ISeekableInputStream Class Referenceabstract

Represents an input stream with updating reading position. More...

#include <AUI/IO/ISeekableInputStream.h>

Public Member Functions

virtual void seek (std::streamoff offset, std::ios::seekdir seekDir)=0
 change reading position, a way of changing depends on seekDir parameter
 
virtual size_t tell ()=0
 return current reading position
 
virtual bool isEof ()=0
 returns true if end of stream has been reached
 
size_t fileSize ()
 return size of the stream
 
- Public Member Functions inherited from IInputStream
virtual size_t read (char *dst, size_t size)=0
 Reads up to size bytes from stream. Blocking (waiting for new data) is allowed.
 
size_t read (std::span< std::byte > destination)
 Reads up to destination.size() bytes from stream. Blocking (waiting for new data) is allowed.
 
void readExact (char *dst, size_t size)
 Reads exact size bytes from stream. Blocking (waiting for new data) is allowed.
 
template<typename T>
deserialize ()
 
template<typename T>
IInputStreamoperator>> (T &dst)
 
template<typename T>
IInputStreamoperator>> (T &&dst)
 

Detailed Description

Represents an input stream with updating reading position.

Member Function Documentation

◆ fileSize()

size_t ISeekableInputStream::fileSize ( )
inline

return size of the stream

Returns
size of the stream

◆ isEof()

virtual bool ISeekableInputStream::isEof ( )
pure virtual

returns true if end of stream has been reached

Returns
true if end of stream has been reached

Implemented in AStrongByteBufferInputStream.

◆ seek()

virtual void ISeekableInputStream::seek ( std::streamoff offset,
std::ios::seekdir seekDir )
pure virtual

change reading position, a way of changing depends on seekDir parameter

Implemented in AStrongByteBufferInputStream.

◆ tell()

virtual size_t ISeekableInputStream::tell ( )
pure virtual

return current reading position

Returns
current reading pos

Implemented in AStrongByteBufferInputStream.


The documentation for this class was generated from the following file:
Inheritance diagram for ISeekableInputStream:
Collaboration diagram for ISeekableInputStream: