void LadspaSubPluginFeatures::listSubPluginKeys(
    const Plugin::Descriptor * _desc, KeyList & _kl ) const
{
    Ladspa2LMMS * lm = Engine::getLADSPAManager();

    l_sortable_plugin_t plugins;
    switch( m_type )
    {
    case Plugin::Instrument:
        plugins = lm->getInstruments();
        break;
    case Plugin::Effect:
        plugins = lm->getValidEffects();
        //plugins += lm->getInvalidEffects();
        break;
    case Plugin::Tool:
        plugins = lm->getAnalysisTools();
        break;
    case Plugin::Other:
        plugins = lm->getOthers();
        break;
    default:
        break;
    }

    for( l_sortable_plugin_t::const_iterator it = plugins.begin();
            it != plugins.end(); ++it )
    {
        if( lm->getDescription( ( *it ).second )->inputChannels <=
                Engine::mixer()->audioDev()->channels() )
        {
            _kl.push_back( ladspaKeyToSubPluginKey( _desc, ( *it ).first, ( *it ).second ) );
        }
    }
}
Example #2
0
KeyList Serialiser::keys()
{
    Map::iterator iter;
    KeyList k;

    for( iter = values_.begin(); iter != values_.end(); ++iter )
    {
	k.push_back( iter->first );
    }

    return k;
}
void VstSubPluginFeatures::listSubPluginKeys( const Plugin::Descriptor * _desc,
														KeyList & _kl ) const
{
	QStringList dlls = QDir( configManager::inst()->vstDir() ).
				entryList( QStringList() << "*.dll",
						QDir::Files, QDir::Name );
	// TODO: eval m_type
	for( QStringList::ConstIterator it = dlls.begin();
							it != dlls.end(); ++it )
	{
		EffectKey::AttributeMap am;
		am["file"] = *it;
		_kl.push_back( Key( _desc, QFileInfo( *it ).baseName(), am ) );
	}
}
Example #4
0
bool ObjectWrapper::GetKeys(KeyList& keys)
{
    JSPropertyNameArrayRef names = JSObjectCopyPropertyNames(g_ctx, m_obj);
    size_t len = JSPropertyNameArrayGetCount(names);

    for (size_t i = 0; i < len; ++i)
    {
        JSStringRef name = JSPropertyNameArrayGetNameAtIndex(names, i);
        keys.push_back(JSStringToString(name));
    }

    JSPropertyNameArrayRelease(names);

    return true;
}
Example #5
0
 int processSections( ACE_Configuration_Heap& cf,
                      const ACE_Configuration_Section_Key& key,
                      KeyList& subsections ) {
   int index = 0;
   ACE_TString name;
   while (cf.enumerate_sections( key, index, name ) == 0) {
     ACE_Configuration_Section_Key subkey;
     if (cf.open_section( key, name.c_str(), 0, subkey ) != 0) {
       return 1;
     }
     subsections.push_back( SubsectionPair( ACE_TEXT_ALWAYS_CHAR(name.c_str()),
                                            subkey ) );
     int subindex = 0;
     ACE_TString subname;
     if (cf.enumerate_sections( subkey, subindex, subname ) == 0) {
       // Found additional nesting of subsections that we don't care
       // to allow (e.g. [transport/my/yours]), so return an error.
       return 1;
     }
     index++;
   }
   return 0;
 }