comparison plugin/PluginScan.cpp @ 1245:0492e54ccd56 piper

Logging; use only first ("native") helper for non-Vamp plugins
author Chris Cannam
date Tue, 01 Nov 2016 16:02:15 +0000
parents c6bdf247016a
children 75aefcc9f07d
comparison
equal deleted inserted replaced
1244:604b0b2a58e1 1245:0492e54ccd56
93 case DSSIPlugin: kpt = KnownPlugins::DSSIPlugin; break; 93 case DSSIPlugin: kpt = KnownPlugins::DSSIPlugin; break;
94 default: throw std::logic_error("Inconsistency in plugin type enums"); 94 default: throw std::logic_error("Inconsistency in plugin type enums");
95 } 95 }
96 96
97 QStringList candidates; 97 QStringList candidates;
98
98 for (auto kp: m_kp) { 99 for (auto kp: m_kp) {
100
99 auto c = kp->getCandidateLibrariesFor(kpt); 101 auto c = kp->getCandidateLibrariesFor(kpt);
102
103 std::cerr << "PluginScan: helper \"" << kp->getHelperExecutableName()
104 << "\" likes " << c.size() << " libraries of type "
105 << kp->getTagFor(kpt) << std::endl;
106
100 for (auto s: c) candidates.push_back(s.c_str()); 107 for (auto s: c) candidates.push_back(s.c_str());
108
109 if (type != VampPlugin) {
110 // We are only interested in querying multiple helpers
111 // when dealing with Vamp plugins, for which we can use
112 // external servers and so in some cases can support
113 // additional architectures. Other plugin formats are
114 // loaded directly and so must match the host, which is
115 // what the first helper is supposed to handle -- so
116 // break after the first one if not querying Vamp
117 break;
118 }
101 } 119 }
120
102 return candidates; 121 return candidates;
103 } 122 }
104 123
105 QString 124 QString
106 PluginScan::getStartupFailureReport() const 125 PluginScan::getStartupFailureReport() const