File indexing completed on 2024-04-28 04:40:03

0001 #ifndef UTILS_H
0002 #define UTILS_H
0003 
0004 #include <QString>
0005 #include <QMap>
0006 #include <QSharedPointer>
0007 #include "introspection.h"
0008 
0009 class QXmlStreamReader;
0010 class QXmlStreamWriter;
0011 class LEInputStream;
0012 class LEOutputStream;
0013 
0014 // function declarations for accessing the generated parser classes
0015 const Introspectable* parse(const QString& key, LEInputStream& in);
0016 void serialize(const Introspectable* i, const QString& key, LEOutputStream& out);
0017 const QMap<QString,QSharedPointer<const Introspectable> > parse(QXmlStreamReader& in);
0018 
0019 // 
0020 QByteArray escapeByteArray(const QByteArray& b);
0021 
0022 QVector<quint16> toUInt16Vector(const QString& s);
0023 
0024 QString toString(const QVector<quint16>& v);
0025 
0026 void print(QXmlStreamWriter& out, const Introspectable* i);
0027 
0028 QMap<QString, QByteArray> readStreams(const QString& file);
0029 
0030 QMap<QString, QSharedPointer<const Introspectable> >
0031 parseStreams(const QMap<QString, QByteArray>& streams);
0032 
0033 QMap<QString, QByteArray> serialize(const QMap<QString, QSharedPointer<const Introspectable> >& m);
0034 
0035 QByteArray streamsToXml(const QMap<QString, QSharedPointer<const Introspectable> >& streams);
0036 
0037 QByteArray streamsToExtendedXml(const QMap<QString, QSharedPointer<const Introspectable> >& streams);
0038 
0039 void write(const QString& name, const QByteArray& data);
0040 
0041 void printWithExtendedParser(QXmlStreamWriter& out, const Introspectable* i);
0042 
0043 #endif