File indexing completed on 2024-03-24 03:44:20
0001 /* 0002 SPDX-FileCopyrightText: 2005 Carsten Niehaus <cniehaus@kde.org> 0003 SPDX-License-Identifier: GPL-2.0-or-later 0004 */ 0005 0006 #ifndef SPECTRUMPARSER_H 0007 #define SPECTRUMPARSER_H 0008 0009 #include "science_export.h" 0010 0011 #include <QXmlAttributes> 0012 #include <QXmlDefaultHandler> 0013 0014 #include "spectrum.h" 0015 0016 #include "chemicaldataobject.h" 0017 0018 class Spectrum; 0019 0020 /** 0021 * @author Carsten Niehaus <cniehaus@kde.org> 0022 */ 0023 class SCIENCE_EXPORT SpectrumParser : public QXmlDefaultHandler 0024 { 0025 public: 0026 /** 0027 * Constructor 0028 */ 0029 SpectrumParser(); 0030 ~SpectrumParser() override; 0031 bool startElement(const QString &, const QString &localName, const QString &, const QXmlAttributes &attrs) override; 0032 0033 bool endElement(const QString &namespaceURI, const QString &localName, const QString &qName) override; 0034 0035 bool characters(const QString &ch) override; 0036 0037 QList<Spectrum *> getSpectrums() const; 0038 0039 private: 0040 QString currentElementID; 0041 0042 private: 0043 class Private; 0044 Private *const d; 0045 }; 0046 0047 #endif // SPECTRUMPARSER_H