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:100
void readLine(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:202
void readList(librevenge::RVNGInputStream *input)
Definition: VSD5Parser.cpp:153
void readCharList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:160
void readFieldList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:184
void readStyleSheet(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:364
void readNameList2(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:190
int getInt(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:518
Definition: VSD6Parser.h:22
Definition: VSDParser.h:34
void readMisc(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:489
void readParaIX(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:222
void readPointerInfo(librevenge::RVNGInputStream *input, unsigned ptrType, unsigned shift, unsigned &listSize, int &pointerCount) override
Definition: VSD5Parser.cpp:39
void readPage(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:425
void readFillAndShadow(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:331
void readGeomList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:141
Definition: VSDParser.h:47
~VSD5Parser() override
Definition: VSD5Parser.cpp:27
void readShapeList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:172
void readPropList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:178
void readShape(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:374
unsigned getUInt(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:512
void readXForm1D(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:498
VSD5Parser & operator=(const VSDParser &)
void readTabsDataList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:196
Definition: libvisio_utils.h:48
void readPointer(librevenge::RVNGInputStream *input, Pointer &ptr) override
Definition: VSD5Parser.cpp:30
void readNameIDX(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:471
void readTextField(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:456
void readParaList(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:166
void readCharIX(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:267
void readTextBlock(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:431
bool getChunkHeader(librevenge::RVNGInputStream *input) override
Definition: VSD5Parser.cpp:75
Definition: VSD5Parser.h:22

Generated for libvisio by doxygen 1.8.8