annotate rdf/RDFTransformFactory.h @ 489:82ab61fa9223

* Reorganise our sparql queries on the basis that Redland must be available, not only optional. So for anything querying the pool of data about plugins, we use a single datastore and model which is initialised at the outset by PluginRDFIndexer and then queried directly; for anything that "reads from a file" (e.g. loading annotations) we query directly using Rasqal, going to the datastore when we need additional plugin-related information. This may improve performance, but mostly it simplifies the code and fixes a serious issue with RDF import in the previous versions (namely that multiple sequential RDF imports would end up sharing the same RDF data pool!)
author Chris Cannam
date Fri, 21 Nov 2008 16:12:29 +0000
parents beb2948baa77
children 3931711b5671
rev   line source
Chris@439 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@439 2
Chris@439 3 /*
Chris@439 4 Sonic Visualiser
Chris@439 5 An audio file viewer and annotation editor.
Chris@439 6 Centre for Digital Music, Queen Mary, University of London.
Chris@439 7 This file copyright 2008 QMUL.
Chris@439 8
Chris@439 9 This program is free software; you can redistribute it and/or
Chris@439 10 modify it under the terms of the GNU General Public License as
Chris@439 11 published by the Free Software Foundation; either version 2 of the
Chris@439 12 License, or (at your option) any later version. See the file
Chris@439 13 COPYING included with this distribution for more information.
Chris@439 14 */
Chris@439 15
Chris@439 16 #ifndef _RDF_TRANSFORM_FACTORY_H_
Chris@439 17 #define _RDF_TRANSFORM_FACTORY_H_
Chris@439 18
Chris@439 19 #include <QObject>
Chris@439 20 #include <QString>
Chris@439 21
Chris@439 22 #include <vector>
Chris@439 23
Chris@439 24 #include "transform/Transform.h"
Chris@439 25
Chris@439 26 class RDFTransformFactoryImpl;
Chris@439 27 class ProgressReporter;
Chris@439 28
Chris@439 29 class RDFTransformFactory : public QObject
Chris@439 30 {
Chris@439 31 Q_OBJECT
Chris@439 32
Chris@439 33 public:
Chris@439 34 static QString getKnownExtensions();
Chris@439 35
Chris@439 36 RDFTransformFactory(QString url);
Chris@439 37 virtual ~RDFTransformFactory();
Chris@439 38
Chris@439 39 bool isOK();
Chris@439 40 QString getErrorString() const;
Chris@439 41
Chris@439 42 std::vector<Transform> getTransforms(ProgressReporter *reporter);
Chris@439 43
Chris@439 44 protected:
Chris@439 45 RDFTransformFactoryImpl *m_d;
Chris@439 46 };
Chris@439 47
Chris@439 48 #endif