IMPResourceDir.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /*
3  * This file is part of the libe-book project.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this
7  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8  */
9 
10 #ifndef IMPRESOURCEDIR_H_INCLUDED
11 #define IMPRESOURCEDIR_H_INCLUDED
12 
13 #include <boost/shared_ptr.hpp>
14 
15 
16 namespace libebook
17 {
18 
19 class IMPHeader;
20 class IMPResourceDirImpl;
21 
25 {
26 public:
27  IMPResourceDir(librevenge::RVNGInputStream *input, const IMPHeader &header);
28 
36  boost::shared_ptr<librevenge::RVNGInputStream> getNameStream() const;
37 
44  boost::shared_ptr<librevenge::RVNGInputStream> getTypeStream() const;
45 
46 private:
47  boost::shared_ptr<IMPResourceDirImpl> m_impl;
48 };
49 
50 }
51 
52 #endif // IMPRESOURCEDIR_H_INCLUDED
53 
54 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
m_resourceDir
const shared_ptr< IMPResourceDirImpl > m_resourceDir
Definition: IMPResourceDir.cpp:52
IMPResourceDir.h
libebook::IMPResourceDirImpl::m_typeMap
TypeMap_t m_typeMap
Definition: IMPResourceDir.cpp:103
libebook::IMPResourceDirImpl::ResourceMap_t
boost::unordered_map< string, ResourceInfo > ResourceMap_t
Definition: IMPResourceDir.cpp:82
length
unsigned length
Definition: IMPParser.cpp:72
libebook::IMPResourceDir
Read the resource tree and provide access to it as an OLE stream.
Definition: IMPResourceDir.h:25
libebook::IMPResourceDir::IMPResourceDir
IMPResourceDir(librevenge::RVNGInputStream *input, const IMPHeader &header)
Definition: IMPResourceDir.cpp:202
libebook::IMPHeader
Definition: IMPHeader.h:22
libebook::IMPResourceDirImpl::getResourceByName
librevenge::RVNGInputStream * getResourceByName(const char *name) const
Definition: IMPResourceDir.cpp:296
libebook::EBOOKHTMLToken::get
@ get
Definition: EBOOKHTMLToken.h:285
libebook
Definition: CHMParser.cpp:21
libebook::IMPResourceDirImpl::ResourceInfo::offset
unsigned offset
Definition: IMPResourceDir.cpp:77
libebook_utils.h
libebook::IMPResourceDirImpl::createStream
librevenge::RVNGInputStream * createStream(const ResourceInfo &info) const
Definition: IMPResourceDir.cpp:350
libebook::EBOOKMemoryStream
Definition: EBOOKMemoryStream.h:19
libebook::IMPResourceDirImpl::TypeMap_t
boost::unordered_map< string, ResourceMap_t::const_iterator > TypeMap_t
Definition: IMPResourceDir.cpp:83
libebook::readNBytes
const unsigned char * readNBytes(librevenge::RVNGInputStream *const input, const unsigned long numBytes)
Definition: libebook_utils.cpp:103
libebook::IMPResourceDir::m_impl
boost::shared_ptr< IMPResourceDirImpl > m_impl
Definition: IMPResourceDir.h:47
EBOOKMemoryStream.h
libebook::EBOOKHTMLToken::i
@ i
Definition: EBOOKHTMLToken.h:88
libebook::seek
void seek(librevenge::RVNGInputStream *const input, const unsigned long pos)
Definition: libebook_utils.cpp:150
libebook::IMPResourceDirImpl::m_start
unsigned m_start
Definition: IMPResourceDir.cpp:100
libebook::IMPResourceDirImpl::ResourceInfo::length
unsigned length
Definition: IMPResourceDir.cpp:78
IMPHeader.h
libebook::IMPResourceDirImpl
Definition: IMPResourceDir.cpp:68
libebook::IMPResourceDirImpl::m_stream
librevenge::RVNGInputStream * m_stream
Definition: IMPResourceDir.cpp:99
libebook::IMPResourceDirImpl::getResourceByType
librevenge::RVNGInputStream * getResourceByType(const char *type) const
Definition: IMPResourceDir.cpp:307
libebook::EBOOKHTMLToken::input
@ input
Definition: EBOOKHTMLToken.h:91
libebook::readU16
uint16_t readU16(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libebook_utils.cpp:55
data
MSPackFileData * data
Definition: CHMStream.cpp:63
libebook::IMPResourceDirImpl::operator=
IMPResourceDirImpl & operator=(const IMPResourceDirImpl &other)
libebook::IMPResourceDirImpl::findResourceByType
ResourceMap_t::const_iterator findResourceByType(const char *type) const
Definition: IMPResourceDir.cpp:324
offset
unsigned offset
Definition: IMPParser.cpp:73
libebook::IMPResourceDir::getNameStream
boost::shared_ptr< librevenge::RVNGInputStream > getNameStream() const
Get OLE stream for this resource directory.
Definition: IMPResourceDir.cpp:209
libebook::IMPResourceDirImpl::getDirStream
librevenge::RVNGInputStream * getDirStream() const
Definition: IMPResourceDir.cpp:289
name
string name
Definition: CHMStream.cpp:80
libebook::readU32
uint32_t readU32(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libebook_utils.cpp:71
libebook::EBOOKHTMLToken::header
@ header
Definition: EBOOKHTMLToken.h:84
libebook::IMPResourceDirImpl::IMPResourceDirImpl
IMPResourceDirImpl(const IMPResourceDirImpl &other)
libebook::IMPResourceDir::getTypeStream
boost::shared_ptr< librevenge::RVNGInputStream > getTypeStream() const
Get OLE stream for this resource directory.
Definition: IMPResourceDir.cpp:216
m_stream
const shared_ptr< librevenge::RVNGInputStream > m_stream
Definition: IMPResourceDir.cpp:51
EBOOK_DEBUG_MSG
#define EBOOK_DEBUG_MSG(M)
Definition: libebook_utils.h:73
libebook::IMPResourceDirImpl::ResourceInfo
Definition: IMPResourceDir.cpp:74
type
EBOOKDocument::Type type
Definition: EBOOKDocument.cpp:328
libebook::IMPResourceDirImpl::m_resourceMap
ResourceMap_t m_resourceMap
Definition: IMPResourceDir.cpp:102
libebook::IMPResourceDirImpl::ResourceInfo::ResourceInfo
ResourceInfo()
Definition: IMPResourceDir.cpp:223
libebook::IMPResourceDirImpl::m_length
unsigned m_length
Definition: IMPResourceDir.cpp:101
libebook::IMPResourceDirImpl::ResourceInfo::type
optional< string > type
Definition: IMPResourceDir.cpp:79
libebook::skip
void skip(librevenge::RVNGInputStream *input, unsigned long numBytes)
Definition: libebook_utils.cpp:143
libebook::EBOOKOPFToken::version
@ version
Definition: EBOOKOPFToken.h:99
libebook::GenericException
Definition: libebook_utils.h:132

Generated for libe-book by doxygen 1.8.18