summaryrefslogtreecommitdiffstats
path: root/src/engine/LV2Plugin.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2009-05-11 21:51:47 +0000
committerDavid Robillard <d@drobilla.net>2009-05-11 21:51:47 +0000
commitfaf4db950721d5425bc8078d0fa6606e7064e69a (patch)
treecdd72f4910b5a59ea6097fadda768f31d7e6cf8c /src/engine/LV2Plugin.cpp
parentcb5287d0379287c461a0ac5b950161244a7fa53b (diff)
downloadingen-faf4db950721d5425bc8078d0fa6606e7064e69a.tar.gz
ingen-faf4db950721d5425bc8078d0fa6606e7064e69a.tar.bz2
ingen-faf4db950721d5425bc8078d0fa6606e7064e69a.zip
Don't cause slv2 to load plugin data until a plugin is loaded or menu requested (faster startup).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1977 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/engine/LV2Plugin.cpp')
-rw-r--r--src/engine/LV2Plugin.cpp24
1 files changed, 11 insertions, 13 deletions
diff --git a/src/engine/LV2Plugin.cpp b/src/engine/LV2Plugin.cpp
index cb35e495..8efd5da2 100644
--- a/src/engine/LV2Plugin.cpp
+++ b/src/engine/LV2Plugin.cpp
@@ -48,16 +48,6 @@ LV2Plugin::symbol() const
}
-const string
-LV2Plugin::name() const
-{
- if (_name)
- return slv2_value_as_string(_name);
- else
- return "(no name)";
-}
-
-
NodeImpl*
LV2Plugin::instantiate(const string& name,
bool polyphonic,
@@ -85,9 +75,17 @@ void
LV2Plugin::slv2_plugin(SLV2Plugin p)
{
_slv2_plugin = p;
- if (_name)
- slv2_value_free(_name);
- _name = slv2_plugin_get_name(_slv2_plugin);
+}
+
+
+const std::string&
+LV2Plugin::library_path() const
+{
+ if (_library_path == "")
+ _library_path = slv2_uri_to_path(slv2_value_as_uri(
+ slv2_plugin_get_library_uri(_slv2_plugin)));
+
+ return _library_path;
}