Stefan Seefeld <[EMAIL PROTECTED]> writes:

> I'd like to 'draw' client data into a ggi visual, which
> then can get blitted into the screen visual by the server.
> What are the possibilities of doing this with GGI ?
> 
> Is there a possibility to open a 'shared-memory-visual'
> or something of the likes ?

Ofcourse. ;-)
LibGGI can even handle event distribution to clients if you
like. See the memory target documentation below.

> It appears I could try to mmap the frame buffer into the
> client address space but I'd rather avoid that not to loose
> control over the screen content (the server should apply 
> clipping etc.)

=============
memory-target
=============

Description
+++++++++++

Emulates a linear framebuffer in main memory. This memory area can be
a shared memory segemnt, an area specified by the application, or be
malloc()ed by the memory-target itself.

Arguments
+++++++++

[-input:][shmid:<sid>|keyfile:<size>:<id>:<fname>|pointer]
        * shmid         - use existing shmid <sid>
        * keyfile       - create a new shm segment with id ftok(<fname>, <id>)
                of size <size> (preferred method !)
        * pointer       - use the memory pointed to by argptr.

IMPORTANT NOTE: If you specify a memory area to use - be sure it's big enough
        as no checks can or will be made that a certain mode fits into it.

Hotkeys
+++++++

None.

DirectBuffer support
++++++++++++++++++++

Always.

Other features
++++++++++++++

If the "-input" option is set, an input buffer of INPBUFSIZE as #define'd
in ggi/display/memory.h (default is 8192 bytes) is allocated at the start
of the requested memory area. This is useful, when running on shared memory,
because it enables you to use SendEvent to give input to other processes
sharing that segment. This is demonstrated in cube3d and can be used for
things like GGI-multiplexers.

//Marcus
-- 
-------------------------------+------------------------------------
        Marcus Sundberg        | http://www.stacken.kth.se/~mackan
 Royal Institute of Technology |       Phone: +46 707 452062
       Stockholm, Sweden       |   E-Mail: [EMAIL PROTECTED]

Reply via email to