Internal and low level: class of libmwawOLE used to read an OLE with various functions to retrieve the OLE content. More...
Public Member Functions | |
IStorage (shared_ptr< WPXInputStream > is) | |
constructor More... | |
~IStorage () | |
destructor More... | |
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 | isStructuredDocument () |
returns true if the entry is an OLE document 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... | |
Storage::Result | result () const |
returns the current results More... | |
Protected Member Functions | |
AllocTable & | sbat () |
AllocTable const & | sbat () const |
AllocTable & | bbat () |
AllocTable const & | bbat () const |
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) |
void | setDebugMessage (char const *msg) const |
define a message to add when reading a small block More... | |
void | markDebug (std::vector< unsigned long > const &blocks, char const *msg) |
mark a list of block with a debugging message More... | |
void | addDebugInfo (std::vector< unsigned long > const &directoryBlocks) |
add main debugging information (header and directory entries ) More... | |
void | load () |
load the file structure and fill m_result More... | |
Protected Attributes | |
shared_ptr< WPXInputStream > | m_input |
Header | m_header |
DirTree | m_dirtree |
AllocTable | m_bbat |
AllocTable | m_sbat |
std::vector< unsigned long > | m_sb_blocks |
bool | m_isLoad |
Storage::Result | m_result |
Private Member Functions | |
IStorage (const IStorage &) | |
IStorage & | operator= (const IStorage &) |
Private Attributes | |
std::string | m_debugMessage |
a debug message More... | |
libmwaw::DebugFile | m_asciiFile |
the debug file More... | |
Friends | |
class | IStream |
Internal and low level: class of libmwawOLE used to read an OLE with various functions to retrieve the OLE content.
libmwawOLE::IStorage::IStorage | ( | shared_ptr< WPXInputStream > | is | ) |
constructor
|
inline |
destructor
|
private |
|
protected |
add main debugging information (header and directory entries )
Referenced by load().
|
inlineprotected |
Referenced by libmwawOLE::IStream::IStream(), and libmwawOLE::IStream::read().
|
inlineprotected |
|
inline |
returns a directory entry corresponding to a index
Referenced by libmwawOLE::Storage::getSubStreamForDirectory(), and libmwawOLE::IStream::IStream().
|
inline |
returns a directory entry corresponding to a name
|
inline |
returns the list of subStream given a dirEntry index
Referenced by libmwawOLE::Storage::getSubStreamForDirectory(), and libmwawOLE::Storage::getSubStreamList().
|
inline |
returns true if it is a pc file
Referenced by libmwawOLE::Storage::getSubStreamForDirectory().
|
inline |
returns a directory entry corresponding to a index
Referenced by libmwawOLE::Storage::getSubStreamForDirectory(), and libmwawOLE::Storage::getSubStreamList().
bool libmwawOLE::IStorage::isStructuredDocument | ( | ) |
returns true if the entry is an OLE document
Referenced by libmwawOLE::Storage::isStructuredDocument().
bool libmwawOLE::IStorage::isSubStream | ( | const std::string & | name, |
bool & | isDir | ||
) |
returns true if the entry exists in the OLE, if so fills isDir
Referenced by libmwawOLE::Storage::isDirectory(), and libmwawOLE::Storage::isSubStream().
|
protected |
load the file structure and fill m_result
Referenced by entry(), getSubStreamList(), index(), isStructuredDocument(), and isSubStream().
|
protected |
Referenced by load(), and libmwawOLE::IStream::read().
|
protected |
Referenced by load().
|
protected |
Referenced by libmwawOLE::IStream::read().
|
protected |
|
protected |
mark a list of block with a debugging message
Referenced by addDebugInfo(), load(), and libmwawOLE::IStream::read().
|
inline |
returns the current results
|
inline |
returns the OLE revision
Referenced by libmwawOLE::Storage::getSubStreamForDirectory().
|
inlineprotected |
Referenced by libmwawOLE::IStream::IStream(), and libmwawOLE::IStream::read().
|
inlineprotected |
|
inlineprotected |
define a message to add when reading a small block
Referenced by libmwawOLE::IStream::read().
|
inlineprotected |
Referenced by libmwawOLE::IStream::IStream(), and libmwawOLE::IStream::read().
|
friend |
|
private |
the debug file
Referenced by addDebugInfo(), load(), and markDebug().
|
protected |
Referenced by addDebugInfo(), bbat(), IStorage(), load(), and markDebug().
|
mutableprivate |
a debug message
Referenced by setDebugMessage().
|
protected |
Referenced by addDebugInfo(), entry(), getSubStreamList(), hasRootTypePc(), index(), isSubStream(), and load().
|
protected |
Referenced by addDebugInfo(), IStorage(), load(), revision(), and use_big_block_for().
|
protected |
Referenced by isStructuredDocument(), and load().
|
protected |
Referenced by load().
|
protected |
Referenced by isStructuredDocument(), load(), and result().
|
protected |
Referenced by load().
|
protected |
Referenced by IStorage(), load(), and sbat().