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 &);
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: */
RVNGInputStreamPtr_t input
Definition: EtonyekDocument.cpp:59
RVNGInputStreamPtr_t package
Definition: EtonyekDocument.cpp:60
Definition: KEYXMLReader.h:21
Definition: PAGCollector.h:19
Definition: PAGParser.h:24
void parseMetadata(const KEYXMLReader &reader)
Definition: PAGParser.cpp:79
void parseStylesheet(const KEYXMLReader &reader)
Definition: PAGParser.cpp:93
void parseP(const KEYXMLReader &reader)
Definition: PAGParser.cpp:217
void parseSpan(const KEYXMLReader &reader)
Definition: PAGParser.cpp:253
PAGParser(const PAGParser &)
void parseLayout(const KEYXMLReader &reader)
Definition: PAGParser.cpp:203
RVNGInputStreamPtr_t m_package
Definition: PAGParser.h:64
RVNGInputStreamPtr_t m_input
Definition: PAGParser.h:63
void parseHeaders(const KEYXMLReader &reader)
Definition: PAGParser.cpp:100
void parseFooters(const KEYXMLReader &reader)
Definition: PAGParser.cpp:107
void parseDocument(const KEYXMLReader &reader)
Definition: PAGParser.cpp:41
TextStorageKind
Definition: PAGParser.h:30
@ TEXT_STORAGE_KIND_HEADER
Definition: PAGParser.h:33
@ TEXT_STORAGE_KIND_CELL
Definition: PAGParser.h:37
@ TEXT_STORAGE_KIND_BODY
Definition: PAGParser.h:32
@ TEXT_STORAGE_KIND_UNKNOWN
Definition: PAGParser.h:31
@ TEXT_STORAGE_KIND_NOTE
Definition: PAGParser.h:36
@ TEXT_STORAGE_KIND_FOOTNOTE
Definition: PAGParser.h:34
@ TEXT_STORAGE_KIND_TEXTBOX
Definition: PAGParser.h:35
void parseTextStorage(const KEYXMLReader &reader)
Definition: PAGParser.cpp:114
bool parse()
Definition: PAGParser.cpp:30
PAGParser & operator=(const PAGParser &)
void parseTextBody(const KEYXMLReader &reader, TextStorageKind kind)
Definition: PAGParser.cpp:167
void parseTab(const KEYXMLReader &reader)
Definition: PAGParser.cpp:286
void parseSectionPrototypes(const KEYXMLReader &reader)
Definition: PAGParser.cpp:86
PAGCollector * m_collector
Definition: PAGParser.h:65
void parseBr(const KEYXMLReader &reader)
Definition: PAGParser.cpp:295
void parseSection(const KEYXMLReader &reader)
Definition: PAGParser.cpp:189
@ kind
Definition: KEY2Token.h:1010
Definition: EtonyekDocument.cpp:41
boost::shared_ptr< librevenge::RVNGInputStream > RVNGInputStreamPtr_t
Definition: libetonyek_utils.h:88

Generated for libetonyek by doxygen 1.9.1