annotate rdf/PluginRDFDescription.h @ 494:81963c51b488

* Add ability to export a transform structure as RDF -- for use when exporting data from runner, so as to refer back to the generating transform from the audio features rdf * some improvements to pane & layer management when importing rdf, but it's all still a big hack here
author Chris Cannam
date Tue, 25 Nov 2008 17:46:02 +0000
parents 82ab61fa9223
children b4a8d8221eaf
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 _PLUGIN_RDF_DESCRIPTION_H_
Chris@439 17 #define _PLUGIN_RDF_DESCRIPTION_H_
Chris@439 18
Chris@439 19 #include <QString>
Chris@457 20 #include <QStringList>
Chris@439 21 #include <map>
Chris@439 22
Chris@439 23 class PluginRDFDescription
Chris@439 24 {
Chris@439 25 public:
Chris@439 26 PluginRDFDescription() : m_haveDescription(false) { }
Chris@439 27 PluginRDFDescription(QString pluginId);
Chris@439 28 ~PluginRDFDescription();
Chris@439 29
Chris@439 30 enum OutputDisposition
Chris@439 31 {
Chris@439 32 OutputDispositionUnknown,
Chris@439 33 OutputSparse,
Chris@439 34 OutputDense,
Chris@439 35 OutputTrackLevel
Chris@439 36 };
Chris@439 37
Chris@439 38 bool haveDescription() const;
Chris@457 39
Chris@457 40 QString getPluginName() const;
Chris@457 41 QString getPluginDescription() const;
Chris@457 42 QString getPluginMaker() const;
Chris@462 43 QString getPluginInfoURL() const;
Chris@457 44
Chris@457 45 QStringList getOutputIds() const;
Chris@457 46 QString getOutputName(QString outputId) const;
Chris@439 47 OutputDisposition getOutputDisposition(QString outputId) const;
Chris@439 48 QString getOutputEventTypeURI(QString outputId) const;
Chris@440 49 QString getOutputFeatureAttributeURI(QString outputId) const;
Chris@440 50 QString getOutputSignalTypeURI(QString outputId) const;
Chris@439 51 QString getOutputUnit(QString outputId) const;
Chris@494 52 QString getOutputUri(QString outputId) const;
Chris@439 53
Chris@439 54 protected:
Chris@439 55 typedef std::map<QString, OutputDisposition> OutputDispositionMap;
Chris@439 56 typedef std::map<QString, QString> OutputStringMap;
Chris@439 57
Chris@439 58 QString m_pluginId;
Chris@489 59 QString m_pluginUri;
Chris@439 60 bool m_haveDescription;
Chris@457 61 QString m_pluginName;
Chris@457 62 QString m_pluginDescription;
Chris@457 63 QString m_pluginMaker;
Chris@462 64 QString m_pluginInfoURL;
Chris@457 65 OutputStringMap m_outputNames;
Chris@439 66 OutputDispositionMap m_outputDispositions;
Chris@439 67 OutputStringMap m_outputEventTypeURIMap;
Chris@440 68 OutputStringMap m_outputFeatureAttributeURIMap;
Chris@440 69 OutputStringMap m_outputSignalTypeURIMap;
Chris@439 70 OutputStringMap m_outputUnitMap;
Chris@494 71 OutputStringMap m_outputUriMap;
Chris@489 72 bool index();
Chris@489 73 bool indexMetadata();
Chris@489 74 bool indexOutputs();
Chris@439 75 };
Chris@439 76
Chris@439 77 #endif
Chris@439 78