1 | /*
|
---|
2 | * QSeisXMLParser.hpp
|
---|
3 | *
|
---|
4 | * Created on: Apr 5, 2011
|
---|
5 | * Author: bierbach
|
---|
6 | */
|
---|
7 |
|
---|
8 | #ifndef QSEISXMLPARSER_HPP_
|
---|
9 | #define QSEISXMLPARSER_HPP_
|
---|
10 |
|
---|
11 | // include config.h
|
---|
12 | #ifdef HAVE_CONFIG_H
|
---|
13 | #include <config.h>
|
---|
14 | #endif
|
---|
15 |
|
---|
16 | #include <QtCore/QStringList>
|
---|
17 | #include <QtCore/QString>
|
---|
18 | #include <QtCore/QFileInfo>
|
---|
19 |
|
---|
20 | #include "UIElements/Views/Qt4/Plotting/XMLParser/QSeisXMLParser_plottype.hpp"
|
---|
21 | #include "UIElements/Views/Qt4/Plotting/XMLParser/QSeisXMLParser_plotcurve.hpp"
|
---|
22 |
|
---|
23 | #include <vector>
|
---|
24 | #include <map>
|
---|
25 | #include <iosfwd>
|
---|
26 | #include <utility>
|
---|
27 |
|
---|
28 | #include "CodePatterns/Singleton.hpp"
|
---|
29 |
|
---|
30 | class QSeisXMLParser : public Singleton<QSeisXMLParser> {
|
---|
31 | friend class Singleton<QSeisXMLParser>;
|
---|
32 | friend class plotcurve;
|
---|
33 | friend class XMLParserTest;
|
---|
34 |
|
---|
35 | public:
|
---|
36 | QStringList getFiles(QString);
|
---|
37 | void load(std::istream&);
|
---|
38 | void createPlotPages();
|
---|
39 | void associateCurves();
|
---|
40 | QString getTypeOfName(const QString &name);
|
---|
41 | std::string getCurveColor(std::string);
|
---|
42 | plottype* return_plottype_by_name(std::string name);
|
---|
43 | void set_units(const std::vector<std::string>&,const std::map<std::string,std::string>&);
|
---|
44 |
|
---|
45 | protected:
|
---|
46 | QSeisXMLParser();
|
---|
47 | ~QSeisXMLParser();
|
---|
48 |
|
---|
49 | private:
|
---|
50 | QString prefix;
|
---|
51 | std::map<std::string, std::string> unitmap;
|
---|
52 | std::vector<std::string> unitnames;
|
---|
53 | std::vector<plottype*> types;
|
---|
54 | std::map<std::string,plottype*> types_by_name;
|
---|
55 | std::vector<plotcurve*> curves;
|
---|
56 | std::map<std::string,plotcurve*> curves_suff;
|
---|
57 | std::map<std::string,std::string> curves_by_suffix;
|
---|
58 | };
|
---|
59 |
|
---|
60 | #endif /* QSEISXMLPARSER_HPP_ */
|
---|