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)
 
virtual ~EBOOKStreamView ()
 
virtual bool isStructured ()
 
virtual unsigned subStreamCount ()
 
virtual const char * subStreamName (unsigned id)
 
virtual bool existsSubStream (const char *name)
 
virtual
librevenge::RVNGInputStream * 
getSubStreamByName (const char *name)
 
virtual RVNGInputStream * getSubStreamById (unsigned id)
 
virtual const unsigned char * read (unsigned long numBytes, unsigned long &numBytesRead)
 
virtual int seek (long offset, librevenge::RVNG_SEEK_TYPE seekType)
 
virtual long tell ()
 
virtual bool isEnd ()
 

Private Member Functions

 EBOOKStreamView (const EBOOKStreamView &other)
 
EBOOKStreamViewoperator= (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

libebook::EBOOKStreamView::EBOOKStreamView ( const EBOOKStreamView other)
private
libebook::EBOOKStreamView::EBOOKStreamView ( librevenge::RVNGInputStream *  stream,
long  begin,
long  end 
)
libebook::EBOOKStreamView::~EBOOKStreamView ( )
virtual

Member Function Documentation

bool libebook::EBOOKStreamView::existsSubStream ( const char *  name)
virtual
librevenge::RVNGInputStream * libebook::EBOOKStreamView::getSubStreamById ( unsigned  id)
virtual
librevenge::RVNGInputStream * libebook::EBOOKStreamView::getSubStreamByName ( const char *  name)
virtual
bool libebook::EBOOKStreamView::isEnd ( )
virtual
bool libebook::EBOOKStreamView::isStructured ( )
virtual
EBOOKStreamView& libebook::EBOOKStreamView::operator= ( const EBOOKStreamView other)
private
const unsigned char * libebook::EBOOKStreamView::read ( unsigned long  numBytes,
unsigned long &  numBytesRead 
)
virtual
int libebook::EBOOKStreamView::seek ( long  offset,
librevenge::RVNG_SEEK_TYPE  seekType 
)
virtual
unsigned libebook::EBOOKStreamView::subStreamCount ( )
virtual
const char * libebook::EBOOKStreamView::subStreamName ( unsigned  id)
virtual
long libebook::EBOOKStreamView::tell ( )
virtual

Member Data Documentation

const long libebook::EBOOKStreamView::m_begin
private

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

const long libebook::EBOOKStreamView::m_end
private

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

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:

Generated for libe-book by doxygen 1.8.8