summaryrefslogtreecommitdiffstats
path: root/src/progs/ingen/main.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-07-29 16:58:35 +0000
committerDavid Robillard <d@drobilla.net>2008-07-29 16:58:35 +0000
commit48a23e68b6eb6a23a4bd2e0a1fdfef339eaa7533 (patch)
tree9526b6a89c4ecab82fdcb8592fe58f3a749d2347 /src/progs/ingen/main.cpp
parent1bcac68c24eeca5fba730a9dc48ac09eee9ac76b (diff)
downloadingen-48a23e68b6eb6a23a4bd2e0a1fdfef339eaa7533.tar.gz
ingen-48a23e68b6eb6a23a4bd2e0a1fdfef339eaa7533.tar.bz2
ingen-48a23e68b6eb6a23a4bd2e0a1fdfef339eaa7533.zip
Fix connecting via OSC.
git-svn-id: http://svn.drobilla.net/lad/ingen@1304 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/progs/ingen/main.cpp')
-rw-r--r--src/progs/ingen/main.cpp18
1 files changed, 3 insertions, 15 deletions
diff --git a/src/progs/ingen/main.cpp b/src/progs/ingen/main.cpp
index 23609ee2..483fe7ef 100644
--- a/src/progs/ingen/main.cpp
+++ b/src/progs/ingen/main.cpp
@@ -104,7 +104,7 @@ main(int argc, char** argv)
engine = SharedPtr<Engine>(new_engine(world));
world->local_engine = engine;
/* Load queued (direct in-process) engine interface */
- if (!args.connect_given) {
+ if (!args.connect_given && args.gui_given) {
engine_interface = engine->new_queued_interface();
world->engine = engine_interface;
}
@@ -116,8 +116,6 @@ main(int argc, char** argv)
}
}
- bool use_osc = false;
-
/* Load client library */
if (args.connect_given || args.load_given) {
client_module = Ingen::Shared::load_module("ingen_client");
@@ -126,16 +124,11 @@ main(int argc, char** argv)
}
/* Connect to remote engine */
- if (args.connect_given || (args.load_given && !engine_interface)) {
+ if (client_module && (args.connect_given || (args.load_given && !engine_interface))) {
SharedPtr<Shared::EngineInterface> (*new_osc_interface)(const std::string&) = NULL;
- bool found = false;
- if (client_module)
- found = client_module->get_symbol("new_osc_interface", (void*&)new_osc_interface);
-
- if (client_module && found) {
+ if (client_module->get_symbol("new_osc_interface", (void*&)new_osc_interface)) {
engine_interface = new_osc_interface(args.connect_arg);
- use_osc = true;
} else {
cerr << "Unable to load ingen_client module, aborting." << endl;
return -1;
@@ -144,12 +137,7 @@ main(int argc, char** argv)
if (engine && engine_interface) {
-
- if (use_osc)
- engine->start_osc_driver(args.engine_port_arg);
-
engine->start_jack_driver();
-
engine->activate(args.parallelism_arg);
}