libwps_OLE::IStorage Class Reference

Public Types

enum  Result {
  Ok , OpenFailed , NotOLE , BadOLE ,
  UnknownError
}

Public Member Functions

 IStorage (librevenge::RVNGInputStream *is)
 ~IStorage ()
DirEntryentry (unsigned ind)
 returns a directory entry corresponding to a index
DirEntryentry (const std::string &name)
 returns a directory entry corresponding to a name
unsigned index (const std::string &name)
 returns a directory entry corresponding to a index
unsigned revision () const
 returns the OLE revision
bool hasRootTypePc () const
 returns true if it is a pc file
bool isSubStream (const std::string &name, bool &isDir)
 returns true if the entry exists in the OLE, if so fills isDir
std::vector< std::string > getSubStreamList (unsigned ind=0, bool retrieveAll=false)
 returns the list of subStream given a dirEntry index
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) const
unsigned long loadBigBlock (unsigned long block, unsigned char *buffer, unsigned long maxlen) const
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

librevenge::RVNGInputStream * m_input
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 &)

Member Enumeration Documentation

◆ Result

Enumerator
Ok 
OpenFailed 
NotOLE 
BadOLE 
UnknownError 

Constructor & Destructor Documentation

◆ IStorage() [1/2]

libwps_OLE::IStorage::IStorage ( librevenge::RVNGInputStream * is)
explicit

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

◆ ~IStorage()

libwps_OLE::IStorage::~IStorage ( )
inline

◆ IStorage() [2/2]

libwps_OLE::IStorage::IStorage ( const IStorage & )
private

Member Function Documentation

◆ entry() [1/2]

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

returns a directory entry corresponding to a name

◆ entry() [2/2]

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

returns a directory entry corresponding to a index

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

◆ getSubStreamList()

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

returns the list of subStream given a dirEntry index

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

◆ getSubStreamNamesList()

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

◆ hasRootTypePc()

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

returns true if it is a pc file

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

◆ index()

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

returns a directory entry corresponding to a index

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

◆ isStructured()

bool libwps_OLE::IStorage::isStructured ( )

◆ isSubStream()

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

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

◆ load()

void libwps_OLE::IStorage::load ( )

◆ loadBigBlock()

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

Referenced by load(), and loadSmallBlocks().

◆ loadBigBlocks()

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

Referenced by load(), and loadBigBlock().

◆ loadSmallBlock()

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

◆ loadSmallBlocks()

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

Referenced by loadSmallBlock().

◆ operator=()

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

◆ revision()

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

returns the OLE revision

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

◆ use_big_block_for()

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

Member Data Documentation

◆ m_bbat

AllocTable libwps_OLE::IStorage::m_bbat

◆ m_dirtree

◆ m_header

Header libwps_OLE::IStorage::m_header

◆ m_input

librevenge::RVNGInputStream* libwps_OLE::IStorage::m_input

Referenced by IStorage(), load(), and loadBigBlocks().

◆ m_isLoad

bool libwps_OLE::IStorage::m_isLoad
protected

Referenced by IStorage(), and load().

◆ m_result

◆ m_sb_blocks

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

Referenced by IStorage(), load(), and loadSmallBlocks().

◆ m_sbat

AllocTable libwps_OLE::IStorage::m_sbat

Referenced by IStorage(), load(), and loadSmallBlocks().


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

Generated on Sat Jul 19 2025 05:24:41 for libwps by doxygen 1.14.0