librevenge::IStorage Class Reference

Public Member Functions

 IStorage (RVNGInputStream *is)
 
 ~IStorage ()
 
DirEntryentry (unsigned ind)
 returns a directory entry corresponding to a index More...
 
DirEntryentry (const std::string &name)
 returns a directory entry corresponding to a name More...
 
unsigned index (const std::string &name)
 returns a directory entry corresponding to a index More...
 
unsigned revision () const
 returns the OLE revision More...
 
bool hasRootTypePc () const
 returns true if it is a pc file More...
 
bool isSubStream (const std::string &name, bool &isDir)
 returns true if the entry exists in the OLE, if so fills isDir More...
 
std::vector< std::string > getSubStreamList (unsigned ind=0, bool retrieveAll=false)
 returns the list of subStream given a dirEntry index More...
 
bool isStructured ()
 
std::vector< std::string > getSubStreamNamesList ()
 
void load ()
 
bool use_big_block_for (unsigned long size) const
 
unsigned long loadBigBlocks (std::vector< unsigned long > const &blocks, unsigned char *buffer, unsigned long maxlen)
 
unsigned long loadBigBlock (unsigned long block, unsigned char *buffer, unsigned long maxlen)
 
unsigned long loadSmallBlocks (std::vector< unsigned long > const &blocks, unsigned char *buffer, unsigned long maxlen)
 
unsigned long loadSmallBlock (unsigned long block, unsigned char *buffer, unsigned long maxlen)
 

Public Attributes

RVNGInputStreamm_input
 
librevenge::Storage::Result m_result
 
Header m_header
 
DirTree m_dirtree
 
AllocTable m_bbat
 
AllocTable m_sbat
 
std::vector< unsigned long > m_sb_blocks
 

Protected Attributes

bool m_isLoad
 

Private Member Functions

 IStorage (const IStorage &)
 
IStorageoperator= (const IStorage &)
 

Constructor & Destructor Documentation

◆ IStorage() [1/2]

librevenge::IStorage::IStorage ( RVNGInputStream is)

◆ ~IStorage()

librevenge::IStorage::~IStorage ( )
inline

◆ IStorage() [2/2]

librevenge::IStorage::IStorage ( const IStorage )
private

Member Function Documentation

◆ entry() [1/2]

DirEntry* librevenge::IStorage::entry ( const std::string &  name)
inline

returns a directory entry corresponding to a name

◆ entry() [2/2]

DirEntry* librevenge::IStorage::entry ( unsigned  ind)
inline

returns a directory entry corresponding to a index

Referenced by librevenge::IStream::createOleFromDirectory(), and librevenge::IStream::IStream().

◆ getSubStreamList()

std::vector<std::string> librevenge::IStorage::getSubStreamList ( unsigned  ind = 0,
bool  retrieveAll = false 
)
inline

returns the list of subStream given a dirEntry index

Referenced by librevenge::IStream::createOleFromDirectory().

◆ getSubStreamNamesList()

std::vector< std::string > librevenge::IStorage::getSubStreamNamesList ( )

◆ hasRootTypePc()

bool librevenge::IStorage::hasRootTypePc ( ) const
inline

returns true if it is a pc file

Referenced by librevenge::IStream::createOleFromDirectory().

◆ index()

unsigned librevenge::IStorage::index ( const std::string &  name)
inline

returns a directory entry corresponding to a index

Referenced by librevenge::IStream::createOleFromDirectory().

◆ isStructured()

bool librevenge::IStorage::isStructured ( )

◆ isSubStream()

bool librevenge::IStorage::isSubStream ( const std::string &  name,
bool &  isDir 
)

returns true if the entry exists in the OLE, if so fills isDir

◆ load()

void librevenge::IStorage::load ( )

◆ loadBigBlock()

unsigned long librevenge::IStorage::loadBigBlock ( unsigned long  block,
unsigned char *  buffer,
unsigned long  maxlen 
)

◆ loadBigBlocks()

unsigned long librevenge::IStorage::loadBigBlocks ( std::vector< unsigned long > const &  blocks,
unsigned char *  buffer,
unsigned long  maxlen 
)

◆ loadSmallBlock()

unsigned long librevenge::IStorage::loadSmallBlock ( unsigned long  block,
unsigned char *  buffer,
unsigned long  maxlen 
)

◆ loadSmallBlocks()

unsigned long librevenge::IStorage::loadSmallBlocks ( std::vector< unsigned long > const &  blocks,
unsigned char *  buffer,
unsigned long  maxlen 
)

◆ operator=()

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

◆ revision()

unsigned librevenge::IStorage::revision ( ) const
inline

returns the OLE revision

Referenced by librevenge::IStream::createOleFromDirectory().

◆ use_big_block_for()

bool librevenge::IStorage::use_big_block_for ( unsigned long  size) const
inline

Member Data Documentation

◆ m_bbat

AllocTable librevenge::IStorage::m_bbat

◆ m_dirtree

DirTree librevenge::IStorage::m_dirtree

◆ m_header

Header librevenge::IStorage::m_header

◆ m_input

RVNGInputStream* librevenge::IStorage::m_input

◆ m_isLoad

bool librevenge::IStorage::m_isLoad
protected

◆ m_result

librevenge::Storage::Result librevenge::IStorage::m_result

◆ m_sb_blocks

std::vector<unsigned long> librevenge::IStorage::m_sb_blocks

◆ m_sbat

AllocTable librevenge::IStorage::m_sbat

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

Generated for librevenge by doxygen 1.8.18