Re: [Fresco-devel] animation
Stefan Seefeld <[email protected]>
| Newsgroups | gmane.comp.video.fresco.devel |
|---|---|
| Message-ID | <[email protected]> |
Nick Lewycky wrote:
> Jay McCarthy wrote:
>> Would it be stupid and lurker-ish to suggest that damage generate an
>> event and thus the code would remain the same?
>
>
> Not at all, it sounds like a reasonable solution. Looking into it I
> found that the event manager doesn't block on its own, but calls
> Console->next_event() which blocks. This means that the only events it
> can receive are ones that come in from GGI or SDL.
the 'event loop' the repair thread is sitting in is receiving input from
the input devices as well as a pipe the ScreenManager is connected to.
If you call 'need_redraw' on any graphic, it will result in the
ScreenManager to 'wake_up' the repair thread by means of that pipe.
That's about as event driven as you can get.
I agree that it would be useful to have a 'pending_events' method in the
console API that can report whether the next read ('next_event') would
block or not, or even how many events are available (ideally for a given
type mask, etc.)
Regards,
Stefan