WPSOLEStream.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2 
3 /* libwps
4  * Version: MPL 2.0 / LGPLv2.1+
5  *
6  * This Source Code Form is subject to the terms of the Mozilla Public
7  * License, v. 2.0. If a copy of the MPL was not distributed with this
8  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9  *
10  * Major Contributor(s):
11  * Copyright (C) 2009, 2011 Alonso Laurent (alonso@loria.fr)
12  * Copyright (C) 2006, 2007 Andrew Ziem
13  * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
14  * Copyright (C) 2004 Marc Maurer (uwog@uwog.net)
15  * Copyright (C) 2003-2005 William Lachance (william.lachance@sympatico.ca)
16  *
17  * For minor contributions see the git repository.
18  *
19  * Alternatively, the contents of this file may be used under the terms
20  * of the GNU Lesser General Public License Version 2.1 or later
21  * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
22  * applicable instead of those above.
23  *
24  * For further information visit http://libwps.sourceforge.net
25  */
26 
27 #ifndef WPSOLESTREAM_H
28 #define WPSOLESTREAM_H
29 
30 #include <string>
31 #include <vector>
32 
33 namespace librevenge
34 {
35 class RVNGInputStream;
36 }
37 
38 namespace libwps_OLE
39 {
41 }
42 
43 #endif // WPSOLESTREAM_H
44 /* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
libwps_OLE::IStorage::m_input
librevenge::RVNGInputStream * m_input
Definition: WPSOLEStream.cpp:478
libwps_OLE::DirTree::operator=
DirTree & operator=(const DirTree &)
libwps_OLE::WPSOLEStream::~WPSOLEStream
~WPSOLEStream() final
destructor
Definition: WPSOLEStream.cpp:1784
libwps_OLE::DirEntry::m_valid
bool m_valid
Definition: WPSOLEStream.cpp:286
libwps_OLE::IStream::createOleFromDirectory
bool createOleFromDirectory(IStorage *io, std::string const &name)
create the data corresponding to a directory
Definition: WPSOLEStream.cpp:1651
libwps_OLE::IStream::m_name
std::string m_name
Definition: WPSOLEStream.cpp:698
libwps_OLE::IStream::m_size
unsigned long m_size
the stream size
Definition: WPSOLEStream.cpp:697
libwps_OLE::DirInfo::DirInfo
DirInfo()
constructor
Definition: WPSOLEStream.cpp:222
libwps_OLE::WPSOLEStream::seek
int seek(long, librevenge::RVNG_SEEK_TYPE) final
seeks to a offset position, from actual, beginning or ending position
Definition: WPSOLEStream.cpp:1803
libwps_OLE::DirTree::load
void load(unsigned char *buffer, unsigned len)
tries to read the different entries
Definition: WPSOLEStream.cpp:1020
libwps_OLE::OStorage::m_header
Header m_header
Definition: WPSOLEStream.cpp:676
libwps_OLE::WPSOLEStream::existsSubStream
bool existsSubStream(const char *name) final
returns true if a substream with name exists
Definition: WPSOLEStream.cpp:1831
libwps_OLE::DirEntry::m_info
DirInfo m_info
first child
Definition: WPSOLEStream.cpp:296
libwps_OLE::DirTree::index
unsigned index(const std::string &name, bool create=false)
given a fullname (e.g "/ObjectPool/_1020961869"), find the entry
Definition: WPSOLEStream.cpp:961
libwps_OLE::OStorage::getFileData
bool getFileData(std::vector< unsigned char > &data)
try to return in data the contain of the file
Definition: WPSOLEStream.cpp:598
libwps_OLE::OStorage::m_dirtree
DirTree m_dirtree
Definition: WPSOLEStream.cpp:677
libwps_OLE::IStream::operator=
IStream & operator=(const IStream &)
libwps_OLE::DirTree::get_siblings
std::vector< unsigned > get_siblings(unsigned ind) const
returns a list of siblings corresponding to a node
Definition: WPSOLEStream.cpp:396
libwps_OLE::DirTree::m_entries
std::vector< DirEntry > m_entries
Definition: WPSOLEStream.cpp:467
libwps_OLE::IStorage::m_result
Result m_result
Definition: WPSOLEStream.cpp:479
libwps_OLE::DirInfo::m_time
unsigned m_time[4]
four uint32_t : the first two used for creation, the last for modification time
Definition: WPSOLEStream.cpp:238
libwps_OLE::OStorage::m_data
std::vector< unsigned char > m_data
Definition: WPSOLEStream.cpp:685
libwps_OLE::IStorage::m_bbat
AllocTable m_bbat
Definition: WPSOLEStream.cpp:483
libwps_OLE
Definition: WPSOLEStream.cpp:65
libwps_OLE::OStorage::getMaximumSize
static unsigned long getMaximumSize(bool isBig)
returns the maximum size of a big/small block
Definition: WPSOLEStream.cpp:623
libwps_OLE::IStorage::Ok
@ Ok
Definition: WPSOLEStream.cpp:476
libwps_OLE::Header::m_size_sbat
unsigned m_size_sbat
Definition: WPSOLEStream.cpp:127
libwps_OLE::Bat
@ Bat
Definition: WPSOLEStream.cpp:70
libwps_OLE::OStorage::m_bbat
AllocTable m_bbat
Definition: WPSOLEStream.cpp:678
libwps_OLE::DirEntry::m_type
unsigned m_type
true if this is a classic mac directory entry
Definition: WPSOLEStream.cpp:288
libwps_OLE::DirEntry::m_size
unsigned long m_size
the red/black color: 0 means red
Definition: WPSOLEStream.cpp:290
libwps_OLE::DirTree::clear
void clear()
clear all entries, leaving only a root entries
Definition: WPSOLEStream.cpp:936
libwps_OLE::Header::m_num_bat
unsigned m_num_bat
Definition: WPSOLEStream.cpp:121
libwps_OLE::getOLEInputStream
RVNGInputStreamPtr getOLEInputStream(RVNGInputStreamPtr input)
Definition: WPSOLEStream.cpp:1881
libwps_OLE::IStorage::BadOLE
@ BadOLE
Definition: WPSOLEStream.cpp:476
libwps_OLE::IStorage::index
unsigned index(const std::string &name)
returns a directory entry corresponding to a index
Definition: WPSOLEStream.cpp:505
libwps_OLE::IStorage::getSubStreamNamesList
std::vector< std::string > getSubStreamNamesList()
Definition: WPSOLEStream.cpp:1162
libwps_OLE::IStream::m_data
std::vector< unsigned char > m_data
Definition: WPSOLEStream.cpp:744
libwps_OLE::DirEntry::name
std::string name() const
returns the simplified file name
Definition: WPSOLEStream.cpp:258
libwps_OLE::readU16
static unsigned short readU16(const unsigned char *ptr)
Definition: WPSOLEStream.cpp:72
libwps_OLE::AllocTable::m_blockSize
unsigned m_blockSize
Definition: WPSOLEStream.cpp:161
libwps_OLE::AllocTable::resize
void resize(unsigned long newsize)
Definition: WPSOLEStream.cpp:171
libwps_OLE::IStream::size
unsigned long size() const
Definition: WPSOLEStream.cpp:704
libwps_OLE::OStorage::setRootType
void setRootType(bool pc)
set the root to a mac/pc root *‍/
Definition: WPSOLEStream.cpp:578
libwps_OLE::IStorage::use_big_block_for
bool use_big_block_for(unsigned long size) const
Definition: WPSOLEStream.cpp:534
libwps_OLE::DirTree::entry
DirEntry * entry(unsigned ind)
returns the entry with a given index
Definition: WPSOLEStream.cpp:330
libwps_OLE::OStorage::operator=
OStorage & operator=(const OStorage &)
libwps_OLE::WPSOLEStream::getSubStreamById
librevenge::RVNGInputStream * getSubStreamById(unsigned id) final
return a new stream for a ole zone
Definition: WPSOLEStream.cpp:1843
libwps_OLE::DirInfo::m_clsid
unsigned m_clsid[4]
four uint32_t: the clsid data
Definition: WPSOLEStream.cpp:240
libwps_OLE::IStream::IStream
IStream(const IStream &)
libwps_OLE::AllocTable::AllocTable
AllocTable(const AllocTable &)
libwps_OLE::Header::m_blocks_bbat
unsigned long m_blocks_bbat[109]
Definition: WPSOLEStream.cpp:132
libwps_OLE::OStorage::setInformation
void setInformation(std::string const &name, DirInfo const &info)
set a node information
Definition: WPSOLEStream.cpp:587
libwps_OLE::OStorage::newSBlock
unsigned newSBlock()
create a new small block, ... and returns is identifier
Definition: WPSOLEStream.cpp:645
libwps_OLE::IStorage::m_sbat
AllocTable m_sbat
Definition: WPSOLEStream.cpp:484
libwps_OLE::IStorage::IStorage
IStorage(librevenge::RVNGInputStream *is)
Definition: WPSOLEStream.cpp:1145
libwps_OLE::Header::m_threshold
unsigned m_threshold
Definition: WPSOLEStream.cpp:123
libwps_OLE::IStorage::entry
DirEntry * entry(unsigned ind)
returns a directory entry corresponding to a index
Definition: WPSOLEStream.cpp:492
libwps_OLE::DirTree::setInRBTForm
unsigned setInRBTForm(std::vector< unsigned > const &childList, unsigned firstInd, unsigned lastInd, unsigned height)
rebuild all the childs m_left, m_right index as a red black tree, returns the root index.
Definition: WPSOLEStream.cpp:1110
libwps_OLE::Header::save
void save(unsigned char *buffer)
Definition: WPSOLEStream.cpp:804
libwps_OLE::IStream::m_blocks
std::vector< unsigned long > m_blocks
Definition: WPSOLEStream.cpp:734
libwps_OLE::DirTree::count
unsigned count() const
returns the number of entries
Definition: WPSOLEStream.cpp:319
libwps_OLE::WPSOLEStream::isStructured
bool isStructured() final
returns true if the stream is ole
Definition: WPSOLEStream.cpp:1814
libwps_OLE::DirTree::setRootType
void setRootType(bool pc=true)
set the root to a mac/pc root
Definition: WPSOLEStream.cpp:942
libwps_OLE::AllocTable::count
unsigned long count() const
Definition: WPSOLEStream.cpp:167
libwps_OLE::IStream::tell
unsigned long tell() const
Definition: WPSOLEStream.cpp:708
libwps_OLE::DirEntry::is_dir
bool is_dir() const
returns true for a directory
Definition: WPSOLEStream.cpp:253
libwps_OLE::IStorage::revision
unsigned revision() const
returns the OLE revision
Definition: WPSOLEStream.cpp:512
libwps_OLE::IStorage::IStorage
IStorage(const IStorage &)
libwps_OLE::DirTree::CompareEntryName::CompareEntryName
CompareEntryName(DirTree &tree)
constructor
Definition: WPSOLEStream.cpp:439
libwps_OLE::DirInfo
Definition: WPSOLEStream.cpp:219
libwps_OLE::OStorage::insertData
unsigned insertData(unsigned char const *buffer, unsigned long len, bool useBigBlock, unsigned end=Eof)
add stream data in a file, returns the first index
Definition: WPSOLEStream.cpp:1508
libwps_OLE::DirEntry::saveSize
static unsigned saveSize()
returns space required to save a dir entry
Definition: WPSOLEStream.cpp:281
libwps_OLE::IStorage::loadBigBlocks
unsigned long loadBigBlocks(std::vector< unsigned long > const &blocks, unsigned char *buffer, unsigned long maxlen) const
Definition: WPSOLEStream.cpp:1283
libwps_OLE::Avail
@ Avail
Definition: WPSOLEStream.cpp:70
libwps_OLE::OStorage::newBBlock
unsigned newBBlock()
create a new big block, resize m_data; ... and return is identifier
Definition: WPSOLEStream.cpp:637
libwps_OLE::writeU16
static void writeU16(unsigned char *ptr, unsigned long data)
Definition: WPSOLEStream.cpp:82
libwps_OLE::WPSOLEStream::read
const unsigned char * read(unsigned long, unsigned long &) final
! reads numbytes data.
Definition: WPSOLEStream.cpp:1791
WPSStringStream
internal class used to create a RVNGInputStream from a unsigned char's pointer
Definition: WPSStringStream.h:42
libwps_OLE::IStorage::m_sb_blocks
std::vector< unsigned long > m_sb_blocks
Definition: WPSOLEStream.cpp:486
libwps_OLE::DirTree::entry
DirEntry const * entry(unsigned ind) const
returns the entry with a given index
Definition: WPSOLEStream.cpp:324
libwps_OLE::Header::m_start_mbat
unsigned m_start_mbat
Definition: WPSOLEStream.cpp:130
libwps_OLE::IStream::IStream
IStream(IStorage *io, std::string const &name)
Definition: WPSOLEStream.cpp:1538
libwps_OLE::DirTree::DirTree
DirTree()
constructor
Definition: WPSOLEStream.cpp:305
libwps_OLE::DirEntry::setName
void setName(std::string const &nm)
sets the file name
Definition: WPSOLEStream.cpp:272
libwps_OLE::Header::m_size_bbat
unsigned m_size_bbat
Definition: WPSOLEStream.cpp:129
libwps_OLE::DirTree::CompareEntryName::m_tree
DirTree & m_tree
the main tree
Definition: WPSOLEStream.cpp:463
libwps_OLE::WPSOLEStream::isEnd
bool isEnd() final
returns true if we are at the end of the section/file
Definition: WPSOLEStream.cpp:1808
libwps_OLE::WPSOLEStream::WPSOLEStream
WPSOLEStream(RVNGInputStreamPtr &input)
constructor
Definition: WPSOLEStream.cpp:1763
libwps_OLE::Header::m_start_sbat
unsigned m_start_sbat
Definition: WPSOLEStream.cpp:124
WPS_DEBUG_MSG
#define WPS_DEBUG_MSG(M)
Definition: libwps_internal.h:134
libwps_OLE::AllocTable::AllocTable
AllocTable()
Definition: WPSOLEStream.cpp:162
libwps_OLE::IStream::read
unsigned long read(unsigned char *data, unsigned long maxlen)
Definition: WPSOLEStream.cpp:712
libwps_OLE::DirTree::saveSize
unsigned saveSize() const
return space required to save a dir entry
Definition: WPSOLEStream.cpp:376
libwps_OLE::DirEntry::m_macRootEntry
bool m_macRootEntry
false if invalid (should be skipped)
Definition: WPSOLEStream.cpp:287
libwps_OLE::DirEntry::m_name
std::string m_name
the file information
Definition: WPSOLEStream.cpp:298
libwps_OLE::OStorage::OStorage
OStorage(unsigned long minSize=0)
constructor
Definition: WPSOLEStream.cpp:559
libwps_OLE::OStorage
Definition: WPSOLEStream.cpp:556
libwps_OLE::Header::load
void load(const unsigned char *buffer, unsigned long size)
Definition: WPSOLEStream.cpp:779
libwps_OLE::OStorage::m_num_bbat
unsigned m_num_bbat
Definition: WPSOLEStream.cpp:679
libwps_OLE::AllocTable::m_data
std::vector< unsigned long > m_data
Definition: WPSOLEStream.cpp:213
libwps_OLE::DirEntry::m_start
unsigned long m_start
size (not valid if directory)
Definition: WPSOLEStream.cpp:291
libwps_OLE::Header::m_magic
unsigned char m_magic[8]
Definition: WPSOLEStream.cpp:119
libwps_OLE::IStorage::m_isLoad
bool m_isLoad
Definition: WPSOLEStream.cpp:547
libwps::GenericException
Definition: libwps_internal.h:162
libwps_OLE::DirEntry::save
void save(unsigned char *buffer) const
saves a entry content in buffer *‍/
Definition: WPSOLEStream.cpp:906
libwps_OLE::DirEntry::filename
std::string const & filename() const
returns the string which was store inside the file.
Definition: WPSOLEStream.cpp:267
libwps_OLE::OStorage::addDirectory
bool addDirectory(std::string const &dir)
add a new directory (usefull to create empty leaf dir )
Definition: WPSOLEStream.cpp:1375
libwps_OLE::AllocTable
Definition: WPSOLEStream.cpp:159
libwps_OLE::IStream::m_iStorage
IStorage * m_iStorage
Definition: WPSOLEStream.cpp:695
libwps_OLE::IStream::readData
unsigned long readData(unsigned long pos, unsigned char *data, unsigned long maxlen)
try to read maxlen data using m_data
Definition: WPSOLEStream.cpp:1582
libwps_OLE::OStorage::setRevision
void setRevision(unsigned rev)
set the OLE revision
Definition: WPSOLEStream.cpp:573
libwps_OLE::DirTree::getSubStreamList
std::vector< std::string > getSubStreamList(unsigned ind=0, bool retrieveAll=false)
returns the list of ind substream
Definition: WPSOLEStream.cpp:358
libwps_OLE::OStorage::OStorage
OStorage(const OStorage &)
libwps_OLE::AllocTable::clear
void clear()
libwps_OLE::WPSOLEStream
internal class used to create a RVNGInputStream from an OLE file
Definition: WPSOLEStream.cpp:1760
libwps_OLE::DirTree::CompareEntryName
a comparaison funcion of DirTree used to sort the entry by name
Definition: WPSOLEStream.cpp:437
libwps_OLE::Header::valid
bool valid(unsigned long fileSize) const
Definition: WPSOLEStream.cpp:763
libwps_OLE::Header::valid_signature
bool valid_signature() const
Definition: WPSOLEStream.cpp:142
libwps_OLE::DirTree
Definition: WPSOLEStream.cpp:302
libwps_OLE::IStorage::UnknownError
@ UnknownError
Definition: WPSOLEStream.cpp:476
libwps_OLE::IStream::~IStream
~IStream()
Definition: WPSOLEStream.cpp:701
libwps_OLE::AllocTable::load
void load(const unsigned char *buffer, unsigned len)
Definition: WPSOLEStream.cpp:186
libwps_OLE::OStorage::m_num_sbat
unsigned m_num_sbat
Definition: WPSOLEStream.cpp:681
libwps_OLE::IStorage::OpenFailed
@ OpenFailed
Definition: WPSOLEStream.cpp:476
libwps_OLE::IStorage::~IStorage
~IStorage()
Definition: WPSOLEStream.cpp:489
libwps_OLE::Header::s_ole_magic
static const unsigned char s_ole_magic[]
Definition: WPSOLEStream.cpp:152
libwps_OLE::Header::m_revision
unsigned m_revision
Definition: WPSOLEStream.cpp:120
libwps_OLE::DirEntry::m_right
unsigned m_right
starting block
Definition: WPSOLEStream.cpp:292
libwps_OLE::DirEntry::m_child
unsigned m_child
next sibling
Definition: WPSOLEStream.cpp:294
libwps_OLE::OStorage::getDataAddress
size_t getDataAddress(unsigned block, bool isBig) const
returns the address of a big/small block
Definition: WPSOLEStream.cpp:628
libwps_OLE::AllocTable::save
void save(unsigned char *buffer) const
Definition: WPSOLEStream.cpp:195
libwps_OLE::WPSOLEStream::WPSOLEStream
WPSOLEStream(const WPSOLEStream &)=delete
libwps_OLE::DirTree::save
void save(unsigned char *buffer) const
save the list of direntry in buffer
Definition: WPSOLEStream.cpp:383
libwps_OLE::DirEntry::m_left
unsigned m_left
previous sibling
Definition: WPSOLEStream.cpp:293
libwps_OLE::IStorage::loadBigBlock
unsigned long loadBigBlock(unsigned long block, unsigned char *buffer, unsigned long maxlen) const
Definition: WPSOLEStream.cpp:1310
libwps_OLE::DirTree::hasRootTypePc
bool hasRootTypePc() const
returns true if it is a pc file
Definition: WPSOLEStream.cpp:314
libwps_OLE::Header::m_shift_sbat
unsigned m_shift_sbat
Definition: WPSOLEStream.cpp:126
libwps_OLE::IStream::m_pos
unsigned long m_pos
Definition: WPSOLEStream.cpp:741
libwps::readData
bool readData(RVNGInputStreamPtr &input, unsigned long size, librevenge::RVNGBinaryData &data)
try to read sz bytes from input and store them in a librevenge::RVNGBinaryData
Definition: libwps_internal.cpp:332
libwps_OLE::IStorage::Result
Result
Definition: WPSOLEStream.cpp:476
libwps_OLE::DirEntry
Definition: WPSOLEStream.cpp:244
libwps_OLE::DirTree::get_siblings
void get_siblings(unsigned ind, std::set< unsigned > &seens) const
constructs the list of siblings ( by filling the seens set )
Definition: WPSOLEStream.cpp:406
libwps_tools_win::Language::name
std::string name(long id)
returns the name given Windows id
Definition: libwps_tools_win.cpp:7332
libwps_OLE::OStorage::createEntry
DirEntry * createEntry(std::string const &name)
return a new dir entry, if it does not exists
Definition: WPSOLEStream.cpp:655
libwps_OLE::IStorage::m_header
Header m_header
Definition: WPSOLEStream.cpp:481
libwps_OLE::DirTree::find_child
unsigned find_child(unsigned ind, const std::string &name) const
tries to find a child of ind with a given name
Definition: WPSOLEStream.cpp:343
libwps_OLE::IStorage::operator=
IStorage & operator=(const IStorage &)
libwps_OLE::AllocTable::operator=
AllocTable & operator=(const AllocTable &)
libwps_OLE::DirInfo::hasCLSId
bool hasCLSId() const
returns true if the clsid field is filed
Definition: WPSOLEStream.cpp:231
RVNGInputStreamPtr
std::shared_ptr< librevenge::RVNGInputStream > RVNGInputStreamPtr
shared pointer to librevenge::RVNGInputStream
Definition: libwps_internal.h:87
libwps_OLE::Eof
@ Eof
Definition: WPSOLEStream.cpp:70
libwps_OLE::Header::m_num_mbat
unsigned m_num_mbat
Definition: WPSOLEStream.cpp:131
libwps_OLE::IStream::readUsingStorage
unsigned long readUsingStorage(unsigned long pos, unsigned char *data, unsigned long maxlen)
try to read maxlen data using m_iStorage
Definition: WPSOLEStream.cpp:1596
libwps_OLE::DirTree::entry
DirEntry * entry(const std::string &name)
returns the entry with a given name
Definition: WPSOLEStream.cpp:336
libwps_OLE::DirTree::CompareEntryName::operator()
bool operator()(unsigned ind1, unsigned ind2) const
comparaison function
Definition: WPSOLEStream.cpp:443
libwps_OLE::WPSOLEStream::subStreamName
const char * subStreamName(unsigned id) final
returns the ith sub streams name
Definition: WPSOLEStream.cpp:1824
libwps_OLE::IStorage::NotOLE
@ NotOLE
Definition: WPSOLEStream.cpp:476
libwps_OLE::getLength
static unsigned long getLength(librevenge::RVNGInputStream *const input)
Definition: WPSOLEStream.cpp:96
libwps_OLE::IStorage::loadSmallBlocks
unsigned long loadSmallBlocks(std::vector< unsigned long > const &blocks, unsigned char *buffer, unsigned long maxlen)
Definition: WPSOLEStream.cpp:1325
libwps_OLE::AllocTable::set
void set(unsigned long index, unsigned long val)
Definition: WPSOLEStream.cpp:175
libwps_OLE::WPSOLEStream::subStreamCount
unsigned subStreamCount() final
returns the number of sub streams.
Definition: WPSOLEStream.cpp:1819
libwps_internal.h
libwps_OLE::Header::Header
Header()
Definition: WPSOLEStream.cpp:750
libwps_OLE::readU32
static unsigned readU32(const unsigned char *ptr)
Definition: WPSOLEStream.cpp:77
libwps_OLE::AllocTable::follow
std::vector< unsigned long > follow(unsigned long start) const
Definition: WPSOLEStream.cpp:831
libwps_OLE::OStorage::m_sbat
AllocTable m_sbat
Definition: WPSOLEStream.cpp:680
libwps_OLE::IStorage::entry
DirEntry * entry(const std::string &name)
returns a directory entry corresponding to a name
Definition: WPSOLEStream.cpp:498
libwps_OLE::writeU32
static void writeU32(unsigned char *ptr, unsigned long data)
Definition: WPSOLEStream.cpp:88
libwps_OLE::NotFound
@ NotFound
Definition: WPSOLEStream.cpp:70
libwps_OLE::IStorage::hasRootTypePc
bool hasRootTypePc() const
returns true if it is a pc file
Definition: WPSOLEStream.cpp:517
libwps_OLE::OStorage::m_sb_blocks
std::vector< unsigned long > m_sb_blocks
Definition: WPSOLEStream.cpp:683
libwps_OLE::OStorage::~OStorage
~OStorage()
destructor
Definition: WPSOLEStream.cpp:565
libwps_OLE::WPSOLEStream::tell
long tell() final
returns actual offset position
Definition: WPSOLEStream.cpp:1796
librevenge
Definition: WPSOLEStream.h:34
libwps_OLE::OStorage::getSubStreamList
std::vector< std::string > getSubStreamList(unsigned ind=0, bool all=false)
function to retrieve the list of actual direntry
Definition: WPSOLEStream.cpp:568
libwps_OLE::IStorage::getSubStreamList
std::vector< std::string > getSubStreamList(unsigned ind=0, bool retrieveAll=false)
returns the list of subStream given a dirEntry index
Definition: WPSOLEStream.cpp:524
libwps_OLE::Header::compute_block_size
void compute_block_size()
Definition: WPSOLEStream.cpp:135
libwps_OLE::Header::m_shift_bbat
unsigned m_shift_bbat
Definition: WPSOLEStream.cpp:128
libwps_OLE::DirTree::setInRedBlackTreeForm
void setInRedBlackTreeForm()
check/update so that the sibling are store with a red black tree
Definition: WPSOLEStream.cpp:370
libwps_OLE::AllocTable::operator[]
unsigned long operator[](unsigned long index) const
Definition: WPSOLEStream.cpp:182
libwps_OLE::MetaBat
@ MetaBat
Definition: WPSOLEStream.cpp:70
libwps_OLE::Header
Definition: WPSOLEStream.cpp:117
libwps_OLE::Header::m_num_sbat
unsigned m_num_sbat
Definition: WPSOLEStream.cpp:125
libwps_OLE::Header::m_start_dirent
unsigned m_start_dirent
Definition: WPSOLEStream.cpp:122
WPSStringStream.h
libwps_OLE::DirEntry::DirEntry
DirEntry()
constructor
Definition: WPSOLEStream.cpp:248
libwps_OLE::WPSOLEStream::operator=
WPSOLEStream & operator=(const WPSOLEStream &)=delete
libwps_OLE::AllocTable::saveSize
unsigned saveSize() const
Definition: WPSOLEStream.cpp:207
libwps_OLE::IStorage::load
void load()
Definition: WPSOLEStream.cpp:1181
libwps_OLE::WPSOLEStream::m_streamNameList
std::vector< std::string > m_streamNameList
return the name list
Definition: WPSOLEStream.cpp:1852
libwps_OLE::OStorage::useBigBlockFor
bool useBigBlockFor(unsigned long size) const
return true if we need to use big block
Definition: WPSOLEStream.cpp:618
libwps_OLE::WPSOLEStream::m_input
RVNGInputStreamPtr m_input
the main input
Definition: WPSOLEStream.cpp:1850
libwps_OLE::IStorage::isStructured
bool isStructured()
Definition: WPSOLEStream.cpp:1156
libwps_OLE::OStorage::updateToSave
bool updateToSave()
finish to update the file ( note: it is better to call this function only one time )
Definition: WPSOLEStream.cpp:1399
libwps_OLE::IStorage::m_dirtree
DirTree m_dirtree
Definition: WPSOLEStream.cpp:482
WPSOLEStream.h
libwps_OLE::IStream
Definition: WPSOLEStream.cpp:693
libwps_OLE::DirEntry::load
void load(unsigned char *buffer, unsigned len)
reads a entry content in buffer
Definition: WPSOLEStream.cpp:860
libwps_OLE::AllocTable::setChain
void setChain(std::vector< unsigned long > chain, unsigned end)
Definition: WPSOLEStream.cpp:850
libwps_OLE::DirEntry::End
@ End
Definition: WPSOLEStream.cpp:246
libwps_OLE::OStorage::addStream
bool addStream(std::string const &name, unsigned char const *buffer, unsigned long len)
add a new stream knowing its data
Definition: WPSOLEStream.cpp:1384
libwps_OLE::DirEntry::m_colour
unsigned m_colour
the type
Definition: WPSOLEStream.cpp:289
libwps_OLE::DirTree::DirTree
DirTree(const DirTree &)
libwps_OLE::IStorage::isSubStream
bool isSubStream(const std::string &name, bool &isDir)
returns true if the entry exists in the OLE, if so fills isDir
Definition: WPSOLEStream.cpp:1170
libwps_OLE::WPSOLEStream::getSubStreamByName
librevenge::RVNGInputStream * getSubStreamByName(const char *name) final
return a new stream for a ole zone
Definition: WPSOLEStream.cpp:1858
libwps_OLE::IStorage
Definition: WPSOLEStream.cpp:473
libwps_OLE::IStorage::loadSmallBlock
unsigned long loadSmallBlock(unsigned long block, unsigned char *buffer, unsigned long maxlen)
Definition: WPSOLEStream.cpp:1360

Generated on Sat Sep 12 2020 08:41:48 for libwps by doxygen 1.8.19