diff options
Diffstat (limited to 'src/progs/ingen/main.cpp')
-rw-r--r-- | src/progs/ingen/main.cpp | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/src/progs/ingen/main.cpp b/src/progs/ingen/main.cpp index 09deffcc..354cfcd6 100644 --- a/src/progs/ingen/main.cpp +++ b/src/progs/ingen/main.cpp @@ -89,7 +89,7 @@ main(int argc, char** argv) if (engine_module->get_symbol("new_engine", (void*&)new_engine)) { engine = SharedPtr<Engine>(new_engine()); //engine->start_jack_driver(); - //engine->launch_osc_interface(args.engine_port_arg); + //engine->start_osc_driver(args.engine_port_arg); } else { engine_module.reset(); } @@ -103,12 +103,6 @@ main(int argc, char** argv) } } - - if (engine) { - engine_interface = engine->new_queued_interface(); - engine->start_jack_driver(); - engine->activate(); - } /* Connect to remote engine */ @@ -128,11 +122,18 @@ main(int argc, char** argv) return -1; } } + + + if (engine) { + engine->start_jack_driver(); + engine->start_osc_driver(args.engine_port_arg); + engine->activate(); + } /* Load a patch */ if (args.load_given && engine_interface) { - + Raul::RDF::World rdf_world; rdf_world.add_prefix("xsd", "http://www.w3.org/2001/XMLSchema#"); rdf_world.add_prefix("ingen", "http://drobilla.net/ns/ingen#"); @@ -192,16 +193,19 @@ main(int argc, char** argv) } - /* Didn't run the GUI, do our own main thing. */ + /* Didn't run the GUI, listen to OSC and do our own main thing. */ if (engine && !ran_gui) { signal(SIGINT, catch_int); signal(SIGTERM, catch_int); - engine->start_osc_driver(args.engine_port_arg); + //engine->start_osc_driver(args.engine_port_arg); + engine->activate(); engine->main(); + cout << "Exiting." << endl; + engine.reset(); } |