Re: [LAD] LADI

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <fons@...>
Cc: <linux-audio-dev@...>
Date: Tuesday, November 24, 2009 - 7:46 pm

On Tue, Nov 24, 2009 at 2:24 PM, wrote:

> An event loop (as I use the term) is just something of the

Sure.

> In process_event() the first selection would be on event

not at all. what i mean by the event loop is exactly the same as you.
but any general purpose event loop needs way to add and remove event
sources, which can include additional file descriptors, timeouts, the
concept of "idle" and other more esoteric things. so at the core of
any GTK application, for example, is the extremely general purpose
glib event loop. the connection to the X11 display server is just one
source of events that it handles (though clearly, for a GTK app, an
important one).

> The problem I pointed out exists when the 'real' loop (in

you can view it that way around if you wish. but i think that its
equally accurate to say that things start with a particular event loop
(in the C, C++ sense) and then the toolkit is built around it.

> He should e.g. not be forced to

the glib event loop has completely abstract notions of what an event
source is. an event source simply has a few simply functions like
"prepare", "ready" and "dispatch".

> The loop as written above is a multiplexer (the wait_for_events()),

the GTK (and now Qt) toolkits simply add handlers for events that come
from the "X11 event source" that they added early in the program's
life. the event loop can be handling other entirely different event
sources using entirely different code - but it is all now centralized
by the single glib event loop. the event loop itself doesn't really
care about what the event types are, or what handles them.

> What do you mean by 'raw events', or a 'normal event stream' ?

raw events: whatever actually happened somewhere in the computer to
make an event source believe that a new event was ready. could be an
X11 event, could be a byte arriving on an arbitrary byte-oriented
communication endpoint, the creation or modification of a file, etc.
etc. etc.

"normal event stream" : whatever the GUI toolkit passes around to widgets.

> What you write seems to suggest that both the GTK and Qt

Thats more or less correct, yes.

>This will work if

And they can, by using a variety of mechanisms, none of which are
particularly clean.

> All raw X events have

for X events, yes. But the event loop handles things other than X events.

>But again this has nothing do

Agreed. What I consider central is the idea of set of event sources,
and event loop and handlers for events that are injected into the
loop. There is no common framework for this on Unix, there never has
been and as long design policy is made by developers who value choice
and flexibility over single frameworks that enforce consistency, there
almost certainly never will be. Hell, on Unix you can't even wait for
file I/O and/or a signal in the same thread.

Again, contrast this to the situation on OS X where time and again,
when I am wondering just how you are supposed to integrate a
particular kind of event-driven programming into some code, it all
ultimately comes back to a CFRunLoop (which conceptually is not far
from being a thread, although its not).

The unix programming model is awesome for data driven programming. It
just hasn't ever stepped up to provide these kinds of abstractions for
event driven programming.

--p
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[LAD] LADI, Nedko Arnaudov, (Fri Nov 20, 8:16 pm)
Re: [LAD] LADI, Danni Coy, (Sat Nov 21, 4:17 am)
Re: [LAD] LADI, Sean Corbett, (Sat Nov 21, 3:50 am)
Re: [LAD] LADI, Rui Nuno Capela, (Sat Nov 21, 2:01 am)
Re: [LAD] LADI, Patrick Shirkey, (Sat Nov 21, 3:07 am)
Re: [LAD] LADI, Paul Davis, (Sat Nov 21, 4:21 am)
Re: [LAD] LADI, Bob Ham, (Mon Nov 23, 11:49 am)
Re: [LAD] LADI, Patrick Shirkey, (Sat Nov 21, 5:19 am)
Re: [LAD] LADI, Paul Davis, (Sat Nov 21, 2:45 pm)
Re: [LAD] LADI, Bob Ham, (Mon Nov 23, 12:26 pm)
Re: [LAD] LADI, Gene Heskett, (Mon Nov 23, 4:57 pm)
Re: [LAD] LADI, Adrian Knoth, (Mon Nov 23, 1:17 pm)
Re: [LAD] LADI, , (Tue Nov 24, 10:11 pm)
Re: [LAD] LADI, Loki Davison, (Mon Nov 23, 10:17 pm)
Re: [LAD] LADI, Bob Ham, (Tue Nov 24, 8:53 am)
Re: [LAD] LADI, Adrian Knoth, (Tue Nov 24, 3:53 pm)
Re: [LAD] LADI, Bob Ham, (Tue Nov 24, 10:11 pm)
Re: [LAD] LADI, rosea grammostola, (Sat Dec 19, 8:15 pm)
Re: [LAD] LADI, Bob Ham, (Tue Dec 22, 7:57 pm)
Re: [LAD] LADI, Adrian Knoth, (Wed Dec 23, 10:58 am)
Re: [LAD] LADI, Bob Ham, (Wed Dec 23, 1:08 pm)
Re: [LAD] LADI, Gabriel M. Beddingfield, (Wed Dec 23, 1:43 pm)
Re: [LAD] LADI, Bob Ham, (Wed Dec 23, 1:59 pm)
Re: [LAD] LADI, Patrick Shirkey, (Tue Dec 22, 8:19 pm)
Re: [LAD] LADI, Bob Ham, (Tue Dec 22, 11:40 pm)
Re: [LAD] LADI, , (Sat Dec 19, 10:23 pm)
Re: [LAD] LADI, Bob Ham, (Tue Dec 22, 8:02 pm)
Re: [LAD] LADI, Gabriel M. Beddingfield, (Sun Dec 20, 5:25 am)
Re: [LAD] LADI, rosea grammostola, (Sun Dec 20, 10:24 am)
Re: [LAD] LADI, torbenh, (Sun Dec 20, 12:13 pm)
Re: [LAD] LADI, Bob Ham, (Tue Dec 22, 7:17 pm)
Re: [LAD] LADI, rosea grammostola, (Sun Dec 20, 8:11 pm)
Re: [LAD] LADI, torbenh, (Sun Dec 20, 11:18 pm)
Re: [LAD] LADI, rosea grammostola, (Mon Dec 21, 10:45 am)
Re: [LAD] LADI, Bob Ham, (Tue Dec 22, 8:35 pm)
Re: [LAD] LADI, Nedko Arnaudov, (Tue Dec 22, 9:22 pm)
Re: [LAD] LADI, rosea grammostola, (Wed Dec 23, 10:25 pm)
Re: [LAD] LADI, Nedko Arnaudov, (Thu Dec 24, 6:35 pm)
Re: [LAD] LADI, Ralf Mardorf, (Fri Dec 25, 2:46 pm)
Re: [LAD] LADI, Patrick Shirkey, (Fri Dec 25, 11:12 pm)
Re: [LAD] LADI, Ralf Mardorf, (Sun Dec 27, 2:11 am)
Re: [LAD] LADI, Nedko Arnaudov, (Sun Dec 27, 2:28 am)
Re: [LAD] LADI, Ralf Mardorf, (Sun Dec 27, 2:44 am)
Re: [LAD] LADI, Ralf Mardorf, (Sun Dec 27, 2:26 am)
Re: [LAD] LADI, Ralf Mardorf, (Sat Dec 26, 1:48 am)
Re: [LAD] JackMix [was: LADI], james morris, (Sat Dec 26, 11:18 am)
Re: [LAD] JackMix [was: LADI], Arnold Krille, (Sun Dec 27, 3:05 pm)
Re: [LAD] JackMix [was: LADI], Patrick Shirkey, (Sat Dec 26, 12:13 pm)
Re: [LAD] JackMix [was: LADI], james morris, (Sat Dec 26, 12:41 pm)
Re: [LAD] JackMix [was: LADI], Paul Davis, (Sat Dec 26, 2:11 pm)
Re: [LAD] JackMix [was: LADI], james morris, (Sat Dec 26, 10:32 pm)
Re: [LAD] JackMix [was: LADI], Arnold Krille, (Sun Dec 27, 3:03 pm)
Re: [LAD] JackMix [was: LADI], james morris, (Sun Dec 27, 4:38 pm)
Re: [LAD] JackMix [was: LADI], Ralf Mardorf, (Sun Dec 27, 7:20 am)
Re: [LAD] JackMix [was: LADI], Paul Davis, (Sun Dec 27, 1:52 pm)
Re: [LAD] JackMix [was: LADI], Ralf Mardorf, (Mon Dec 28, 6:49 pm)
Re: [LAD] JackMix [was: LADI], Patrick Shirkey, (Sat Dec 26, 12:50 pm)
Re: [LAD] LADI, hermann, (Sat Dec 26, 4:25 am)
Re: [LAD] LADI, rosea grammostola, (Fri Dec 25, 3:39 pm)
Re: [LAD] LADI, Ralf Mardorf, (Fri Dec 25, 4:16 pm)
Re: [LAD] LADI, Adrian Knoth, (Fri Dec 25, 7:49 pm)
Re: [LAD] LADI, rosea grammostola, (Wed Jan 6, 1:24 pm)
Re: [LAD] LADI, Ralf Mardorf, (Fri Dec 25, 8:01 pm)
Re: [LAD] LADI, rosea grammostola, (Fri Dec 25, 4:32 pm)
Re: [LAD] LADI, Ralf Mardorf, (Fri Dec 25, 4:31 pm)
Re: [LAD] LADI, Bob Ham, (Wed Dec 23, 12:00 am)
Re: [LAD] LADI, Nedko Arnaudov, (Wed Dec 23, 11:29 am)
Re: [LAD] LADI, Bob Ham, (Wed Dec 23, 12:05 pm)
Re: [LAD] LADI, David Robillard, (Tue Dec 22, 4:57 pm)
Re: [LAD] LADI, rosea grammostola, (Tue Dec 22, 5:24 pm)
Re: [LAD] LADI, Chris Cannam, (Mon Dec 21, 9:33 am)
Re: [LAD] LADI, Patrick Shirkey, (Mon Dec 21, 8:56 am)
Re: [LAD] LADI, alex stone, (Mon Dec 21, 9:22 am)
Re: [LAD] LADI, Patrick Shirkey, (Mon Dec 21, 9:36 am)
Re: [LAD] LADI, alex stone, (Mon Dec 21, 9:45 am)
Re: [LAD] LADI, Patrick Shirkey, (Mon Dec 21, 10:12 am)
Re: [LAD] LADI, Gabriel M. Beddingfield, (Mon Dec 21, 1:40 pm)
Re: [LAD] LADI, Patrick Shirkey, (Mon Dec 21, 10:55 pm)
Re: [LAD] LADI, Gabriel M. Beddingfield, (Tue Dec 22, 12:36 am)
Re: [LAD] LADI, torbenh, (Tue Dec 22, 3:31 am)
Re: [LAD] LADI, Gabriel M. Beddingfield, (Tue Dec 22, 5:33 am)
Re: [LAD] LADI, Thorsten Wilms, (Tue Dec 22, 9:36 am)
Re: [LAD] LADI, alex stone, (Tue Dec 22, 7:29 am)
Re: [LAD] LADI, Gabriel M. Beddingfield, (Tue Dec 22, 12:13 pm)
Re: [LAD] LADI, alex stone, (Tue Dec 22, 12:30 pm)
Re: [LAD] LADI, Gabriel M. Beddingfield, (Tue Dec 22, 1:04 pm)
Re: [LAD] LADI, alex stone, (Tue Dec 22, 2:09 pm)
Re: [LAD] LADI, Gabriel M. Beddingfield, (Tue Dec 22, 2:33 pm)
Re: [LAD] LADI, Patrick Shirkey, (Tue Dec 22, 7:29 pm)
Re: [LAD] LADI, Patrick Shirkey, (Tue Dec 22, 7:41 pm)
Re: [LAD] LADI, Dave Phillips, (Tue Dec 22, 2:42 pm)
Re: [LAD] LADI, Patrick Shirkey, (Tue Dec 22, 1:02 am)
Re: [LAD] LADI, Nedko Arnaudov, (Mon Dec 21, 10:34 am)
Re: [LAD] LADI, alex stone, (Mon Dec 21, 11:07 am)
Re: [LAD] LADI, James Warden, (Mon Dec 21, 11:26 am)
Re: [LAD] LADI, Louigi Verona, (Sun Dec 20, 8:31 pm)
Re: [LAD] LADI, Christopher Cherrett, (Sun Dec 20, 10:20 pm)
Re: [LAD] LADI, Patrick Shirkey, (Sun Dec 20, 1:22 am)
Re: [LAD] LADI, Louigi Verona, (Sun Dec 20, 12:48 am)
Re: [LAD] LADI, Ralf Mardorf, (Sun Dec 20, 1:21 am)
Re: [LAD] LADI, Patrick Shirkey, (Sun Dec 20, 1:19 am)
Re: [LAD] LADI, Louigi Verona, (Sun Dec 20, 9:33 am)
Re: [LAD] LADI, Bob Ham, (Tue Dec 22, 5:45 pm)
Re: [LAD] LADI, Paul Davis, (Tue Dec 22, 5:56 pm)
Re: [LAD] LADI, Bob Ham, (Tue Dec 22, 11:35 pm)
Re: [LAD] LADI, Paul Davis, (Sun Dec 20, 1:40 pm)
Re: [LAD] LADI, Jostein Chr. Andersen, (Sun Dec 20, 2:20 pm)
Re: [LAD] LADI, alex stone, (Sun Dec 20, 11:27 am)
Re: [LAD] LADI, Louigi Verona, (Sun Dec 20, 11:52 am)
Re: [LAD] LADI, rosea grammostola, (Sun Dec 20, 12:55 pm)
Re: [LAD] LADI, alex stone, (Sun Dec 20, 12:21 pm)
Re: [LAD] LADI, Nedko Arnaudov, (Sun Dec 20, 10:31 am)
Re: [LAD] LADI, Louigi Verona, (Sun Dec 20, 10:32 am)
Re: [LAD] LADI, Ralf Mardorf, (Sun Dec 20, 1:32 am)
Re: [LAD] LADI, Paul Davis, (Tue Nov 24, 4:05 pm)
Re: [LAD] LADI, Rui Nuno Capela, (Tue Nov 24, 5:10 pm)
Re: [LAD] LADI, Paul Davis, (Tue Nov 24, 4:13 pm)
Re: [LAD] LADI, , (Tue Nov 24, 5:05 pm)
Re: [LAD] LADI, Paul Davis, (Tue Nov 24, 5:55 pm)
Re: [LAD] LADI, , (Tue Nov 24, 7:28 pm)
Re: [LAD] LADI, Paul Davis, (Tue Nov 24, 7:46 pm)
Re: [LAD] LADI, , (Tue Nov 24, 9:41 pm)
Re: [LAD] LADI, Chris Cannam, (Tue Nov 24, 8:19 pm)
Re: [LAD] LADI, Florian Faber, (Mon Nov 23, 1:37 pm)
Re: [LAD] LADI, Patrick Shirkey, (Sat Nov 21, 3:01 pm)
Re: [LAD] LADI, David Robillard, (Sat Nov 21, 9:54 pm)
Re: [LAD] LADI, Rui Nuno Capela, (Sat Nov 21, 11:13 am)
Re: [LAD] LADI, Patrick Shirkey, (Sat Nov 21, 2:48 pm)
Re: [LAD] LADI, Rui Nuno Capela, (Sat Nov 21, 3:37 pm)
Re: [LAD] LADI, Patrick Shirkey, (Sat Nov 21, 6:12 pm)
Re: [LAD] LADI, Rui Nuno Capela, (Sat Nov 21, 6:21 pm)
Re: [LAD] LADI, Patrick Shirkey, (Sat Nov 21, 6:24 pm)
Re: [LAD] LADI, , (Sat Nov 21, 12:00 am)
Re: [LAD] LADI, Victor Lazzarini, (Sat Nov 21, 12:51 am)
Re: [LAD] LADI, , (Sat Nov 21, 12:12 pm)