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