Public Types | Public Member Functions | Public Attributes | Protected Attributes | Private Member Functions | List of all members
libwps_OLE::IStorage Class Reference

## Public Types
enum | Result { Ok, OpenFailed, NotOLE, BadOLE, UnknownError }

## Public Member Functions
| IStorage (librevenge::RVNGInputStream *is)
| ~IStorage ()
DirEntry * | entry (unsigned ind)
| returns a directory entry corresponding to a index More...
DirEntry * | entry (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
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 &)
IStorage & | operator= (const IStorage &)

## Member Enumeration Documentation

## ◆ Result

enum libwps_OLE::IStorage::Result

Enumerator
Ok |
OpenFailed |
NotOLE |
BadOLE |
UnknownError |

## Constructor & Destructor Documentation

## ◆ IStorage() [1/2]

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

## ◆ ~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 | ( | unsigned | ind | ) |
| inline

returns a directory entry corresponding to a index

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

## ◆ entry() [2/2]

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

returns a directory entry corresponding to a name

## ◆ 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 | ( |  | ) |

Referenced by entry(), getSubStreamList(), index(), and libwps_OLE::IStream::IStream().

## ◆ loadBigBlock()

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

## ◆ loadBigBlocks()

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

## ◆ 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
| ) |  |

## ◆ 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

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

## Member Data Documentation

## ◆ m_bbat

AllocTable libwps_OLE::IStorage::m_bbat

Referenced by IStorage(), and libwps_OLE::IStream::IStream().

## ◆ m_dirtree

DirTree libwps_OLE::IStorage::m_dirtree

Referenced by entry(), getSubStreamList(), hasRootTypePc(), and index().

## ◆ m_header

Header libwps_OLE::IStorage::m_header

Referenced by IStorage(), revision(), and use_big_block_for().

## ◆ m_input

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

## ◆ m_isLoad

bool libwps_OLE::IStorage::m_isLoad
| protected

## ◆ m_result

Result libwps_OLE::IStorage::m_result

## ◆ m_sb_blocks

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

## ◆ m_sbat

AllocTable libwps_OLE::IStorage::m_sbat

Referenced by IStorage(), and libwps_OLE::IStream::IStream().

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

- WPSOLEStream.cpp