VSD5Parser.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 libvisio 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 __VSD5PARSER_H__
11 #define __VSD5PARSER_H__
12 
13 #include <stdio.h>
14 #include <iostream>
15 #include <librevenge/librevenge.h>
16 #include "VSD6Parser.h"
17 #include "VSDInternalStream.h"
18 
19 namespace libvisio
20 {
21 
22 class VSD5Parser : public VSD6Parser
23 {
24 public:
25  explicit VSD5Parser(librevenge::RVNGInputStream *input, librevenge::RVNGDrawingInterface *painter);
26  ~VSD5Parser() override;
27 
28 protected:
29  void readPointer(librevenge::RVNGInputStream *input, Pointer &ptr) override;
30  bool getChunkHeader(librevenge::RVNGInputStream *input) override;
31  void readPointerInfo(librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned &listSize, int &pointerCount) override;
32 
33  void readGeomList(librevenge::RVNGInputStream *input) override;
34  void readCharList(librevenge::RVNGInputStream *input) override;
35  void readParaList(librevenge::RVNGInputStream *input) override;
36  void readShapeList(librevenge::RVNGInputStream *input) override;
37  void readPropList(librevenge::RVNGInputStream *input) override;
38  void readFieldList(librevenge::RVNGInputStream *input) override;
39  void readNameList2(librevenge::RVNGInputStream *input) override;
40  void readTabsDataList(librevenge::RVNGInputStream *input) override;
41 
42  void readLine(librevenge::RVNGInputStream *input) override;
43  void readFillAndShadow(librevenge::RVNGInputStream *input) override;
44  void readTextBlock(librevenge::RVNGInputStream *input) override;
45  void readCharIX(librevenge::RVNGInputStream *input) override;
46  void readParaIX(librevenge::RVNGInputStream *input) override;
47  void readTextField(librevenge::RVNGInputStream *input) override;
48 
49  void readShape(librevenge::RVNGInputStream *input) override;
50  void readPage(librevenge::RVNGInputStream *input) override;
51 
52  virtual void handleChunkRecords(librevenge::RVNGInputStream *input);
53 
54  void readStyleSheet(librevenge::RVNGInputStream *input) override;
55 
56  void readNameIDX(librevenge::RVNGInputStream *input) override;
57 
58  void readMisc(librevenge::RVNGInputStream *input) override;
59 
60  void readXForm1D(librevenge::RVNGInputStream *input) override;
61 
62  unsigned getUInt(librevenge::RVNGInputStream *input) override;
63  int getInt(librevenge::RVNGInputStream *input) override;
64 
65 private:
66  VSD5Parser();
67  VSD5Parser(const VSDParser &);
68  VSD5Parser &operator=(const VSDParser &);
69 
70  void readList(librevenge::RVNGInputStream *input);
71 };
72 
73 } // namespace libvisio
74 
75 #endif // __VSD5PARSER_H__
76 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */
virtual void handleChunkRecords(librevenge::RVNGInputStream *input)
Definition: VSD5Parser.cpp:99
void readLine(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:201
void readList(librevenge::RVNGInputStream *input)
Definition: VSD5Parser.cpp:152
void readCharList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:159
void readFieldList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:183
void readStyleSheet(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:363
void readNameList2(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:189
int getInt(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:517
Definition: VSD6Parser.h:22
Definition: VSDParser.h:34
void readMisc(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:488
void readParaIX(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:221
void readPointerInfo(librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned &listSize, int &pointerCount) override
Definition: VSD5Parser.cpp:38
void readPage(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:424
void readFillAndShadow(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:330
void readGeomList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:140
Definition: VSDParser.h:47
~VSD5Parser() override
Definition: VSD5Parser.cpp:26
void readShapeList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:171
void readPropList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:177
void readShape(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:373
unsigned getUInt(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:511
void readXForm1D(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:497
VSD5Parser & operator=(const VSDParser &)
void readTabsDataList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:195
Definition: libvisio_utils.h:48
void readPointer(librevenge::RVNGInputStream *input, Pointer &ptr) override
Definition: VSD5Parser.cpp:29
void readNameIDX(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:470
void readTextField(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:455
void readParaList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:165
void readCharIX(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:266
void readTextBlock(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:430
bool getChunkHeader(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:74
Definition: VSD5Parser.h:22

Generated for libvisio by doxygen 1.8.14