diff options
Diffstat (limited to 'src/libs/engine/NodeFactory.cpp')
-rw-r--r-- | src/libs/engine/NodeFactory.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/libs/engine/NodeFactory.cpp b/src/libs/engine/NodeFactory.cpp index ca762678..1cbabaeb 100644 --- a/src/libs/engine/NodeFactory.cpp +++ b/src/libs/engine/NodeFactory.cpp @@ -95,7 +95,6 @@ NodeFactory::~NodeFactory() const Plugin* NodeFactory::plugin(const string& uri) { - // FIXME: this needs.. well, fixing for (list<Plugin*>::iterator i = _plugins.begin(); i != _plugins.end(); ++i) if ((*i)->uri() == uri) return (*i); @@ -104,6 +103,24 @@ NodeFactory::plugin(const string& uri) } +/** DEPRECATED: Find a plugin by type, lib, label. + * + * Do not use. + */ +const Plugin* +NodeFactory::plugin(const string& type, const string& lib, const string& label) +{ + if (type == "" || lib == "" || label == "") + return NULL; + + for (list<Plugin*>::iterator i = _plugins.begin(); i != _plugins.end(); ++i) + if ((*i)->type_string() == type && (*i)->lib_name() == lib && (*i)->plug_label() == label) + return (*i); + + return NULL; +} + + void NodeFactory::load_plugins() { |