Skip to content
Snippets Groups Projects
Commit dc737a22 authored by Mikhail Svechnikov's avatar Mikhail Svechnikov
Browse files

UtilXML: rm rwVectorClass

parent ed4e6baa
No related branches found
No related tags found
1 merge request!1125GUI: simplify read/write
...@@ -15,7 +15,6 @@ ...@@ -15,7 +15,6 @@
#ifndef BORNAGAIN_GUI_SUPPORT_XML_UTILXML_H #ifndef BORNAGAIN_GUI_SUPPORT_XML_UTILXML_H
#define BORNAGAIN_GUI_SUPPORT_XML_UTILXML_H #define BORNAGAIN_GUI_SUPPORT_XML_UTILXML_H
#include "Base/Types/OwningVector.h"
#include <QVariant> #include <QVariant>
#include <QXmlStreamWriter> // used in every including file #include <QXmlStreamWriter> // used in every including file
#include <heinz/Complex.h> #include <heinz/Complex.h>
...@@ -106,35 +105,6 @@ void readVector(QXmlStreamReader* reader, const QString& tag, QVector<T>& vec) ...@@ -106,35 +105,6 @@ void readVector(QXmlStreamReader* reader, const QString& tag, QVector<T>& vec)
} }
} }
//! Write OwningVector of classes
template <typename T>
void writeVectorClass(QXmlStreamWriter* writer, const QString& tag, const OwningVector<T>& vec)
{
for (size_t i = 0; i < vec.size(); i++) {
writer->writeStartElement(tag);
writer->writeAttribute("n", QString::number(i));
vec[i]->writeTo(writer);
writer->writeEndElement();
}
}
//! Read OwningVector of classes
template <typename T, typename... Args>
void readVectorClass(QXmlStreamReader* reader, const QString& tag, OwningVector<T>& vec,
Args... argsForConstructor)
{
vec.clear();
while (reader->readNextStartElement()) {
if (reader->name() == tag) {
vec.emplace_back(new T(argsForConstructor...));
vec.back()->readFrom(reader);
GUI::Session::XML::gotoEndElementOfTag(reader, tag);
} else {
reader->skipCurrentElement();
}
}
}
} // namespace GUI::Session::XML } // namespace GUI::Session::XML
#endif // BORNAGAIN_GUI_SUPPORT_XML_UTILXML_H #endif // BORNAGAIN_GUI_SUPPORT_XML_UTILXML_H
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment