diff options
author | David Robillard <d@drobilla.net> | 2007-05-04 03:59:38 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-05-04 03:59:38 +0000 |
commit | a96166710faf2447ed10194d1829db5564b0dff9 (patch) | |
tree | 4eb792fcceee17f188566fc6e6bee11e5a8c4336 /src/libs/engine/Engine.cpp | |
parent | cf14d321e8f084f742b03e09c086d5ef30297492 (diff) | |
download | ingen-a96166710faf2447ed10194d1829db5564b0dff9.tar.gz ingen-a96166710faf2447ed10194d1829db5564b0dff9.tar.bz2 ingen-a96166710faf2447ed10194d1829db5564b0dff9.zip |
Made engine, serialisation, client library, and GUI all dynamically loaded modules.
Combined all executables into a single "ingen" program which can do everything.
git-svn-id: http://svn.drobilla.net/lad/ingen@493 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/libs/engine/Engine.cpp')
-rw-r--r-- | src/libs/engine/Engine.cpp | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/libs/engine/Engine.cpp b/src/libs/engine/Engine.cpp index d9481786..1d54aef6 100644 --- a/src/libs/engine/Engine.cpp +++ b/src/libs/engine/Engine.cpp @@ -111,12 +111,11 @@ Engine::main() } cout << "[Main] Done main loop." << endl; + _event_source->deactivate(); + if (_activated) deactivate(); - sleep(1); - cout << "[Main] Exiting..." << endl; - return 0; } @@ -148,17 +147,24 @@ Engine::start_jack_driver() void -Engine::start_osc_driver(const std::string& port) +Engine::start_osc_driver(int port) { _event_source = SharedPtr<EventSource>(new OSCEngineReceiver( - *this, pre_processor_queue_size, port.c_str())); + *this, pre_processor_queue_size, port)); } -void -Engine::set_event_source(SharedPtr<EventSource> source) +SharedPtr<QueuedEngineInterface> +Engine::new_queued_interface() { - _event_source = source; + assert(!_event_source); + + SharedPtr<QueuedEngineInterface> result(new QueuedEngineInterface( + *this, Ingen::event_queue_size, Ingen::event_queue_size)); + + _event_source = result; + + return result; } |