Mercurial > hg > svcore
comparison transform/FeatureWriter.h @ 498:fdf5930b7ccc
* Bring FeatureWriter and RDFFeatureWriter into the fold (from Runner)
so that we can use them to export features from SV as well
| author | Chris Cannam |
|---|---|
| date | Fri, 28 Nov 2008 13:47:11 +0000 |
| parents | |
| children | 3376dc26dece |
comparison
equal
deleted
inserted
replaced
| 497:b6dc6c7f402c | 498:fdf5930b7ccc |
|---|---|
| 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ | |
| 2 | |
| 3 /* | |
| 4 Sonic Visualiser | |
| 5 An audio file viewer and annotation editor. | |
| 6 | |
| 7 Sonic Annotator | |
| 8 A utility for batch feature extraction from audio files. | |
| 9 | |
| 10 Mark Levy, Chris Sutton and Chris Cannam, Queen Mary, University of London. | |
| 11 Copyright 2007-2008 QMUL. | |
| 12 | |
| 13 This program is free software; you can redistribute it and/or | |
| 14 modify it under the terms of the GNU General Public License as | |
| 15 published by the Free Software Foundation; either version 2 of the | |
| 16 License, or (at your option) any later version. See the file | |
| 17 COPYING included with this distribution for more information. | |
| 18 */ | |
| 19 | |
| 20 #ifndef _FEATURE_WRITER_H_ | |
| 21 #define _FEATURE_WRITER_H_ | |
| 22 | |
| 23 #include <string> | |
| 24 #include <map> | |
| 25 #include <vector> | |
| 26 | |
| 27 #include <QString> | |
| 28 | |
| 29 #include "Transform.h" | |
| 30 | |
| 31 #include <vamp-hostsdk/Plugin.h> | |
| 32 | |
| 33 using std::string; | |
| 34 using std::map; | |
| 35 using std::vector; | |
| 36 | |
| 37 class FeatureWriter | |
| 38 { | |
| 39 public: | |
| 40 virtual ~FeatureWriter() { } | |
| 41 | |
| 42 struct Parameter { // parameter of the writer, not the plugin | |
| 43 string name; | |
| 44 string description; | |
| 45 bool hasArg; | |
| 46 }; | |
| 47 typedef vector<Parameter> ParameterList; | |
| 48 virtual ParameterList getSupportedParameters() const { | |
| 49 return ParameterList(); | |
| 50 } | |
| 51 | |
| 52 virtual void setParameters(map<string, string> ¶ms) { | |
| 53 return; | |
| 54 } | |
| 55 | |
| 56 // may throw FailedToOpenFile or other exceptions | |
| 57 | |
| 58 virtual void write(QString trackid, | |
| 59 const Transform &transform, | |
| 60 const Vamp::Plugin::OutputDescriptor &output, | |
| 61 const Vamp::Plugin::FeatureList &features, | |
| 62 std::string summaryType = "") = 0; | |
| 63 | |
| 64 virtual void finish() = 0; | |
| 65 }; | |
| 66 | |
| 67 #endif |
