AUI Framework  master
Cross-platform module-based framework for developing C++20 desktop applications
ISeekableInputStream Class Referenceabstract

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

Detailed Description

Represents an input stream with updating reading position.

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 More...
 
virtual size_t tell ()=0
 return current reading position More...
 
virtual bool isEof ()=0
 returns true if end of stream has been reached More...
 
size_t fileSize ()
 return size of the stream More...
 
- 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. More...
 
size_t read (std::span< std::byte > destination)
 Reads up to destination.size() bytes from stream. Blocking (waiting for new data) is allowed. More...
 
void readExact (char *dst, size_t size)
 Reads exact size bytes from stream. Blocking (waiting for new data) is allowed. More...
 
template<typename T >
deserialize ()
 
template<typename T >
IInputStreamoperator>> (T &dst)
 
template<typename T >
IInputStreamoperator>> (T &&dst)
 

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.

#include <AUI/IO/ISeekableInputStream.h>


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