[eq-dev] Qt integration

Stefan Eilemann eilemann at gmail.com
Mon Jul 20 18:42:16 CEST 2009


On Mon, Jul 20, 2009 at 6:15 PM, m0bl0<treib at in.tum.de> wrote:
> What I do now is translate the events I receive from Qt to eq::Events, and
> call Window::processEvent, like the other OSWindows do.

Sounds reasonable.

> An eq::Event contains a RenderContext, but Window::getRenderContext may only
> be called by the pipe thread. So far, I just leave it empty, which doesn't
> seem to cause problems, but I assume it's there for a reason?

It's a utility to find the channel's rendering context for a pointer
event, e.g., to do picking.

Since the channel data changes constantly, the window stores all
channel render context from the last frame. Since this vector is
updated from the pipe thread, it is not thread-safe to access from
another thread. In the old AGL days it used to have a lock around,
which is not the proper solution.

Right now you don't need it, and I'll keep it in mind to find a better solution.


> Also, occasionally I get an error during shutdown in Pipe::_releaseViews in
> pipe.cpp:379 in rev 3207 (the variable "view" is null), but I haven't gotten
> around to finding out what causes this...

A stack trace would help...



Cheers,

Stefan.



More information about the eq-dev mailing list