- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

ABWParser.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 libabw 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 __ABWPARSER_H__
11 #define __ABWPARSER_H__
12
13 #include <boost/scoped_ptr.hpp>
14
15 #include <librevenge/librevenge.h>
16 #include "ABWXMLHelper.h"
17
18 namespace libabw
19 {
20
21 class ABWCollector;
22 struct ABWParserState;
23
24 class ABWParser
25 {
26 public:
27 explicit ABWParser(librevenge::RVNGInputStream *input, librevenge::RVNGTextInterface *iface);
28 virtual ~ABWParser();
29 bool parse();
30
31 private:
32 ABWParser();
33 ABWParser(const ABWParser &);
34 ABWParser &operator=(const ABWParser &);
35
36 // Helper functions
37
38 int getElementToken(xmlTextReaderPtr reader);
39
40 // Functions to read the AWML document structure
41
42 bool processXmlDocument(librevenge::RVNGInputStream *input);
43 void processXmlNode(xmlTextReaderPtr reader);
44
45 void readAbiword(xmlTextReaderPtr reader);
46 void readM(xmlTextReaderPtr reader);
47 void readHistory(xmlTextReaderPtr reader);
48 void readRevisions(xmlTextReaderPtr reader);
49 void readIgnoredWords(xmlTextReaderPtr reader);
50 void readPageSize(xmlTextReaderPtr reader);
51 void readSection(xmlTextReaderPtr reader);
52 void readA(xmlTextReaderPtr reader);
53 void readC(xmlTextReaderPtr reader);
54 void readD(xmlTextReaderPtr reader);
55 void readL(xmlTextReaderPtr reader);
56 void readP(xmlTextReaderPtr reader);
57 void readS(xmlTextReaderPtr reader);
58 void readEndnote(xmlTextReaderPtr reader);
59 void readFoot(xmlTextReaderPtr reader);
60 void readImage(xmlTextReaderPtr reader);
61
62 void readTable(xmlTextReaderPtr reader);
63 void readCell(xmlTextReaderPtr reader);
64
65 librevenge::RVNGInputStream *m_input;
66 librevenge::RVNGTextInterface *m_iface;
67 ABWCollector *m_collector;
68 boost::scoped_ptr<ABWParserState> m_state;
69 };
70
71 } // namespace libabw
72
73 #endif // __ABWPARSER_H__
74 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
libabw::ABWParser::readSection
void readSection(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:434
libabw::ABWParser::m_iface
librevenge::RVNGTextInterface * m_iface
Definition: ABWParser.h:66
libabw::ABWParser::readHistory
void readHistory(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:346
libabw::ABWParser::readImage
void readImage(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:654
libabw::ABWParser::readS
void readS(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:541
libabw::ABWParser::parse
bool parse()
Definition: ABWParser.cpp:94
libabw::ABWParser::readD
void readD(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:487
libabw::ABWParser::~ABWParser
virtual ~ABWParser()
Definition: ABWParser.cpp:90
libabw::ABWParser::m_collector
ABWCollector * m_collector
Definition: ABWParser.h:67
libabw::ABWParser::readFoot
void readFoot(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:627
libabw::ABWParser::m_input
librevenge::RVNGInputStream * m_input
Definition: ABWParser.h:65
libabw
Definition: ABWCollector.h:17
libabw::ABWParser::readTable
void readTable(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:636
libabw::ABWParser::readL
void readL(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:666
libabw::ABWParser::readC
void readC(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:605
libabw::ABWParser::readPageSize
void readPageSize(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:416
libabw::ABWParser::readRevisions
void readRevisions(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:369
ABWXMLHelper.h
libabw::ABWParser::readIgnoredWords
void readIgnoredWords(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:393
libabw::ABWParser::operator=
ABWParser & operator=(const ABWParser &)
libabw::ABWParser::processXmlDocument
bool processXmlDocument(librevenge::RVNGInputStream *input)
Definition: ABWParser.cpp:132
libabw::ABWParser::readA
void readA(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:574
libabw::ABWParser::processXmlNode
void processXmlNode(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:156
libabw::ABWParser::readP
void readP(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:583
libabw::ABWCollector
Definition: ABWCollector.h:103
libabw::ABWParser::readEndnote
void readEndnote(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:618
libabw::ABWParser
Definition: ABWParser.h:24
libabw::ABWParser::m_state
boost::scoped_ptr< ABWParserState > m_state
Definition: ABWParser.h:68
libabw::ABWParser::readM
void readM(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:338
libabw::ABWParser::readAbiword
void readAbiword(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:329
libabw::ABWParser::ABWParser
ABWParser()
libabw::ABWParser::getElementToken
int getElementToken(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:324
libabw::ABWParser::readCell
void readCell(xmlTextReaderPtr reader)
Definition: ABWParser.cpp:645