Mercurial > hg > svcore
annotate plugin/FeatureExtractionPluginFactory.h @ 117:c30728d5625c sv1-v0.9rc1
* Make vertical scale alignment modes work in note layer as well as time-value
layer, and several significant fixes to it
* Make it possible to draw notes properly on the note layer
* Show units (and frequencies etc in note layer's case) in the time-value and
note layer description boxes
* Minor fix to item edit dialog layout
* Some minor menu rearrangement
* Comment out a lot of debug output
* Add SV website and reference URLs to Help menu, and add code to (attempt to)
open them in the user's preferred browser
author | Chris Cannam |
---|---|
date | Fri, 12 May 2006 14:40:43 +0000 |
parents | 7afcfe666910 |
children | 735556300e10 |
rev | line source |
---|---|
Chris@49 | 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ |
Chris@0 | 2 |
Chris@0 | 3 /* |
Chris@52 | 4 Sonic Visualiser |
Chris@52 | 5 An audio file viewer and annotation editor. |
Chris@52 | 6 Centre for Digital Music, Queen Mary, University of London. |
Chris@52 | 7 This file copyright 2006 Chris Cannam. |
Chris@0 | 8 |
Chris@52 | 9 This program is free software; you can redistribute it and/or |
Chris@52 | 10 modify it under the terms of the GNU General Public License as |
Chris@52 | 11 published by the Free Software Foundation; either version 2 of the |
Chris@52 | 12 License, or (at your option) any later version. See the file |
Chris@52 | 13 COPYING included with this distribution for more information. |
Chris@0 | 14 */ |
Chris@0 | 15 |
Chris@0 | 16 #ifndef _FEATURE_EXTRACTION_PLUGIN_FACTORY_H_ |
Chris@0 | 17 #define _FEATURE_EXTRACTION_PLUGIN_FACTORY_H_ |
Chris@0 | 18 |
Chris@0 | 19 #include <QString> |
Chris@0 | 20 #include <vector> |
Chris@0 | 21 |
Chris@66 | 22 namespace Vamp { class Plugin; } |
Chris@0 | 23 |
Chris@0 | 24 class FeatureExtractionPluginFactory |
Chris@0 | 25 { |
Chris@0 | 26 public: |
Chris@0 | 27 static FeatureExtractionPluginFactory *instance(QString pluginType); |
Chris@0 | 28 static FeatureExtractionPluginFactory *instanceFor(QString identifier); |
Chris@0 | 29 static std::vector<QString> getAllPluginIdentifiers(); |
Chris@0 | 30 |
Chris@66 | 31 virtual std::vector<QString> getPluginPath(); |
Chris@66 | 32 |
Chris@66 | 33 virtual std::vector<QString> getPluginIdentifiers(); |
Chris@66 | 34 |
Chris@66 | 35 virtual QString findPluginFile(QString soname, QString inDir = ""); |
Chris@0 | 36 |
Chris@0 | 37 // We don't set blockSize or channels on this -- they're |
Chris@0 | 38 // negotiated and handled via initialize() on the plugin |
Chris@66 | 39 virtual Vamp::Plugin *instantiatePlugin(QString identifier, |
Chris@66 | 40 float inputSampleRate); |
Chris@0 | 41 |
Chris@0 | 42 protected: |
Chris@117 | 43 std::vector<QString> m_pluginPath; |
Chris@0 | 44 }; |
Chris@0 | 45 |
Chris@0 | 46 #endif |