00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef GLUON_CORE_GDLHANDLER_H
00020 #define GLUON_CORE_GDLHANDLER_H
00021
00022 #include "singleton.h"
00023 #include "gluon_core_export.h"
00024
00025 #include <QtCore/QObject>
00026 #include <QtCore/QString>
00027
00028 namespace GluonCore
00029 {
00030 class GluonObject;
00031
00134 class GLUON_CORE_EXPORT GDLHandler : public Singleton<GDLHandler>
00135 {
00136 Q_OBJECT
00137
00138 public:
00150 QList<GluonObject*> parseGDL( const QString parseThis, QObject* parent );
00151
00157 QString serializeGDL( QList<const GluonObject*> serializeThis );
00158
00159 private:
00160 friend class Singleton<GDLHandler>;
00161
00162 GDLHandler();
00163 virtual ~GDLHandler();
00164 Q_DISABLE_COPY( GDLHandler );
00165
00166 GluonObject* instantiateObject( QString className );
00167 GluonObject* createObject( QStringList objectStringList, QObject* parent );
00175 QList<QStringList> tokenizeObject( QString objectString );
00176 };
00177 }
00178
00179 #endif // GLUON_CORE_GDLHANDLER_H