PAGParser.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 libetonyek 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 PAGPARSER_H_INCLUDED
11 #define PAGPARSER_H_INCLUDED
12 
13 #include <libxml/xmlreader.h>
14 
15 #include "libetonyek_utils.h"
16 
17 namespace libetonyek
18 {
19 
20 class PAGCollector;
21 class KEYXMLReader;
22 
23 class PAGParser
24 {
25  // -Weffc++
26  PAGParser(const PAGParser &);
27  PAGParser &operator=(const PAGParser &);
28 
30  {
38  };
39 
40 public:
42 
43  bool parse();
44 
45 private:
46  void parseDocument(const KEYXMLReader &reader);
47  void parseMetadata(const KEYXMLReader &reader);
48  void parseSectionPrototypes(const KEYXMLReader &reader);
49  void parseStylesheet(const KEYXMLReader &reader);
50  void parseHeaders(const KEYXMLReader &reader);
51  void parseFooters(const KEYXMLReader &reader);
52  void parseTextStorage(const KEYXMLReader &reader);
53 
54  void parseTextBody(const KEYXMLReader &reader, TextStorageKind kind);
55  void parseSection(const KEYXMLReader &reader);
56  void parseLayout(const KEYXMLReader &reader);
57  void parseP(const KEYXMLReader &reader);
58  void parseSpan(const KEYXMLReader &reader);
59  void parseTab(const KEYXMLReader &reader);
60  void parseBr(const KEYXMLReader &reader);
61 
62 private:
66 };
67 
68 } // namespace libetonyek
69 
70 #endif // PAGPARSER_H_INCLUDED
71 
72 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
Definition: EtonyekDocument.cpp:40
void parseP(const KEYXMLReader &reader)
Definition: PAGParser.cpp:217
void parseFooters(const KEYXMLReader &reader)
Definition: PAGParser.cpp:107
Definition: PAGCollector.h:18
void parseTextBody(const KEYXMLReader &reader, TextStorageKind kind)
Definition: PAGParser.cpp:167
PAGParser(const PAGParser &)
Definition: PAGParser.h:23
RVNGInputStreamPtr_t m_package
Definition: PAGParser.h:64
TextStorageKind
Definition: PAGParser.h:29
RVNGInputStreamPtr_t m_input
Definition: PAGParser.h:63
void parseSpan(const KEYXMLReader &reader)
Definition: PAGParser.cpp:253
void parseBr(const KEYXMLReader &reader)
Definition: PAGParser.cpp:295
void parseTab(const KEYXMLReader &reader)
Definition: PAGParser.cpp:286
void parseDocument(const KEYXMLReader &reader)
Definition: PAGParser.cpp:41
PAGCollector * m_collector
Definition: PAGParser.h:65
RVNGInputStreamPtr_t package
Definition: EtonyekDocument.cpp:60
PAGParser & operator=(const PAGParser &)
Definition: KEYXMLReader.h:20
bool parse()
Definition: PAGParser.cpp:30
boost::shared_ptr< librevenge::RVNGInputStream > RVNGInputStreamPtr_t
Definition: libetonyek_utils.h:88
RVNGInputStreamPtr_t input
Definition: EtonyekDocument.cpp:59
void parseSectionPrototypes(const KEYXMLReader &reader)
Definition: PAGParser.cpp:86
void parseMetadata(const KEYXMLReader &reader)
Definition: PAGParser.cpp:79
void parseStylesheet(const KEYXMLReader &reader)
Definition: PAGParser.cpp:93
void parseSection(const KEYXMLReader &reader)
Definition: PAGParser.cpp:189
Definition: KEY2Token.h:1010
void parseTextStorage(const KEYXMLReader &reader)
Definition: PAGParser.cpp:114
void parseHeaders(const KEYXMLReader &reader)
Definition: PAGParser.cpp:100
void parseLayout(const KEYXMLReader &reader)
Definition: PAGParser.cpp:203

Generated for libetonyek by doxygen 1.8.9.1