From 55a882dd780e880f70932ec7cacfa63ecbf63b83 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Tue, 24 Apr 2012 17:15:37 +0000 Subject: [PATCH] vague diagram on event loop/UI interactions git-svn-id: svn://localhost/ardour2/branches/3.0@12077 d708f5d6-7413-0410-9779-e7cbd77b26cf --- doc/eventloop.svg | 451 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 451 insertions(+) create mode 100644 doc/eventloop.svg diff --git a/doc/eventloop.svg b/doc/eventloop.svg new file mode 100644 index 0000000000..09683c5efc --- /dev/null +++ b/doc/eventloop.svg @@ -0,0 +1,451 @@ + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + UI Event Loop Thread + CrossThreadChannel + RT Thread + Freeze Thread + Step One:AbstractUI::get_request()AbstractUI::send_request() + Generic non-RT-safe request queue + RT-safe per-thread request queues + + + + while (1) if (channel.data_available()) { channel.drain(); handle_ui_requests(); } + + + + J. Random Thread + + + Step Two:CrossThreadChannel::wakeup() + + + + + + AbstractUI IS-A BaseUI IS-A Event Loop + +