libebook::EBOOKStreamView Class Reference documentation

Public Member Functions | Private Member Functions | Private Attributes | List of all members
libebook::EBOOKStreamView Class Reference

A stream representing a view into an another stream. More...

`#include <EBOOKStreamView.h>`

Inheritance diagram for libebook::EBOOKStreamView:

## Public Member Functions
| EBOOKStreamView (librevenge::RVNGInputStream *stream, long begin, long end)
| ~EBOOKStreamView () override
bool | isStructured () override
unsigned | subStreamCount () override
const char * | subStreamName (unsigned id) override
bool | existsSubStream (const char *name) override
librevenge::RVNGInputStream * | getSubStreamByName (const char *name) override
RVNGInputStream * | getSubStreamById (unsigned id) override
const unsigned char * | read (unsigned long numBytes, unsigned long &numBytesRead) override
int | seek (long offset, librevenge::RVNG_SEEK_TYPE seekType) override
long | tell () override
bool | isEnd () override

## Private Member Functions
| EBOOKStreamView (const EBOOKStreamView &other)
EBOOKStreamView & | operator= (const EBOOKStreamView &other)

## Private Attributes
librevenge::RVNGInputStream *const | m_stream
const long | m_begin
const long | m_end

## Detailed Description

A stream representing a view into an another stream.

The purpose of this class is only to simplify reading of chunks of data from the original stream. All reading operations change the original stream. That means that it is not advisable to use the original stream while a view into it is in use too.

## Constructor & Destructor Documentation

## ◆ EBOOKStreamView() [1/2]

libebook::EBOOKStreamView::EBOOKStreamView | ( | const EBOOKStreamView & | other | ) |
| private

## ◆ EBOOKStreamView() [2/2]

libebook::EBOOKStreamView::EBOOKStreamView | ( | librevenge::RVNGInputStream * | stream,
|  | long | begin,
|  | long | end )

## ◆ ~EBOOKStreamView()

libebook::EBOOKStreamView::~EBOOKStreamView | ( |  | ) |
| override

## Member Function Documentation

## ◆ existsSubStream()

bool libebook::EBOOKStreamView::existsSubStream | ( | const char * | name | ) |
| override

## ◆ getSubStreamById()

librevenge::RVNGInputStream * libebook::EBOOKStreamView::getSubStreamById | ( | unsigned | id | ) |
| override

## ◆ getSubStreamByName()

librevenge::RVNGInputStream * libebook::EBOOKStreamView::getSubStreamByName | ( | const char * | name | ) |
| override

## ◆ isEnd()

bool libebook::EBOOKStreamView::isEnd | ( |  | ) |
| override

## ◆ isStructured()

bool libebook::EBOOKStreamView::isStructured | ( |  | ) |
| override

## ◆ operator=()

EBOOKStreamView & libebook::EBOOKStreamView::operator= | ( | const EBOOKStreamView & | other | ) |
| private

## ◆ read()

const unsigned char * libebook::EBOOKStreamView::read | ( | unsigned long | numBytes,
|  | unsigned long & | numBytesRead )
| override

## ◆ seek()

int libebook::EBOOKStreamView::seek | ( | long | offset,
|  | librevenge::RVNG_SEEK_TYPE | seekType )
| override

## ◆ subStreamCount()

unsigned libebook::EBOOKStreamView::subStreamCount | ( |  | ) |
| override

## ◆ subStreamName()

const char * libebook::EBOOKStreamView::subStreamName | ( | unsigned | id | ) |
| override

## ◆ tell()

long libebook::EBOOKStreamView::tell | ( |  | ) |
| override

## Member Data Documentation

## ◆ m_begin

const long libebook::EBOOKStreamView::m_begin
| private

Referenced by EBOOKStreamView(), read(), seek(), and tell().

## ◆ m_end

const long libebook::EBOOKStreamView::m_end
| private

Referenced by EBOOKStreamView(), isEnd(), read(), and seek().

## ◆ m_stream

librevenge::RVNGInputStream* const libebook::EBOOKStreamView::m_stream
| private

Referenced by EBOOKStreamView(), isEnd(), read(), seek(), and tell().

The documentation for this class was generated from the following files:

- EBOOKStreamView.h
- EBOOKStreamView.cpp