示例#1
0
 SuilInstance* instantiateUI (const LilvUI* ui,
                              const LilvNode* containerType,
                              const LilvNode* widgetType,
                              const LV2_Feature* const * features)
 {
     const LilvNode* uri = lilv_ui_get_uri (ui);
     const LilvPlugin* plugin = owner.getPlugin();
     
     SuilInstance* instance = suil_instance_new (suil, &owner,
               lilv_node_as_uri (containerType),
               lilv_node_as_uri (lilv_plugin_get_uri (plugin)),
               lilv_node_as_uri (uri),
               lilv_node_as_uri (widgetType),
               lilv_uri_to_path (lilv_node_as_uri (lilv_ui_get_bundle_uri (ui))),
               lilv_uri_to_path (lilv_node_as_uri (lilv_ui_get_binary_uri (ui))),
               features );
     
     if (instance != nullptr)
     {
         // do something here?
     }
     
     return instance;
 }
示例#2
0
const std::string&
LV2Plugin::library_path() const
{
    static const std::string empty_string;
    if (_library_path.empty()) {
        const LilvNode* n = lilv_plugin_get_library_uri(_lilv_plugin);
        if (n) {
            _library_path = lilv_uri_to_path(lilv_node_as_uri(n));
        } else {
            Raul::warn << uri() << " has no library path" << std::endl;
            return empty_string;
        }
    }

    return _library_path;
}