[interfacekit] Re: GUI problems

  • From: "Ingo Weinhold" <bonefish@xxxxxxxxxxxxxxx>
  • To: interfacekit@xxxxxxxxxxxxx
  • Date: Thu, 03 Jul 2003 17:51:34 +0200 CEST

On Thu, 03 Jul 2003 01:24:52 +0200 CEST "Axel Dörfler" <axeld@pinc-
software.de> wrote:
> "DarkWyrm" <bpmagic@xxxxxxxxxxxxxxx> wrote:
> > Now that you mention it, what exactly are overlays for? I know that 
> > they're used mostly by the Media Kit, but I need to support them 
> > and 
> > have no idea what they are. Marcus?
> 
> I think there is little the app_server has to do to support them. And 
> they are completely independent from the Media Kit as well.
> If you really want to know about the die hard facts, you should ping 
> Rudolf Cornelissen about them.

It's certainly a good idea, if someone would contact him to get the 
facts straight.

> AFAICT (but I've never used them) the app_server only handles some 
> interaction between the app and the graphics driver itself.
> 
> They are basically a bitmap that's located in the memory of the 
> graphics card (like the real frame buffer), and the application has 
> direct access to it.
> The graphics driver further allows to arbitrary resize that bitmap 
> and 
> "lay it over" the frame buffer - in the output only.
> The bitmap has to meet some requirements like alignment, and color 
> space.

To add a bit to this: If I understand it correctly, there are also 
simple off-screen bitmaps, i.e. those being allocated in the graphic 
card's memory but for which no overlaying is done. The definition of 
the bitmap flags seems to support my guess:
        B_BITMAP_IS_OFFSCREEN                           = 0x00000020,
        B_BITMAP_WILL_OVERLAY                           = 0x00000040 | 
B_BITMAP_IS_OFFSCREEN,

Those off-screen bitmaps are very nice, because one can use the graphic 
card acceleration to draw into them, and blitting them to other regions 
of graphic card memory should be extremely fast. This makes them ideal 
for things like double buffering or page flipping.

CU, Ingo


Other related posts: