From: Simon C Mills (simon++at++wgs.estec.esa.nl)
Date: 05/14/2001 09:32:46
Jason,
Jason Coposky wrote:
>
> sir,
>
> i do have a channel draw callback for the channel with the gui,
> and in this channel ive tried calling
>
> glDrawBuffer( GL_BACK_LEFT );
> pfuRerawGUI();
>
> glDrawBuffer( GL_BACK_RIGHT );
> pfuRedrawGUI();
>
> which appears to be similar to what you are saying, but
> still only gives me a gui in one buffer for some reason.
This is not efficient since the drawing is done twice. It also seems
that the second call obliterates the effect of the first. Use
glDrawBuffer(GL_BACK) which allows BOTH back left & right buffers to be
drawn to at the same time (see man page).
> ive not found a function called: pfuDrawGUI(chan, data);
> but i was assuming it was rough pseudo code anyway. :)
You're kind of right. This is not declared in pfutil.h but is in the
library and is declared with global scope (so it is a undocumented call
and as such may change in the future). I added a declaration so I could
use it:
/* needs declaring here since not in pfutil.h */
extern "C" {
void pfuDrawGUI(pfChannel *, void *);
}
I found I needed this since pfuRedrawGUI just sets a flag in the
datapool forcing the GUI to be redrawn i.e. is meant to be called from
the APP process. pfuDrawGUI is the call in the DRAW process doing the
actual drawing so this is the one we need here. I had to dig into the
GUI code in /usr/share/Performer/src/lib/libpfutil/gui.c to find this
out.
> any other info / advice would be appriciated.
>
> thx.
>
> ~J
Regards, Simon
_______________________________________________________________________
Simon Mills
Silicon Worlds S.A.
c/o Modelling & Simulation Section (TOS-EMM) Tel: +31 (0)71 565 3725
European Space Agency (ESA/ESTEC) Fax: +31 (0)71 565 5419
Postbus 299, 2200AG Noordwijk e-mail: simon++at++wgs.estec.esa.nl
The Netherlands http://www.estec.esa.nl/wmwww/EMM
_______________________________________________________________________
This archive was generated by hypermail 2b29 : Mon May 14 2001 - 09:27:56 PDT