Mercurial > hg > svcore
comparison plugin/PluginScan.h @ 1527:710e6250a401 zoom
Merge from default branch
author | Chris Cannam |
---|---|
date | Mon, 17 Sep 2018 13:51:14 +0100 |
parents | 0ee87bc10cdc |
children |
comparison
equal
deleted
inserted
replaced
1324:d4a28d1479a8 | 1527:710e6250a401 |
---|---|
18 #include <QStringList> | 18 #include <QStringList> |
19 #include <QMutex> | 19 #include <QMutex> |
20 #include <vector> | 20 #include <vector> |
21 #include <map> | 21 #include <map> |
22 | 22 |
23 class KnownPlugins; | 23 #ifdef HAVE_PLUGIN_CHECKER_HELPER |
24 #include "checker/knownplugincandidates.h" | |
25 #else | |
26 class KnownPluginCandidates {}; | |
27 #endif | |
24 | 28 |
25 class PluginScan | 29 class PluginScan |
26 { | 30 { |
27 public: | 31 public: |
28 static PluginScan *getInstance(); | 32 static PluginScan *getInstance(); |
43 * logic was added. | 47 * logic was added. |
44 */ | 48 */ |
45 bool scanSucceeded() const; | 49 bool scanSucceeded() const; |
46 | 50 |
47 enum PluginType { | 51 enum PluginType { |
48 VampPlugin, | 52 VampPlugin, |
49 LADSPAPlugin, | 53 LADSPAPlugin, |
50 DSSIPlugin | 54 DSSIPlugin |
51 }; | 55 }; |
52 struct Candidate { | 56 struct Candidate { |
53 QString libraryPath; // full path, not just soname | 57 QString libraryPath; // full path, not just soname |
54 QString helperTag; // identifies the helper that found it | 58 QString helperTag; // identifies the helper that found it |
55 // (see HelperExecPath) | 59 // (see HelperExecPath) |
71 PluginScan(); | 75 PluginScan(); |
72 ~PluginScan(); | 76 ~PluginScan(); |
73 | 77 |
74 void clear(); | 78 void clear(); |
75 | 79 |
80 #ifdef HAVE_PLUGIN_CHECKER_HELPER | |
81 QString formatFailureReport(QString helperTag, | |
82 std::vector<PluginCandidates::FailureRec>) | |
83 const; | |
84 #endif | |
85 | |
76 mutable QMutex m_mutex; // while scanning; definitely can't multi-thread this | 86 mutable QMutex m_mutex; // while scanning; definitely can't multi-thread this |
77 | 87 |
78 std::map<QString, KnownPlugins *> m_kp; // tag -> KnownPlugins client | 88 std::map<QString, KnownPluginCandidates *> m_kp; // tag -> KnownPlugins client |
79 bool m_succeeded; | 89 bool m_succeeded; |
80 | 90 |
81 class Logger; | 91 class Logger; |
82 Logger *m_logger; | 92 Logger *m_logger; |
83 }; | 93 }; |