librevenge::IStream Class Reference

Public Member Functions

 IStream (IStorage *io, std::string const &name)
 ~IStream ()
unsigned long size () const
unsigned long tell () const
unsigned long read (unsigned char *data, unsigned long maxlen)

Public Attributes

IStoragem_iStorage
unsigned long m_size
 the stream size
std::string m_name

Protected Member Functions

bool createOleFromDirectory (IStorage *io, std::string const &name)
 create the data corresponding to a directory
unsigned long readUsingStorage (unsigned long pos, unsigned char *data, unsigned long maxlen)
 try to read maxlen data using m_iStorage
unsigned long readData (unsigned long pos, unsigned char *data, unsigned long maxlen)
 try to read maxlen data using m_data

Private Member Functions

 IStream (const IStream &)
IStreamoperator= (const IStream &)

Private Attributes

std::vector< unsigned long > m_blocks
unsigned long m_pos
std::vector< unsigned char > m_data

Constructor & Destructor Documentation

◆ IStream() [1/2]

librevenge::IStream::IStream ( librevenge::IStorage * s,
std::string const & name )

Referenced by IStream(), and operator=().

◆ ~IStream()

librevenge::IStream::~IStream ( )
inline

◆ IStream() [2/2]

librevenge::IStream::IStream ( const IStream & )
private

Member Function Documentation

◆ createOleFromDirectory()

bool librevenge::IStream::createOleFromDirectory ( IStorage * io,
std::string const & name )
protected

create the data corresponding to a directory

◆ operator=()

IStream & librevenge::IStream::operator= ( const IStream & )
private

◆ read()

unsigned long librevenge::IStream::read ( unsigned char * data,
unsigned long maxlen )
inline

Referenced by createOleFromDirectory().

◆ readData()

unsigned long librevenge::IStream::readData ( unsigned long pos,
unsigned char * data,
unsigned long maxlen )
protected

try to read maxlen data using m_data

Referenced by read().

◆ readUsingStorage()

unsigned long librevenge::IStream::readUsingStorage ( unsigned long pos,
unsigned char * data,
unsigned long maxlen )
protected

try to read maxlen data using m_iStorage

Referenced by read().

◆ size()

unsigned long librevenge::IStream::size ( ) const
inline

◆ tell()

unsigned long librevenge::IStream::tell ( ) const
inline

Referenced by read().

Member Data Documentation

◆ m_blocks

std::vector<unsigned long> librevenge::IStream::m_blocks
private

Referenced by IStream(), and readUsingStorage().

◆ m_data

std::vector<unsigned char> librevenge::IStream::m_data
private

◆ m_iStorage

IStorage* librevenge::IStream::m_iStorage

◆ m_name

std::string librevenge::IStream::m_name

Referenced by IStream().

◆ m_pos

unsigned long librevenge::IStream::m_pos
private

Referenced by IStream(), read(), and tell().

◆ m_size

unsigned long librevenge::IStream::m_size

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

Generated for librevenge by doxygen 1.14.0