comparison plugin/DSSIPluginFactory.cpp @ 166:702fc936e6a6

* Pull transforms out of Layer menu (again) and into a separate Transforms menu * Add Recent Transforms submenu * Add effects and generators to the transforms menu (not yet implemented) as well as analysis plugins and data-from-effects (control output ports) * Add a nice dictionary-volume-style alphabetic subdivision of plugin names in plugins By Name menus
author Chris Cannam
date Fri, 22 Sep 2006 16:12:23 +0000
parents 5ae5885d6ce3
children 665342c6ec57
comparison
equal deleted inserted replaced
165:5ae5885d6ce3 166:702fc936e6a6
297 rtd->category = ""; 297 rtd->category = "";
298 rtd->isSynth = (descriptor->run_synth || 298 rtd->isSynth = (descriptor->run_synth ||
299 descriptor->run_multiple_synths); 299 descriptor->run_multiple_synths);
300 rtd->parameterCount = 0; 300 rtd->parameterCount = 0;
301 rtd->audioInputPortCount = 0; 301 rtd->audioInputPortCount = 0;
302 rtd->audioOutputPortCount = 0;
302 rtd->controlOutputPortCount = 0; 303 rtd->controlOutputPortCount = 0;
303 304
304 QString identifier = PluginIdentifier::createIdentifier 305 QString identifier = PluginIdentifier::createIdentifier
305 ("dssi", soname, ladspaDescriptor->Label); 306 ("dssi", soname, ladspaDescriptor->Label);
306 307
308 char *def_uri = 0; 309 char *def_uri = 0;
309 lrdf_defaults *defs = 0; 310 lrdf_defaults *defs = 0;
310 311
311 QString category = m_taxonomy[identifier]; 312 QString category = m_taxonomy[identifier];
312 313
313 if (category == "" && m_lrdfTaxonomy[descriptor->LADSPA_Plugin->UniqueID] != "") { 314 if (category == "" && m_lrdfTaxonomy[ladspaDescriptor->UniqueID] != "") {
314 m_taxonomy[identifier] = m_lrdfTaxonomy[descriptor->LADSPA_Plugin->UniqueID]; 315 m_taxonomy[identifier] = m_lrdfTaxonomy[ladspaDescriptor->UniqueID];
315 category = m_taxonomy[identifier]; 316 category = m_taxonomy[identifier];
316 } 317 }
317 318
318 if (category == "" && ladspaDescriptor->Name != 0) { 319 if (category == "" && ladspaDescriptor->Name != 0) {
319 std::string name = ladspaDescriptor->Name; 320 std::string name = ladspaDescriptor->Name;
328 } 329 }
329 } 330 }
330 331
331 rtd->category = category.toStdString(); 332 rtd->category = category.toStdString();
332 333
333 // std::cerr << "Plugin id is " << ladspaDescriptor->UniqueID 334 std::cerr << "Plugin id is " << ladspaDescriptor->UniqueID
334 // << ", category is \"" << (category ? category : QString("(none)")) 335 << ", identifier is \"" << identifier.toStdString()
335 // << "\", name is " << ladspaDescriptor->Name 336 << "\", category is \"" << category.toStdString()
336 // << ", label is " << ladspaDescriptor->Label 337 << "\", name is " << ladspaDescriptor->Name
337 // << std::endl; 338 << ", label is " << ladspaDescriptor->Label
339 << std::endl;
338 340
339 def_uri = lrdf_get_default_uri(ladspaDescriptor->UniqueID); 341 def_uri = lrdf_get_default_uri(ladspaDescriptor->UniqueID);
340 if (def_uri) { 342 if (def_uri) {
341 defs = lrdf_get_setting_values(def_uri); 343 defs = lrdf_get_setting_values(def_uri);
342 } 344 }
376 } 378 }
377 } 379 }
378 } else { 380 } else {
379 if (LADSPA_IS_PORT_INPUT(ladspaDescriptor->PortDescriptors[i])) { 381 if (LADSPA_IS_PORT_INPUT(ladspaDescriptor->PortDescriptors[i])) {
380 ++rtd->audioInputPortCount; 382 ++rtd->audioInputPortCount;
383 } else if (LADSPA_IS_PORT_OUTPUT(ladspaDescriptor->PortDescriptors[i])) {
384 ++rtd->audioOutputPortCount;
381 } 385 }
382 } 386 }
383 } 387 }
384 388
385 m_identifiers.push_back(identifier); 389 m_identifiers.push_back(identifier);