summaryrefslogtreecommitdiffstats
path: root/src/libs/engine/Engine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/engine/Engine.cpp')
-rw-r--r--src/libs/engine/Engine.cpp27
1 files changed, 12 insertions, 15 deletions
diff --git a/src/libs/engine/Engine.cpp b/src/libs/engine/Engine.cpp
index 44cac86c..004de200 100644
--- a/src/libs/engine/Engine.cpp
+++ b/src/libs/engine/Engine.cpp
@@ -120,10 +120,7 @@ Engine::main()
}
cout << "[Main] Done main loop." << endl;
- _event_source->deactivate();
-
- if (_activated)
- deactivate();
+ deactivate();
return 0;
}
@@ -152,23 +149,21 @@ Engine::main_iteration()
void
Engine::start_jack_driver()
{
- if (_audio_driver)
- cerr << "[Engine] Warning: replaced audio driver" << endl;
-
- _audio_driver = SharedPtr<AudioDriver>(new JackAudioDriver(*this));
+ if ( ! _audio_driver)
+ _audio_driver = SharedPtr<AudioDriver>(new JackAudioDriver(*this));
+ else
+ cerr << "[Engine::start_jack_driver] Audio driver already running" << endl;
}
void
Engine::start_osc_driver(int port)
{
- if (_event_source)
- cerr << "[Engine] Warning: replaced event source (engine interface)" << endl;
-
- _event_source = SharedPtr<EventSource>(new OSCEngineReceiver(
- *this, pre_processor_queue_size, port));
-
- //_osc_driver = _event_source;
+ if ( ! _event_source)
+ _event_source = SharedPtr<EventSource>(new OSCEngineReceiver(
+ *this, pre_processor_queue_size, port));
+ else
+ cerr << "[Engine::start_osc_driver] Event source already running" << endl;
}
@@ -247,6 +242,8 @@ Engine::deactivate()
{
if (!_activated)
return;
+
+ _event_source->deactivate();
/*for (Tree<GraphObject*>::iterator i = _object_store->objects().begin();
i != _object_store->objects().end(); ++i)