[haiku-appserver] Re: drawing thread

  • From: "Rudolf" <drivers.be-hold@xxxxxxxxxxxx>
  • To: haiku-appserver@xxxxxxxxxxxxx
  • Date: Mon, 01 Nov 2004 09:12:30 +0100 CET

Hi,

Adi wrote:
> 3.    From the BeBook: "DisableUpdates() , EnableUpdates()
> These functions disable automatic updating within the window, and 
> re-enable it again. Any drawing that's done while updates are 
> disabled 
> is suppressed until updates are re-enabled. If you're doing a lot of 
> drawing within the window, and you want the results of the drawing to 
> appear all at once, you should disable updates, draw, and then re-
> enable 
> updates."
>       This looks to me like an off screen window is created (maybe in 
> videoMem, but I seriously doubt it as the frame buffer is screen's 
> width 
> and height and there are only the overlay hooks available for 
> allocating 
> mem in video memory) with the contents copied of what's visible on 
> screen then all drawing is done in there and when EnableUpdates() is 
> called this surface is copied on screen. Correct me if I am wrong.
>       This must be implemented.

There's no area created in vidmem (or I'd know about it)!! 

Are you sure DisableUpdates() is not just preventing the drawing to 
occur at all? (blocking aquiring of some system internal semaphore or 
something..)
Then, after Updates are enabled again all threads are executed asap?
(I of course don't know what I'm talking about from your perspective. 
The only way extra buffers are created currently is in main mem: that I 
can tell you for sure.)

> a lot of writing which cannot be accelerated. They may be using HW 
> acceleration if they do triple buffering just like we have discussed 
> - a 
> second buffer in video Memory. Still, that means we first have to do 
> double buffering first.
Nope. Currently no second buffer in video memory exists.(!!)

Rudolf.


Other related posts: