LibGII Libraries and utilities
==============================



A flexible library for input handling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. manpage:: 7 libgii

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

LibGII is an input library developed by the `GGI Project`_.  Its
design philosophy is similar to LibGGI, which deals with graphics
output.

.. _GGI Project: http:www.ggi-project.org

LibGII is based on the concept of input streams, which virtualize
access to the underlying input drivers. Events from various input
devices are abstracted into easy-to-use structures. LibGII also allows
the application to join streams together, receiving input from an
arbitrary combination of devices.


LibGII is a separate component from LibGGI, although LibGGI depends on
LibGII for input purposes.  (LibGGI's input functions are simply
wrappers for LibGII functions.)


Environment Variables
---------------------


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

`GII_INPUT`
    The default input source to use.  The format is:
    ``input:inputargs``.  Multiple inputs can be specified by this
    notation: ``(i1):(i2) ...``.

    .. note::

        This setting does not affect LibGGI visuals automatically
	opening inputs. Use the ``GGI_INPUTx`` variable instead.

`GGI_DEBUG`
    The debug level for LibGII:

    - 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
    - 32  : misc debugging output
    - 64  : debug dynamic library handling
    - 128 : debug event handling

`GGI_DEBUGSYNC`
    Turn on synchronous debug output, flushing the output buffers
    before returning from `DPRINT` calls.


See Also
--------

:man:`filter-keytrans(7)`, :man:`filter-mouse(7)`,
:man:`filter-save(7)`, :man:`filter-tcp(7)`, :man:`input-directx(7)`, 
:man:`input-linux-kbd(7)`, :man:`input-mouse(7)`, :man:`input-file(7)`, 
:man:`input-linux-mouse(7)`, :man:`input-tcp(7)`,
:man:`input-linux-evdev(7)`, :man:`input-lk201(7)`.


.. include:: ../filter/keytrans/man.txt
.. include:: ../filter/mouse/man.txt
.. include:: ../filter/save/man.txt
.. include:: ../filter/tcp/man.txt

.. include:: ../input/directx/man.txt
.. include:: ../input/linux_kbd/man.txt
.. include:: ../input/mouse/man.txt
.. include:: ../input/file/man.txt
.. include:: ../input/linux_mouse/man.txt
.. include:: ../input/tcp/man.txt
.. include:: ../input/linux_evdev/man.txt
.. include:: ../input/lk201/man.txt
