EPUBGenerator.h Source File documentation

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

EPUBGenerator.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 libepubgen 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 INCLUDED_EPUBGENERATOR_H
11 #define INCLUDED_EPUBGENERATOR_H
12
13 #include "EPUBHTMLManager.h"
14 #include "EPUBHTMLGenerator.h"
15 #include "EPUBImageManager.h"
16 #include "EPUBListStyleManager.h"
17 #include "EPUBManifest.h"
18 #include "EPUBParagraphStyleManager.h"
19 #include "EPUBPath.h"
20 #include "EPUBSpanStyleManager.h"
21 #include "EPUBSplitGuard.h"
22 #include "EPUBTableStyleManager.h"
23
24 namespace libepubgen
25 {
26
27 class EPUBPackage;
28
29 class EPUBGenerator
30 {
31 // disable copying
32 EPUBGenerator(const EPUBGenerator &);
33 EPUBGenerator &operator=(const EPUBGenerator &);
34
35 public:
36 EPUBGenerator(EPUBPackage *package, EPUBSplitMethod method);
37 virtual ~EPUBGenerator();
38
39 void startDocument(const librevenge::RVNGPropertyList &props);
40 void endDocument();
41
42 void setDocumentMetaData(const librevenge::RVNGPropertyList &props);
43
44 void startNewHtmlFile();
45
46 const EPUBHTMLGeneratorPtr_t &getHtml() const;
47
48 const EPUBSplitGuard &getSplitGuard() const;
49 EPUBSplitGuard &getSplitGuard();
50
51 private:
52 virtual void startHtmlFile() = 0;
53 virtual void endHtmlFile() = 0;
54
55 private:
56 void writeContainer();
57 void writeNavigation();
58 void writeStylesheet();
59 void writeRoot();
60
61 private:
62 EPUBPackage *m_package;
63 EPUBManifest m_manifest;
64 EPUBHTMLManager m_htmlManager;
65 EPUBImageManager m_imageManager;
66 EPUBListStyleManager m_listStyleManager;
67 EPUBParagraphStyleManager m_paragraphStyleManager;
68 EPUBSpanStyleManager m_spanStyleManager;
69 EPUBTableStyleManager m_tableStyleManager;
70 const EPUBPath m_stylesheetPath;
71
72 librevenge::RVNGPropertyList m_documentProps;
73 librevenge::RVNGPropertyList m_metadata;
74
75 EPUBHTMLGeneratorPtr_t m_currentHtml;
76
77 EPUBSplitGuard m_splitGuard;
78 };
79
80 }
81
82 #endif // INCLUDED_EPUBGENERATOR
83
84 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libepubgen::EPUBGenerator::startNewHtmlFile
void startNewHtmlFile()
Definition: EPUBGenerator.cpp:74
libepubgen::EPUBGenerator::operator=
EPUBGenerator & operator=(const EPUBGenerator &)
EPUBListStyleManager.h
libepubgen::EPUBSpanStyleManager
Small class to manage the span style.
Definition: EPUBSpanStyleManager.h:28
libepubgen::EPUBGenerator::m_metadata
librevenge::RVNGPropertyList m_metadata
Definition: EPUBGenerator.h:73
libepubgen
Definition: EPUBBinarySink.cpp:12
libepubgen::EPUBGenerator::m_listStyleManager
EPUBListStyleManager m_listStyleManager
Definition: EPUBGenerator.h:66
libepubgen::EPUBParagraphStyleManager
Small class to manage the paragraph style.
Definition: EPUBParagraphStyleManager.h:28
EPUBTableStyleManager.h
libepubgen::EPUBListStyleManager
Small class to manage the list style.
Definition: EPUBListStyleManager.h:30
libepubgen::EPUBHTMLManager
Definition: EPUBHTMLManager.h:34
libepubgen::EPUBGenerator::getHtml
const EPUBHTMLGeneratorPtr_t & getHtml() const
Definition: EPUBGenerator.cpp:94
libepubgen::EPUBGenerator::endDocument
void endDocument()
Definition: EPUBGenerator.cpp:53
libepubgen::EPUBGenerator::startHtmlFile
virtual void startHtmlFile()=0
libepubgen::EPUBGenerator::m_documentProps
librevenge::RVNGPropertyList m_documentProps
Definition: EPUBGenerator.h:72
libepubgen::EPUBTableStyleManager
Small class to manage the tables style.
Definition: EPUBTableStyleManager.h:28
libepubgen::EPUBGenerator::m_spanStyleManager
EPUBSpanStyleManager m_spanStyleManager
Definition: EPUBGenerator.h:68
libepubgen::EPUBGenerator::startDocument
void startDocument(const librevenge::RVNGPropertyList &props)
Definition: EPUBGenerator.cpp:43
libepubgen::EPUBGenerator::m_stylesheetPath
const EPUBPath m_stylesheetPath
Definition: EPUBGenerator.h:70
libepubgen::EPUBManifest
Definition: EPUBManifest.h:24
EPUBHTMLManager.h
libepubgen::EPUBSplitGuard
Definition: EPUBSplitGuard.h:18
libepubgen::EPUBGenerator::m_paragraphStyleManager
EPUBParagraphStyleManager m_paragraphStyleManager
Definition: EPUBGenerator.h:67
EPUBPath.h
EPUBManifest.h
libepubgen::EPUBGenerator::m_package
EPUBPackage * m_package
Definition: EPUBGenerator.h:62
libepubgen::EPUBPath
Representation of a path in the package.
Definition: EPUBPath.h:21
EPUBImageManager.h
libepubgen::EPUBGenerator::m_manifest
EPUBManifest m_manifest
Definition: EPUBGenerator.h:63
libepubgen::EPUBGenerator::getSplitGuard
const EPUBSplitGuard & getSplitGuard() const
Definition: EPUBGenerator.cpp:99
libepubgen::EPUBHTMLGeneratorPtr_t
boost::shared_ptr< EPUBHTMLGenerator > EPUBHTMLGeneratorPtr_t
Definition: EPUBHTMLGenerator.h:121
EPUBSpanStyleManager.h
EPUBSplitGuard.h
libepubgen::EPUBGenerator::endHtmlFile
virtual void endHtmlFile()=0
libepubgen::EPUBGenerator::m_tableStyleManager
EPUBTableStyleManager m_tableStyleManager
Definition: EPUBGenerator.h:69
libepubgen::EPUBGenerator::EPUBGenerator
EPUBGenerator(const EPUBGenerator &)
libepubgen::EPUBGenerator::m_currentHtml
EPUBHTMLGeneratorPtr_t m_currentHtml
Definition: EPUBGenerator.h:75
EPUBHTMLGenerator.h
libepubgen::EPUBGenerator::writeContainer
void writeContainer()
Definition: EPUBGenerator.cpp:109
libepubgen::EPUBGenerator::setDocumentMetaData
void setDocumentMetaData(const librevenge::RVNGPropertyList &props)
Definition: EPUBGenerator.cpp:69
libepubgen::EPUBGenerator::m_htmlManager
EPUBHTMLManager m_htmlManager
Definition: EPUBGenerator.h:64
EPUBParagraphStyleManager.h
libepubgen::EPUBGenerator::writeRoot
void writeRoot()
Definition: EPUBGenerator.cpp:176
libepubgen::EPUBGenerator::m_imageManager
EPUBImageManager m_imageManager
Definition: EPUBGenerator.h:65
libepubgen::EPUBGenerator
Definition: EPUBGenerator.h:29
libepubgen::EPUBGenerator::writeStylesheet
void writeStylesheet()
Definition: EPUBGenerator.cpp:164
libepubgen::EPUBGenerator::~EPUBGenerator
virtual ~EPUBGenerator()
Definition: EPUBGenerator.cpp:39
libepubgen::EPUBGenerator::writeNavigation
void writeNavigation()
Definition: EPUBGenerator.cpp:132
libepubgen::EPUBGenerator::m_splitGuard
EPUBSplitGuard m_splitGuard
Definition: EPUBGenerator.h:77
libepubgen::EPUBImageManager
Definition: EPUBImageManager.h:26