Hi Nikita,
if you want to use this hardware benefit, there are 2 ways to go here -
First option is what you saw, use regions. These will be used by
directfb windows, which are used by GTK and the like. You will need to
use AddRegion here to allow/disallow new regions, and provide fall-back
scenarios when your constraints (e.g. only one area per scan line) are
violated, I think.
Second option is to make an area into a directfb layer. This has some
API issues in the area of positioning, and this way-of-working is much
more explicit: now the directfb user has to take care of distributing
'windows' among areas.
Depends a bit on your usage scenario.
hth,
Niels
Nikita V. Youshchenko wrote:
Hello.
I'm writing kernel and directfb drivers for an embedded system with custom
video hardware (designed for this particular system).
Hardware is designed such that it does not display a full-screen
framebuffer, but instead a set of rectangular areas. For each area, it's
size, color format, and memory location are configured individually.
There may be any number of areas, however there is a limitation - areas
can't share same scanline (that means, the top side of next area must be
always strictly below bottom side of the previous area.
I'm currently trying to understand if there is any benifit of writing
driver support for these areas. Or it is better to define one full-screen
area and forget about areas.
I was not able to find much documentation about directfb internals (any
hints?), so I had to examine the sources.
In directfb sources, I found that it is possible to define
several "regions" per display layer. However, this possibility is not
exposed to API, and internally used only if layer is configured to have
per-window buffers (otherwise only "primary" region gets created).
I guess that with my hardware limitations outlined above, configuring
per-window buffers is not very useful? And that means, implementation of
areas support does not worth the effort?
(most likely, application writers won't use directfb API directly, but use
gtk-over-directfb or X-over-directfb instead)
Another question: I may implement double-buffering, either per-area or
full-screen. However, do gtk-over-directfb and/or X-over-directfb utilize
double-buffering somehow?
Nikita
_______________________________________________
directfb-dev mailing list
directfb-dev@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev
--
.------------------------------------------.
| DirectFB - Hardware accelerated graphics |
| http://www.directfb.org/ |
"------------------------------------------"
_______________________________________________
directfb-dev mailing list
directfb-dev@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev