===================
LibGGIBuf Reference
===================


.. include:: libggibuf-functions.txt


LibGGIBuf libraries and targets
===============================


An extension to LibGGI handling auxiliary buffers
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. manpage:: 7 libggibuf

Description
-----------

LibGGIBuf is an extension to LibGGI which adds functionality
pertaining to ancilary buffers, e.g. Alpha and Z buffers.  LibGGI is a
graphics library developed by the GGI Project.


In addition to providing some internal support infrastructurefor other
extensions which use ancilary buffers, LibBuf can overload a normal
LibGGI visual such that normal LibGGI drawing operations can do things
like perform Alpha blends and Z clipping.


LibGGIBuf supports acceleration of graphics primitives where possible,
but also provides a fallback mechanism which provides emulation on all
supported LibGGI visuals.


Environment variables
---------------------

The following outlines the environment variables, intended for the user,
which affect the behaviour of LibGGIBuf:

`BUF_DEBUG`
    The debugging level for LibGGIBuf:
  
    - 0 or unset : debug output is off; debugging is off
    - 255 : all debug output is on

    You may also bitwise-or any of the following together:
    
    - 2 : debug core
    - 4 : debug mode setting
    - 8 : debug color handling
    - 16 : debug drawing
    - 32 : misc debugging output
    - 64 : debug dynamic library handling

    The debugging output can be quite verbose and in most cases you
    should redirect stderr so that it does not interfere with your
    program's output.

`BUF_DEBUGSYNC`
    Turn on synchronous debugging output, flushing the output buffers
    before returning from `GGIDPRINT` calls.
