libebook::EBOOKStreamView Class Reference

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

#include <EBOOKStreamView.h>

List of all members.

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 ( librevenge::RVNGInputStream *  stream,
long  begin,
long  end 
)

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]
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]
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: