Re: Re: MacOS X [was: how to write snappy benchmark]

Torrey Lyons <[email protected]>
Newsgroups gmane.comp.xfree86.forum
Message-ID <p06001805bb2f735ca555@[65.104.119.194]>
At 8:42 PM +0200 7/7/03, Juliusz Chroboczek wrote:
>Interesting.
>
>TL> Client: "I damaged this region of the window" -> Window Server
>TL> Client: "all done with that window for now" -> Window Server
>TL> Window Server sets up DMA transfer to video card of damaged region
>
>How's the actual compositing done?

If the window's Opaque flag is set the window server can optimize 
this case and not have to worry about compositing with anything 
underneath. Otherwise the window server composites down to the 
highest opaque window. The details of this are buried in proprietary 
Apple code.

>   (Is the driver interface published?)

The low level driver interface is published but not really 
documented. The IOKit video drivers are all sub-classes of 
IOFramebuffer and IOAccelerator in the kernel. The source for these 
classes is part of the Darwin open source code. Such documentation as 
exists is at:
  <http://developer.apple.com/documentation/Darwin/Reference/Kernel/IOFramebuffer/Classes/IOFramebuffer/index.html> 
- In kernel interface

<http://developer.apple.com/documentation/Darwin/Reference/IOKit/IOGraphicsLib/index.html> 
- Interface for user space clients

The second of these I wrote and contributed after spending some 
quality time reading the kernel source. The only IOGraphicsLib client 
I know of besides Apple's CoreGraphics window server is XDarwin, so 
you can see why documenting these interfaces has not been a priority. 
At some point a brave soul may document the details of IOGraphicLib's 
interface to IOAccelerator.

At 8:05 PM +0100 7/7/03, Torgeir Veimo wrote:
>Quartz has two components, Quartz Compositor and Quartz 2D

Yes, Quartz = marketing speak for CoreGraphics.

--Torrey
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.