lbajardsilogic@15: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ lbajardsilogic@15: lbajardsilogic@15: /* Sound Access lbajardsilogic@15: EASAIER client application. lbajardsilogic@15: Silogic 2007. Laure Bajard. lbajardsilogic@15: lbajardsilogic@15: This program is free software; you can redistribute it and/or lbajardsilogic@15: modify it under the terms of the GNU General Public License as lbajardsilogic@15: published by the Free Software Foundation; either version 2 of the lbajardsilogic@15: License, or (at your option) any later version. See the file lbajardsilogic@15: COPYING included with this distribution for more information. lbajardsilogic@15: */ lbajardsilogic@15: lbajardsilogic@15: #ifndef _SPARQL_RESULTS_READER_H_ lbajardsilogic@15: #define _SPARQL_RESULTS_READER_H_ lbajardsilogic@15: lbajardsilogic@15: #include lbajardsilogic@15: lbajardsilogic@15: #include "widgets/QueryResultsWidget.h" lbajardsilogic@15: lbajardsilogic@15: class SparqlResultsReader lbajardsilogic@15: { lbajardsilogic@15: public: lbajardsilogic@15: SparqlResultsReader(QueryResultsWidget* resultsWidget); lbajardsilogic@15: virtual ~SparqlResultsReader(){} lbajardsilogic@15: lbajardsilogic@15: bool parse(const QString & filename); lbajardsilogic@15: lbajardsilogic@15: private: lbajardsilogic@15: lbajardsilogic@15: QueryResultsWidget *m_resultsWidget; lbajardsilogic@15: }; lbajardsilogic@15: lbajardsilogic@15: class SparqlResultsHandler : public QXmlDefaultHandler lbajardsilogic@15: { lbajardsilogic@15: public: lbajardsilogic@15: SparqlResultsHandler(QueryResultsWidget* resultsWidget); lbajardsilogic@15: lbajardsilogic@15: bool startElement(const QString &namespaceURI, const QString &localName, lbajardsilogic@15: const QString &qName, const QXmlAttributes &attributes); lbajardsilogic@15: bool endElement(const QString &namespaceURI, const QString &localName, lbajardsilogic@15: const QString &qName); lbajardsilogic@15: bool characters(const QString &str); lbajardsilogic@15: bool error(const QXmlParseException &exception); lbajardsilogic@15: bool fatalError(const QXmlParseException &exception); lbajardsilogic@15: lbajardsilogic@15: lbajardsilogic@15: private: lbajardsilogic@15: lbajardsilogic@15: QueryResultsWidget *m_resultsWidget; lbajardsilogic@15: lbajardsilogic@15: bool m_inBinding; lbajardsilogic@15: QString m_curBindingName; lbajardsilogic@15: }; lbajardsilogic@15: lbajardsilogic@15: #endif