Mercurial > hg > svcore
annotate plugin/FeatureExtractionPluginFactory.h @ 109:61a2ac1241b3
* Make a single base Thread class for RT and non-RT threads
* Pull ResizeableBitmap out from the MatrixFile's ColumnBitmap
* Reorder SpectrogramLayer::paint somewhat so as to improve cache hit ratio
in the FFT file cache
author | Chris Cannam |
---|---|
date | Mon, 08 May 2006 16:44:47 +0000 |
parents | 7afcfe666910 |
children | c30728d5625c |
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@0 | 43 }; |
Chris@0 | 44 |
Chris@0 | 45 #endif |