diff options
Diffstat (limited to 'src/engine/events')
-rw-r--r-- | src/engine/events/CreateNode.cpp | 31 | ||||
-rw-r--r-- | src/engine/events/CreateNode.hpp | 7 |
2 files changed, 5 insertions, 33 deletions
diff --git a/src/engine/events/CreateNode.cpp b/src/engine/events/CreateNode.cpp index 421f819e..9fef8070 100644 --- a/src/engine/events/CreateNode.cpp +++ b/src/engine/events/CreateNode.cpp @@ -51,36 +51,14 @@ CreateNode::CreateNode( : QueuedEvent(engine, request, timestamp) , _path(path) , _plugin_uri(plugin_uri) - , _polyphonic(false) , _patch(NULL) , _plugin(NULL) , _node(NULL) , _compiled_patch(NULL) , _node_already_exists(false) + , _polyphonic(false) , _properties(properties) { - string uri = _plugin_uri.str(); - if (uri.substr(0, 3) == "om:") { - size_t colon = 2; - - uri = uri.substr(colon + 1); - if ((colon = uri.find(":")) == string::npos) { - Raul::error << "Invalid plugin URI `" << _plugin_uri << "'" << endl; - return; - } - _plugin_type = uri.substr(0, colon); - - uri = uri.substr(colon + 1); - if ((colon = uri.find(":")) == string::npos) { - Raul::error << "Invalid plugin URI `" << _plugin_uri << "'" << endl; - return; - } - _plugin_lib = uri.substr(0, colon); - - uri = uri.substr(colon + 1); - _plugin_label = uri; - } - const Resource::Properties::const_iterator p = properties.find( engine.world()->uris()->ingen_polyphonic); if (p != properties.end() && p->second.type() == Raul::Atom::BOOL @@ -98,11 +76,8 @@ CreateNode::pre_process() return; } - _patch = _engine.engine_store()->find_patch(_path.parent()); - - _plugin = (_plugin_label.empty()) - ? _engine.node_factory()->plugin(_plugin_uri.str()) - : _engine.node_factory()->plugin(_plugin_type, _plugin_lib, _plugin_label); + _patch = _engine.engine_store()->find_patch(_path.parent()); + _plugin = _engine.node_factory()->plugin(_plugin_uri.str()); if (_patch && _plugin) { diff --git a/src/engine/events/CreateNode.hpp b/src/engine/events/CreateNode.hpp index c302e02b..456bcc04 100644 --- a/src/engine/events/CreateNode.hpp +++ b/src/engine/events/CreateNode.hpp @@ -53,16 +53,13 @@ public: private: Raul::Path _path; - Raul::URI _plugin_uri; ///< If nonempty then type, library, label, are ignored - std::string _plugin_type; - std::string _plugin_lib; - std::string _plugin_label; - bool _polyphonic; + Raul::URI _plugin_uri; PatchImpl* _patch; PluginImpl* _plugin; NodeImpl* _node; CompiledPatch* _compiled_patch; ///< Patch's new process order bool _node_already_exists; + bool _polyphonic; Shared::Resource::Properties _properties; }; |