Mercurial > hg > svcore
comparison plugin/NativeVampPluginFactory.h @ 1227:5d886b7b4029 piper
Error reporting for Piper server startup
author | Chris Cannam |
---|---|
date | Fri, 21 Oct 2016 16:24:30 +0100 |
parents | ba16388b937d |
children | 91bb68146dfc |
comparison
equal
deleted
inserted
replaced
1226:91ff08313375 | 1227:5d886b7b4029 |
---|---|
32 class NativeVampPluginFactory : public FeatureExtractionPluginFactory | 32 class NativeVampPluginFactory : public FeatureExtractionPluginFactory |
33 { | 33 { |
34 public: | 34 public: |
35 virtual ~NativeVampPluginFactory() { } | 35 virtual ~NativeVampPluginFactory() { } |
36 | 36 |
37 virtual std::vector<QString> getPluginIdentifiers(); | 37 virtual std::vector<QString> getPluginIdentifiers(QString &errorMessage) |
38 | 38 override; |
39 virtual QString findPluginFile(QString soname, QString inDir = ""); | |
40 | 39 |
41 virtual piper_vamp::PluginStaticData getPluginStaticData(QString identifier); | 40 virtual piper_vamp::PluginStaticData getPluginStaticData(QString identifier) |
41 override; | |
42 | 42 |
43 virtual Vamp::Plugin *instantiatePlugin(QString identifier, | 43 virtual Vamp::Plugin *instantiatePlugin(QString identifier, |
44 sv_samplerate_t inputSampleRate); | 44 sv_samplerate_t inputSampleRate) |
45 override; | |
45 | 46 |
46 /** | 47 /** |
47 * Get category metadata about a plugin (without instantiating it). | 48 * Get category metadata about a plugin (without instantiating it). |
48 */ | 49 */ |
49 virtual QString getPluginCategory(QString identifier); | 50 virtual QString getPluginCategory(QString identifier) override; |
50 | 51 |
51 protected: | 52 protected: |
52 QMutex m_mutex; | 53 QMutex m_mutex; |
53 std::vector<QString> m_pluginPath; | 54 std::vector<QString> m_pluginPath; |
54 std::vector<QString> m_identifiers; | 55 std::vector<QString> m_identifiers; |
56 std::map<QString, piper_vamp::PluginStaticData> m_pluginData; // identifier -> data (created opportunistically) | 57 std::map<QString, piper_vamp::PluginStaticData> m_pluginData; // identifier -> data (created opportunistically) |
57 | 58 |
58 friend class PluginDeletionNotifyAdapter; | 59 friend class PluginDeletionNotifyAdapter; |
59 void pluginDeleted(Vamp::Plugin *); | 60 void pluginDeleted(Vamp::Plugin *); |
60 std::map<Vamp::Plugin *, void *> m_handleMap; | 61 std::map<Vamp::Plugin *, void *> m_handleMap; |
61 | 62 |
63 QString findPluginFile(QString soname, QString inDir = ""); | |
62 std::vector<QString> getPluginPath(); | 64 std::vector<QString> getPluginPath(); |
63 void generateTaxonomy(); | 65 void generateTaxonomy(); |
64 }; | 66 }; |
65 | 67 |
66 #endif | 68 #endif |