diff options
author | David Robillard <d@drobilla.net> | 2012-05-14 01:09:08 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2012-05-14 01:09:08 +0000 |
commit | 841825844f9b2f4eae069d0aad064e4046e15471 (patch) | |
tree | 8a31a4456bab8ca06f757f0524bf5adacbe2aaa1 /src/server/Engine.cpp | |
parent | ffa63b0c1e769fae0af5e2bbbd822d1e8b206535 (diff) | |
download | ingen-841825844f9b2f4eae069d0aad064e4046e15471.tar.gz ingen-841825844f9b2f4eae069d0aad064e4046e15471.tar.bz2 ingen-841825844f9b2f4eae069d0aad064e4046e15471.zip |
Real-time safe LV2 message handling.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4402 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/Engine.cpp')
-rw-r--r-- | src/server/Engine.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/server/Engine.cpp b/src/server/Engine.cpp index f1c714d3..a146743d 100644 --- a/src/server/Engine.cpp +++ b/src/server/Engine.cpp @@ -231,7 +231,7 @@ Engine::deactivate() ThreadManager::single_threaded = true; } -void +unsigned Engine::run(uint32_t sample_count) { // Apply control bindings to input @@ -242,7 +242,7 @@ Engine::run(uint32_t sample_count) // Process events that came in during the last cycle // (Aiming for jitter-free 1 block event latency, ideally) - process_events(); + unsigned n_processed_events = process_events(); // Run root patch if (_root_patch) { @@ -257,6 +257,8 @@ Engine::run(uint32_t sample_count) if (_message_context.has_requests()) { _message_context.signal(_process_context); } + + return n_processed_events; } bool @@ -272,10 +274,10 @@ Engine::enqueue_event(Event* ev) _pre_processor->event(ev); } -void +unsigned Engine::process_events() { - _pre_processor->process(_process_context, *_post_processor); + return _pre_processor->process(_process_context, *_post_processor); } void |