summaryrefslogtreecommitdiffstats
path: root/src/libs/engine/ClientBroadcaster.hpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-10-11 17:24:49 +0000
committerDavid Robillard <d@drobilla.net>2007-10-11 17:24:49 +0000
commit5791d19a0f56c65ef7b89da80f4bcc3e1cee0c93 (patch)
treede0a795658df184d29e4ed795c6b6b15c6e0454d /src/libs/engine/ClientBroadcaster.hpp
parent058174f81f325521957cc6927667dfcf0d7346b4 (diff)
downloadingen-5791d19a0f56c65ef7b89da80f4bcc3e1cee0c93.tar.gz
ingen-5791d19a0f56c65ef7b89da80f4bcc3e1cee0c93.tar.bz2
ingen-5791d19a0f56c65ef7b89da80f4bcc3e1cee0c93.zip
Fix awful plugin loading situation.
Don't double-lookup plugins on discovery/load. O(log(n)) plugin searching instead of 2*O(n). Don't keep discovered LADSPA plugins loaded (until a node is instantiated). git-svn-id: http://svn.drobilla.net/lad/ingen@876 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/engine/ClientBroadcaster.hpp')
-rw-r--r--src/libs/engine/ClientBroadcaster.hpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libs/engine/ClientBroadcaster.hpp b/src/libs/engine/ClientBroadcaster.hpp
index ecd19d34..73353588 100644
--- a/src/libs/engine/ClientBroadcaster.hpp
+++ b/src/libs/engine/ClientBroadcaster.hpp
@@ -26,6 +26,7 @@
#include <raul/SharedPtr.hpp>
#include "interface/ClientInterface.hpp"
#include "types.hpp"
+#include "NodeFactory.hpp"
using std::string;
@@ -62,7 +63,7 @@ public:
// Error that isn't the direct result of a request
void send_error(const string& msg);
- void send_plugins(const std::list<PluginImpl*>& plugin_list);
+ void send_plugins(const NodeFactory::Plugins& plugin_list);
void send_patch(const PatchImpl* p, bool recursive);
void send_node(const NodeImpl* node, bool recursive);
void send_port(const PortImpl* port);
@@ -81,7 +82,7 @@ public:
void send_program_add(const string& node_path, int bank, int program, const string& name);
void send_program_remove(const string& node_path, int bank, int program);
- void send_plugins_to(ClientInterface*, const std::list<PluginImpl*>& plugin_list);
+ void send_plugins_to(ClientInterface*, const NodeFactory::Plugins& plugin_list);
private:
typedef std::map<string, ClientInterface*> Clients;